Reply

SQ left running overnight, unresponsive next day.

8 replies

drayzen

Customer, bbp_participant, community, 0 replies.

Visit profile

5 years ago #235070

Not sure what the issue is, hopefully someone can help.
I left SQ running overnight and came back to find it extremely unresponsive.
It was running fine for the first few hours where I checked it a few times and CPU usage was alternating between 85-100% depending upon whether it was doing generation or robustness testing.

This is my command line:
D:\StrategyQuant\StrategyQuant64.exe -J-server -J-Xmx13g -J-XX:+DisableExplicitGC -J-XX:+AggressiveOpts -J-XX:+UseSerialGC
System is a Ryzen 1800X with 16GB running Win 10.
Attached is the settings file and a screen capture of before I shut it down.
CPU usage appeared to be at ~0% and SQ kept alternating between unresponsive and active about every 20-30sec.
Before I left it it had created ~500 strategies, when I came back the next day it had only reached ~750.
As can be seen in the screen capture the last jobs it processed were ridiculously long, being over 2hrs!

I’m guessing it’s maybe something to do with faulty memory management as the histogram looks fairly full in relation to the 13GB it had allocated…?

I’m kind of getting sick of having issues with this software, I’d wanted to set this job to process the 28 majors and crosses in the Additional data for testing, but now found that it’s hard limited to only 6 additional tests.  🙁

Attachments:
You must be logged in to view attached files.

... the alien does not concern itself with the opinions of humans ...

0

drayzen

Customer, bbp_participant, community, 0 replies.

Visit profile

5 years ago #235075

Also found the was an 120MB .log file, not sure if that’s excessively large for SQ but seems pretty big for a log.
I can see a few Java errors in there, but means nothing to me.  ?:/
Kind of hoping that’s not normal, if I plan to leave SQ running constantly that would chew up my HD space before too long…

Attachments:
You must be logged in to view attached files.

... the alien does not concern itself with the opinions of humans ...

0

tomas262

Administrator, sq-ultimate, 2 replies.

Visit profile

5 years ago #235089

Hello,

you can try to reduce the load during robustness testing. You can decrease number of overall tests to 30 and disable “spread testing”. If you increase the slippage to supply that you will also decrease number of tests that must be done. When the robustness testing is not used at all do you experience stability issues?

0

drayzen

Customer, bbp_participant, community, 0 replies.

Visit profile

5 years ago #235127

Hi Tomas,
I tried with just the changes you suggested, 30 simulations, and I disabled Spread and Slippage to be certain. A bit dissapointing as variable spread was one I wanted to use.
I could see it was starting to fail again with memory usage and creation times blowing out, so stopped the run manually.

Anyway, so I figured it might be the custom command line so I cut it back to this:
D:\StrategyQuant\StrategyQuant64.exe -J-Xmx12g
I also reduced it by 1GB from 13 to 12 to give it a little more headroom.

Unfortunately that didn’t help and another overnight session wound up with an out of memory error, first time I’ve seen this one.

So, I was curious to see what had happened with the memory:

It appears to have peaked at 12.56GB with 12.73 committed. Given I’ve got 16GB and nothing else running the error in SQ must have been triggered by the 12GB allocation. Is this normal? Should it not map out to disk once RAM is full?

In terms of strategies, it had only reached 2,297 in the Last generation tab, nothing in Databank.

I have also attached the two most recent .log files.

Attachments:
You must be logged in to view attached files.

... the alien does not concern itself with the opinions of humans ...

0

drayzen

Customer, bbp_participant, community, 0 replies.

Visit profile

5 years ago #235193

Hi Tomas,
I started another test with RT disabled to see what would happen. While it’s been able to complete the generation of the initial population, it’s yet again filled the 12GB allocated memory and appears to be doing constant small traffic to disk. As this is an SSD that is concerning as it’s just going to kill the disk prematurely.
It’s also pretty  much a waste of time running this now as it’s taking near 30min to generate each strategy, ridiculous!

Looking at memory again, there’s a lot of Page Faults, is that normal?

I’ve had SQ now for 5 months and it’s produced nothing, other than frustrating the hell out of me trying to get it to work…
This is a modern high-power PC, so I don’t know why it can’t just do what it’s supposed to.

... the alien does not concern itself with the opinions of humans ...

0

hankeys

Customer, bbp_participant, community, sq-ultimate, 487 replies.

Visit profile

5 years ago #235198

dont use too big initial population – 10000 is nonsense. 100 will be good

dont built too big first databank – only 1000+ basic strategies in databank – stop and retest

dont use MC tests in building process, its useless – built basic pack of strategies, and retest them (another OOS, whole backtest, higher/lower TF, another market) – filter them

