[129] Builder stopped working with errors

Builder stopped working with this error in the logfile. The system has 64GB RAM. Do we need more RAM? This is in Memory settings:



Garbage collector: ParallelGC (recommended)
Tick - Let progoram determine maximum memory
Tick - Don't store unfilled pending orders (recommended)

03:45:54.941 [Blocking computeThread #20 - Builder_1-Generation 2.76.141] ERROR c.s.g.c.p.MultithreadComputePerformer - Error while running task: Builder_1-Generation 2.76.141(3511ab_Builder_1))
java.lang.OutOfMemoryError: Java heap space
03:45:54.941 [Blocking computeThread #17 - Builder_1-Generation 2.76.143] ERROR c.s.g.c.p.MultithreadComputePerformer - Error while running task: Builder_1-Generation 2.76.143(3511ab_Builder_1))
java.lang.OutOfMemoryError: Java heap space
03:45:54.942 [Blocking computeThread #17] INFO  c.s.t.project.ProgressEngine - Evaluated candidate is null - exception?
03:45:54.976 [Blocking computeThread #7 - Builder_1-Generation 2.76.142] ERROR Indicator - Indicator.OnBlockEvaluate() failed. Exc.
java.lang.Exception: Cannot create indicator
at SQ.Internal.IndicatorBlock.initIndicatorObject(IndicatorBlock.java:157) ~[na:na]
at SQ.Internal.IndicatorBlock.OnBlockEvaluate(IndicatorBlock.java:86) ~[na:na]
at SQ.Internal.IndicatorBlock.evaluateBlock(IndicatorBlock.java:184) ~[na:na]
at SQ.Blocks.Functions.Plus.OnBlockEvaluate(Plus.java:47) ~[na:na]
at SQ.Internal.ValueBlock.evaluateBlock(ValueBlock.java:42) ~[na:na]
at SQ.Formulas.Price.UseFormula.evaluateFormula(UseFormula.java:23) ~[na:na]
at SQ.Blocks.Order.Open.EnterAtLimit.OnAction(EnterAtLimit.java:64) ~[na:na]
at SQ.Internal.RulesImpl.IfThen.evaluateRule(IfThen.java:90) ~[na:na]
at SQ.Internal.StrategyEvent.evaluateEvent(StrategyEvent.java:57) ~[na:na]
at SQ.Internal.XmlStrategy.OnBarUpdate(XmlStrategy.java:145) ~[na:na]
at com.strategyquant.tradinglib.engine.TradingSetup.callStrategyOnBarUpdate(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.setup.TradingSetupRunnable.processReceivedTickPrepared(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.setup.TradingSetupRunnable.runOneCycle(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtest.BacktestTradingSetupRunnable.runCalled(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.engine.BacktestTradingSetup.processEvent(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtest.BacktestDataFeed.processEvent(BacktestDataFeed.java:172) ~[na:na]
at com.strategyquant.tradinglib.backtest.BacktestDataFeed.start(BacktestDataFeed.java:142) ~[na:na]
at com.strategyquant.tradinglib.engine.BacktestEngine.runBacktest(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.backtestStrategy(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.runBacktestOnMainSetup(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.execute(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.gp.strategies.BacktestEvaluator.evaluateCandidate(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.gp.strategies.BacktestEvaluator.evaluateCandidate(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.gp.GPEvaluationJob.call(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.gp.GPEvaluationJob.call(Unknown Source) ~[na:na]
at com.strategyquant.gridlib.compute.performer.MultithreadComputePerformer$1.run(Unknown Source) ~[na:na]
at com.strategyquant.gridlib.concurrent.ThreadPool$TaskExecutor.run(Unknown Source) ~[na:na]
at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
Caused by: java.lang.OutOfMemoryError: Java heap space
03:45:54.978 [Blocking computeThread #17] ERROR c.s.tradinglib.project.SQProject - Project stopped - Exceeded memory limit
03:45:54.980 [Blocking computeThread #17] INFO  c.s.t.project.ProgressEngine - Project stopped - Exceeded memory limit
03:45:54.992 [Blocking computeThread #7 - Builder_1-Generation 2.76.142] ERROR BacktestEvaluator - com.strategyquant.datalib.TradingException: Cannot create indicator
at SQ.Internal.IndicatorBlock.OnBlockEvaluate(IndicatorBlock.java:114)
at SQ.Internal.IndicatorBlock.evaluateBlock(IndicatorBlock.java:184)
at SQ.Blocks.Functions.Plus.OnBlockEvaluate(Plus.java:47)
at SQ.Internal.ValueBlock.evaluateBlock(ValueBlock.java:42)
at SQ.Formulas.Price.UseFormula.evaluateFormula(UseFormula.java:23)
at SQ.Blocks.Order.Open.EnterAtLimit.OnAction(EnterAtLimit.java:64)
at SQ.Internal.RulesImpl.IfThen.evaluateRule(IfThen.java:90)
at SQ.Internal.StrategyEvent.evaluateEvent(StrategyEvent.java:57)
at SQ.Internal.XmlStrategy.OnBarUpdate(XmlStrategy.java:145)
at com.strategyquant.tradinglib.engine.TradingSetup.callStrategyOnBarUpdate(Unknown Source)
at com.strategyquant.tradinglib.setup.TradingSetupRunnable.processReceivedTickPrepared(Unknown Source)
at com.strategyquant.tradinglib.setup.TradingSetupRunnable.runOneCycle(Unknown Source)
at com.strategyquant.tradinglib.backtest.BacktestTradingSetupRunnable.runCalled(Unknown Source)
at com.strategyquant.tradinglib.engine.BacktestTradingSetup.processEvent(Unknown Source)
at com.strategyquant.tradinglib.backtest.BacktestDataFeed.processEvent(BacktestDataFeed.java:172)
at com.strategyquant.tradinglib.backtest.BacktestDataFeed.start(BacktestDataFeed.java:142)
at com.strategyquant.tradinglib.engine.BacktestEngine.runBacktest(Unknown Source)
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.backtestStrategy(Unknown Source)
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.runBacktestOnMainSetup(Unknown Source)
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.execute(Unknown Source)
at com.strategyquant.tradinglib.gp.strategies.BacktestEvaluator.evaluateCandidate(Unknown Source)
at com.strategyquant.tradinglib.gp.strategies.BacktestEvaluator.evaluateCandidate(Unknown Source)
at com.strategyquant.tradinglib.gp.GPEvaluationJob.call(Unknown Source)
at com.strategyquant.tradinglib.gp.GPEvaluationJob.call(Unknown Source)
at com.strategyquant.gridlib.compute.performer.MultithreadComputePerformer$1.run(Unknown Source)
at com.strategyquant.gridlib.concurrent.ThreadPool$TaskExecutor.run(Unknown Source)
at java.base/java.lang.Thread.run(Thread.java:834)

com.strategyquant.datalib.TradingException: Cannot create indicator
at SQ.Internal.IndicatorBlock.OnBlockEvaluate(IndicatorBlock.java:114) ~[na:na]
at SQ.Internal.IndicatorBlock.evaluateBlock(IndicatorBlock.java:184) ~[na:na]
at SQ.Blocks.Functions.Plus.OnBlockEvaluate(Plus.java:47) ~[na:na]
at SQ.Internal.ValueBlock.evaluateBlock(ValueBlock.java:42) ~[na:na]
at SQ.Formulas.Price.UseFormula.evaluateFormula(UseFormula.java:23) ~[na:na]
at SQ.Blocks.Order.Open.EnterAtLimit.OnAction(EnterAtLimit.java:64) ~[na:na]
at SQ.Internal.RulesImpl.IfThen.evaluateRule(IfThen.java:90) ~[na:na]
at SQ.Internal.StrategyEvent.evaluateEvent(StrategyEvent.java:57) ~[na:na]
at SQ.Internal.XmlStrategy.OnBarUpdate(XmlStrategy.java:145) ~[na:na]
at com.strategyquant.tradinglib.engine.TradingSetup.callStrategyOnBarUpdate(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.setup.TradingSetupRunnable.processReceivedTickPrepared(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.setup.TradingSetupRunnable.runOneCycle(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtest.BacktestTradingSetupRunnable.runCalled(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.engine.BacktestTradingSetup.processEvent(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtest.BacktestDataFeed.processEvent(BacktestDataFeed.java:172) ~[na:na]
at com.strategyquant.tradinglib.backtest.BacktestDataFeed.start(BacktestDataFeed.java:142) ~[na:na]
at com.strategyquant.tradinglib.engine.BacktestEngine.runBacktest(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.backtestStrategy(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.runBacktestOnMainSetup(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.backtestrunner.BacktestRunner.execute(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.gp.strategies.BacktestEvaluator.evaluateCandidate(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.gp.strategies.BacktestEvaluator.evaluateCandidate(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.gp.GPEvaluationJob.call(Unknown Source) ~[na:na]
at com.strategyquant.tradinglib.gp.GPEvaluationJob.call(Unknown Source) ~[na:na]
at com.strategyquant.gridlib.compute.performer.MultithreadComputePerformer$1.run(Unknown Source) ~[na:na]
at com.strategyquant.gridlib.concurrent.ThreadPool$TaskExecutor.run(Unknown Source) ~[na:na]
at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]

Attachments
No attachments
  • Votes +1
  • Project StrategyQuant X
  • Type Bug
  • Status Fixed
  • Priority Normal

History

TT
#1

Tamas

12.11.2020 21:24

Status changed from New to Fixed

64 GB RAM is enough. Please open Config dialog and set max memory to 32 GB.


If you still have a problem with java.lang.OutOfMemoryError: Java heap space please make a printscreen of Engine panel with opened Heap memory chart when it happen + build config to reproduce the error.


Votes: +1

Drop files to upload

or

choose files

Max size: 5MB

Not allowed: exe, msi, application, reg, php, js, htaccess, htpasswd, gitignore

...
Wait please