and only what left run through MC tests

You want to be a profitable algotrader? We started using StrateQuant software in early 2014. For now we have a very big knowhow for building EAs for every possible types of markets. We share this knowhow, apps, tools and also all final strategies with real traders. If you want to join us, fill in the FORM.

0

hankeys

Customer, bbp_participant, community, sq-ultimate, 487 replies.

Visit profile

5 years ago #235199

send here your setfile, because also in setting you can have many many problems – you need to know how to set everything according to the market and TF you want to build the strs

You want to be a profitable algotrader? We started using StrateQuant software in early 2014. For now we have a very big knowhow for building EAs for every possible types of markets. We share this knowhow, apps, tools and also all final strategies with real traders. If you want to join us, fill in the FORM.

0

tomas262

Administrator, sq-ultimate, 2 replies.

Visit profile

5 years ago #235228

Hello,

RT does not have to be used in the initial step. After strategies are generated and filtered now you can do RT testing. It pointless as mentioned to use CPU power to RT test losing strategies. Also you did not mentioned whether you test using tick or minute or even selected timeframe. I use tick data occasionally only. Most of my strategies are simple enough so tick data is not needed. Please attach your settings zipped

0

drayzen

Customer, bbp_participant, community, 0 replies.

Visit profile

5 years ago #235435

dont use too big initial population – 10000 is nonsense. 100 will be good dont built too big first databank – only 1000+ basic strategies in databank – stop and retest dont use MC tests in building process, its useless – built basic pack of strategies, and retest them (another OOS, whole backtest, higher/lower TF, another market) – filter them and only what left run through MC tests

Hi hankeys,
Thanks for your suggestions, I’ve run a few more tests since and it seems I need to drastically lower my expectations of what I can do with SQ. It seems there are inherent issues with either the coding or Java that limit it’s ability to work with a lot of data in memory, or maybe it’s just Windows … Perhaps a version coded in C for Linux would be a better way to go…?
Searching the forums I saw another user with 128GB of RAM having issues. I’d been thinking that getting the same amount of RAM with a Threadripper might enable me to do what I want but it appears not. In doing research about this software, and considering the price, my expectation was that the only limiting factors would be time and computing resources.

Anyways, I’ve tried some different settings with M1 data and the memory usage is much better, though currently not testing any additional pairs. Only problem is, it seems now I’ve totally broken SQ!  xD
Settings file attached.

I see where you say 10,000 is nonsense, but I’ll explain what I was thinking then it might seem less ridiculous to you.  🙂
My initial idea was to test all 28 major & cross pairs to create strategies that will behave against the market as a whole rather than a specific pair. I’ve been manually building EA’s referencing Simeon Semenych’s CFP indicator (https://www.mql5.com/en/users/semsemfx/publications) that brought me to that approach.
So in terms of SQ, my preference is to take a brute force approach and try to set it up to be able to run constantly with fairly tight settings also using RT and Portfolio data for dismissal so it only saves reasonably well performing strategies on the first try. I had wanted to put in x28 pairs for additional testing but then found it’s limited to x6.
My preference is to throw computing horsepower at the problem rather than be contuously testing and re-testing different stettings hoping to hit on something that works, that seems like a pipe-dream.

– Going off topic for a second, speaking of pipe-dreams, I saw this Blog post (https://quant.blog/success-story-a-perfect-forex-portfolio/) and was wondering if you’ve seen anyone actually create a portfolio anything like that? The blog claims that the user’s live results are close to that equity curve, but given the Myfxbook link is broken I have to call BS.

I realise this doesn’t align with the approach many others are using, but I’m honestly finding it baffling when I read others saying about using specific settings for specific scenarios. I mean ultimately I see SQ as an application specific random number generator that’s trying to generate patterns that produce a desired result when run against the random data of currency pairs. I figure there’s some settings that dictate boundaries of operation, like min/max indicator settings for example, but ultimately it occurrs to me that if you are optimising using specific settings then it’s just a form of curve fitting, I mean from the point a strategy is created, it either works or doesn’t. I’m also thinking that if the approach requires running many different tests with different settings, that inherently also reduces the chance of finding positive outcomes due to repetition or missed configurations.
So given all that, I was basically wanting it to sit there running continuously adding better and better strategies to the databank over time. I would then regularly take them all and run them through QA Portfolio Master, or maybe Portfoliolizer, to find optimal portfolios to run.

Now with this current error, I’m totally baffled why it just given up after 14,999 attempts.
thanks, Al  🙂

Attachments:
You must be logged in to view attached files.

... the alien does not concern itself with the opinions of humans ...

0

Viewing 8 replies - 1 through 8 (of 8 total)