GSB Forums

General support questions.

 Pages:  1    3  ..  25

admin - 9-5-2017 at 02:49 PM

I'm getting lots of questions on GSB. It would be good to post them here so others can benefit from the questions and replies.

Carl - 10-5-2017 at 04:14 AM

Hi Peter,

Suggestion for a future version of GSB: to be able to import any filename instead of only ES.30.txt.

The name ES.30.txt only shows the ticker and the bar size, not the session used nor the time period of the dataset.

Thanks,
Carl

admin - 10-5-2017 at 04:19 AM

Hi Carl,
I think thats a good idea.
Think like crude oil or gold could vary a lot in session time, and there's lots of room for confusion.
A modification on it could be ES.30.AnthingyouLike.txt or ES.30.830.1500.centralusa.txt

admin - 10-5-2017 at 08:16 PM

This is implemented in 19.5 build. It will be uploaded < 24 hours.

crazyhedgehog - 12-5-2017 at 10:43 AM

Hi Peter, I noticed that WF optimization does not use the Commissions value (i.e. it always optimizes as if the Commissions were set to 0, rather than the actual value I put in the field). This leads to the WF curves on the Graph being much higher than the curve from the original optimization. Also this means that WF optimizes for smaller Average Trades, and the WF results would not be usable in actual trading systems (since the Average Trade would be too small to cover for trading costs). Could you please look into this? Thanks!

admin - 12-5-2017 at 04:20 PM

Hi Crazyhedgehog,
I looked into this and found the s&c is not applied to the IS curve, but is applied to OOS curve & the trading/test curve.
It would be safer to use 0$ s&C for now. We are looking for entry techniques, not systems at this early stage of GSB development. So low profit per trade should not be an issue.
GSB1es system (im the gsb\tradestation folder) has profits increase from $20 to about $200 per trade with one new truism filter, and re-optimization of parameters.
The graph of the WF curves are not higher due just to S&C. They are typically higher because wf has made improvements in parameters.
You can see this at post 17 on http://www.trademaid.info/forum/viewthread.php?tid=1
Regardless the most import curve, the gray WF/OOS curve has had S&C applied.
If you change S&C on the report, and click on the left part of the line. (see red arrow) the curves is instantly recalculated on the graph.
This is not the case for WF, as WF will have to be calculated again. You can verify what I say by using $0 S&C
Regardless I will look into getting this issue fixed.

crazyhedgehog - 13-5-2017 at 01:49 AM

Hi Peter, I understand the main goal is to look for entry techniques. However at least the way I think about it the entry technique should issue a signal for the bigger moves, not for every small move, since the profits are in those moves. The best way I found to force the optimizers to look for such techniques is to have some level of commissions set (say $5 for ES). Just my opinion though.

In terms of OOS curve, when I compare it to the curve I get in TS, it looks to me like the commissions are not applied to OOS curve either. They are indeed applied to Trading/test curves. Not sure why we get different results?

admin - 13-5-2017 at 05:34 AM

19.96 build has the commission issue fixed. I will upload shortly. In the big picture soon I expect to have very significant increase in average trade and profit factor with upcoming build.
Secondary filter is also going to help a bit.
Totally agree that adding commission shifts the results to fatter trades, but I doubt at this stage of gsb it will make a lot of difference. Later on it will though.
fitness by default is netprofit * profit factor. You could also try netprofit * average trade^2
Bottom line is soon gsb is going to make high average trade much easier.

Carl - 14-5-2017 at 06:55 AM

Hi Peter,

Have been testing version 19.3. Looking good!

1. Maybe an idea to be able to select a range of strategies to start the WFA on?
2. Maybe an idea to calculate the Pearson for the WFA/OOS curve and add this number after the WFA to the table with results?
3. Is it possible to quantify the difference between the Best/IS and the WF/OOS curve? Correlation? Pearson? If the difference is big, the number is X. And if the difference is small, the number is Y. Is it possible to add this number to the table with the results?
4. In version 18.4 it was possible to copy the table with the results to Excel for further analysis (tab Unique systems). In version 19.3 this is no longer possible. Can this be switched on again?
5. What is the relation between the parameter values in tab Parameters and the original system parameter values and the list of WF parameter values?

Thanks,
Carl

admin - 15-5-2017 at 12:44 AM

Hi Carl.
You point 1). Good idea. On the todo list.
2) We need all the metrics (or at least the main ones) for OOS and IS curve. Agreed
3) This is complex. We could do the ratio of fitness of orginal to OOS and IS. Why its complex is PF and Average trade might go up lots, and netprofit down. So there is too many things to compare.
I'm open to ideas on this.
4) Im not clear on this. Can you do some screen shot(s)
5) Currently the parameter tab = the original system tab, though some people will find this hard to see. I think the parameter tab isnt needed.
Whats much too complex is the walkforward tab summary. I'm not going to document this as it will be explained in GSB in the next month or less.
In short this is the parameters and indicators in machine (GSB) readable format), not human format.
If you don' understand it, dont worry. Even I dont, though I have a good idea. ie 13 in the list I think represents fastK.
This needs to be explain in GSB as time permits.





wf-tab.png - 56kB

admin - 15-5-2017 at 12:46 AM

In regards to crazyhedgehog post about lifting the average trade, please see this post.
http://www.trademaid.info/forum/viewthread.php?tid=12

Carl - 16-5-2017 at 01:57 PM


May 10 2017

Suggestion:

"3. Is it possible to quantify the difference between the Best/IS and the WF/OOS curve? Correlation? Pearson? If the difference is big, the number is X. And if the difference is small, the number is Y. Is it possible to add this number to the table with the results?"

A quality measure could maybe be the average absolute distance between the Best/IS and WF/OOS curves?

Carl



admin - 16-5-2017 at 04:22 PM

The perfect would be the two curves on on top of each other. I had that yesterday for the first time.
Next best thing would be the curve's are parallel for the later part of the graph. (more the better)
This is easy to detect. What I actually value a lot is parameter stability. This means the current parameters have locked in as being the best parameters.
A very healthy sign. In WF, I tend to choose the fitness that gives the best parameter stability. This can be measured easily, and in time an auto detect the best fitness
can also be done. It will require numerous WF runs though. I plan to included this in WF. Parameter stability should happen within a month, but auto fitness detect some time away.
Whats still acceptable is that OS curve is not to far below IS curve.
Problem can be that IS curve has much better metrics. ie PF, Average trade, DD, but net profit is down.
This is still highly acceptable.
Whats not acceptable is OOS curve tanks. If that happens be glad that WF picked up a failed system early in the process.

admin - 17-5-2017 at 12:57 AM

Carl, your suggestion to send multiple systems at once to WF is done in 20.3. Thanks for the suggestion.

gmoney - 17-5-2017 at 10:57 AM

What is the difference between the Testing and Validation periods. The documentation says GSB only looks at the Training period. If that is the case, then why are there separate Testing and Validation periods?

Carl - 17-5-2017 at 11:16 AM


@ gmoney, good question.


Also I noticed that some of the price data files are not complete.

Didn't check all the price files, but for example NG.30.txt only covers the years 2002, 2003, 2006, 2007 and 2017.


admin - 17-5-2017 at 04:16 PM

Hi Gmoney,
At the moment I am using 40% training, so GSB is building systems on this part of the data. The rest GSB has not seen. However as we humans tend to sort the results by full period,
we have seen the rest of the data. That's why I like people to view all systems both good and bad after this. What you find with GSB however is the ratio of samples that work OOS is very high.
you can see this at the video here at about 4 minutes in. https://www.youtube.com/watch?v=bm6HQxN6ppk
The 60% remaining OOS gives us an idea of how the system has gone out of sample. Regardless a walk forward enables us to see a very large part of the data out of sample. There is normally however a 40%
part of data in sample required for a WF test.

admin - 17-5-2017 at 04:19 PM

The NG data is bad. I dont have that on my TS login, so will take me some time to get the data, unless we have a volunteer to provide it.
We cant provide data with GSB soon as I dont think the exchange allows it. Instead we can provide the ts workspace to export the data.

gmoney - 17-5-2017 at 06:10 PM

Thank you. I understand the difference between the training and OOS periods (testing and validation periods). My question is what the difference is between the Testing and Validation periods.

admin - 17-5-2017 at 06:30 PM

You can choose to sort on test training results, and then see whats in validation.
Its sort of like a 3 step walk forward process. Its optional to use it.

Carl - 18-5-2017 at 09:49 AM

Minor detail.

Order in left window is:
test
training
validation

But shouldn't it be?
training
test
validation

(And maybe add the text "IS" and "OOS"? Don't know if I am the only one, but I always mix training/test up...)

admin - 18-5-2017 at 04:45 PM

Your correct that the ext is is the wrong order.
Not sure what you mean by
(And maybe add the text "IS" and "OOS"? Don't know if I am the only one, but I always mix training/test up...)
as I see them of the graph after a WF. Can you do a screen shot with arrows?

Carl - 19-5-2017 at 02:03 AM

Hi Peter,

I meant the text in the left window:
Training (IS)
Test (OOS)
Validation


Carl - 19-5-2017 at 02:03 AM


Sometimes a strategy makes a large part of the total profit in the 2008 volatile period. The rest of the equity curve is rather flat.
I would like to use the period 2009 until 2014 as the training period and the rest (1997 - 2008 and 2014 until now) as a test/validation period.

At the moment GSB only allows the sequence training/test/validation.
It might be a good idea to make this a bit more flexible?

admin - 19-5-2017 at 02:12 AM

Try vbaseplusminusMedium fitness. Fitness is relative to how much of the range it gets, not the profit.
This was designed for this problem. I have not used it on GSB myself. Its a EWFO feature ported to GSB

If that doesnt work, try a fixed profit target of $1500 to $2000, but remove it when you go live.

gmoney - 19-5-2017 at 08:26 AM

Quote: Originally posted by admin  
Try vbaseplusminusMedium fitness. Fitness is relative to how much of the range it gets, not the profit.
This was designed for this problem. I have not used it on GSB myself. Its a EWFO feature ported to GSB

If that doesnt work, try a fixed profit target of $1500 to $2000, but remove it when you go live.


Great suggestions. My idea was to delete 2008 from the price data file (saved with new name of course!). Would that cause any issue?

admin - 19-5-2017 at 04:29 PM

Deleting the data would be fine, or you could aways move 2008 and put it on validation.
Keep in mind the profits will then be very high in that period.
Only problem with deleted the data is you dont want a big gap in the chart as all indicators will spike.
But this is only likely to screw a few trades. If your have market on close off, a big gap is going to cause issues.
You could manually gap adjust the data, but doubt is worth the effort.
Todays build has stop and profit target.

Carl - 22-5-2017 at 12:49 AM

Hi Peter,

I might be a good idea if you could make a video where you explain how you would select the best looking systems from GSB.
Perform WF, and how you would analyse and choose the most interesting systems for further analysis in Tradestation.

Just to show what process you go through.

Thanks.
Carl

admin - 22-5-2017 at 12:52 AM

Thats a good idea.
I'M hoping to do that tomorrow. The docs are getting very out of date now we have secondary filter and or truism.

Carl - 22-5-2017 at 11:42 AM

Hi Peter,

Just installed GSB version 21.5 . Message shows up: trial has expired.

GSB 21.4 says I still got 9 day of trial to go.

Thanks,
Carl

admin - 22-5-2017 at 05:46 PM

Hi Carl,
Ive just found out your not the only one.
I posted more details here.
http://www.trademaid.info/forum/viewthread.php?tid=1#pid1 The first and last post.
Sorry for trouble caused. Send me the two rego codes to fix it, and dont close GSB until I give the unlock key

Using All CPU Resources

heyligerb - 23-5-2017 at 08:29 AM

First... GSB seems very fast, so this isn't a complaint, but I'd like to know if there's a way to utilize all the CPU resources.

It seems the most CPU usage I can get is 40%... and I get about 2200 systems/sec at that rate.

Wondering if there's some kind of a registry setting or something that is limiting it. I have a server array dedicated to my discovery work, so looking to efficiently use all the hardware resources I have.

admin - 23-5-2017 at 03:54 PM

Good question. What cpu do you have/ clock speed.
Is cpu power saving on?
see this post. http://www.trademaid.info/forum/viewthread.php?tid=13
If your on the default settings, thats very slow. Though there is a bug where GSB slows down after hours / or a day.
GSB has done some very smart things under the bonnet to get such speed, but its CPU usage is low.
It likes high clock speed on the core, but doesnt need lots of cores.
Whats good about this is you can run multiple copies of GSB on the same CPU, with little degrading of performance.
Cloud processing is on the wish list, but GSB is so fast im not sure how much its going to be needed.
I have a possible supplier of spare CPU in a data center to sell us spare CPU time.
If it happens, multi CPU is 6 months to a year away.

gmoney - 25-5-2017 at 06:17 PM

What are the lengths, weights, and entry level ranges that GSB uses? I want to know so that I am properly doing WF tests in TradeStation. Is this shown somewhere in the program?

admin - 25-5-2017 at 06:45 PM

I will always do weights 0 to 100 if its positive, and -100 to 0 if negative.
but if a weight is close to abs(100), ie -81 in this example, I will make the range wider. ie i did -200 to 0 step 10
Always include zero, as if zero is the best result then the indicator is redundant and should be removed.
Because you have purchased GSB, I will send you my build notes on GSBsys2ES
When optimizing GSB uses parameters in 10% increments from the original. ie if is 100 it will use ...90,100,110,120 etc
This is adjustable in GSB, but probably should be left as is.
Make sure you use ffc functions in TS as they are much faster. ie highesthighffc ,FASTKFFC etc
Actual parameters varies per indicator. For example, AccumDist has nothing, AverageFC has 2 to 200 and CCI has 7 values between 5 and 55



nearest.png - 5kB gsbesSys2_initial.png - 24kB

Carl - 26-5-2017 at 09:23 AM

Suggestion:
Sorting the secondary datastreams. First on ticker and second on barsize.
In this way data2 is always A, data3 is also B, data4 = C.

When you run different tests in GSB with the same secondary datastreams, then it is possible to test the best results from the different GSB tests in the same workspace in Tradestation (with data2=A, data3=B and data4=C).

Thanks

admin - 26-5-2017 at 02:34 PM

You mean alphabetical sort? I like that idea, but then if you change one symbol, every thing after it will change. Im going to think on this but see the merits too it.
Can we have more feedback from other users?

Carl - 26-5-2017 at 10:47 PM

Hi Peter,

Or maybe default alphabetical sorted + the possibility to change manually?

data streams sorting.jpg - 8kB

admin - 26-5-2017 at 11:04 PM

I like that idea. Hopefully will surface soon in a new build

Carl - 27-5-2017 at 12:51 AM


Hi Peter,

I always like to jump from field to field by using the tab key on the keyboard.
At the moment this is not possible in GSB (i.e. in the left window).
Maybe this is nice to have ?

And another one, to be able to manually clean the data in the tab "unique systems".
When starting a new test (without restarting GSB) all the data in the tab stays there.
The only way to clean the data is by exiting and restarting GSB.

Thanks


admin - 27-5-2017 at 01:09 AM

Totally agree on the second point. We need a delete option. Will see what we can do with the first question

Backtest Termination / Abortion

Armmar - 27-5-2017 at 11:12 AM

I'm assuming the backtest abortion (in docs) and backtest termination (in latest build) sections are referring to the same thing.

In the docs, it mentions that backtest abortion aborts testing when the first 20% of training data does not meet a specified criteria which helps speed up the search. This makes sense.

However, in the latest build, the documentation in the software says that the backtest is aborted if the performance across all data (training+test+validation) does not pass a specific criteria. This doesn't makes sense to me.

If both sections are referring to the same thing, which is the current behavior? If it is the latter, can it be changed to the former?


admin - 28-5-2017 at 03:26 PM

I'm assuming the backtest abortion (in docs) and backtest termination (in latest build) sections are referring to the same thing.
YES
Termination occurs if the performance across all data (training+test+validation) @20% of this total
so if training is 40%, and test is 60%, if termination is set to 20%, it will terminate at 50% of the training period.
If your still not clear, just reply again.
In the current mode you can choose to set it at any point of the data, which I think is the best idea.

Range bar support

Gregorian - 29-5-2017 at 09:24 AM

Is it possible to use data from Point (MC) / Range (TS) bar charts instead of from only time-based bar charts? Seems to me the source of the data shouldn't matter to GSB, but the rules on data file naming conventions imply that only time-based bars are supported.

Secondary Data and MC data files

Gregorian - 29-5-2017 at 02:27 PM

Two more questions:

1. How do you remove the Secondary Data files from the settings? It is possible to click on the three-dots and change the Secondary Data file(s) being used, but you cannot delete or backspace over the Secondary Data file that has previously been selected so that none are used. I don't think using a Secondary Data file should be mandatory.

2. When trying to use minute bar data exported from Multicharts, GSB aborts with "String was not recognized as a valid Date/Time". A sample MC data file is attached. Perhaps it's because of the seconds on the time? MC does not allow us to change the format of their exported data.

Attachment: Login to view the details


admin - 29-5-2017 at 04:06 PM

Secondary Data and MC data files
1) I dont think that can be done. The work around is to select the primary data file on the secondary. Its certainly not a good idea to have no data2 but I will get this fixed at a later stage.

2) Even with some modifying, I cant get mc to work.
The header is different, I removed the seconds, but note that ts will use 02 while mc will use 2.
So for now you will have to write a indicator to make the file identical, or use ts data or wait till I allow mc format to be imported.
I would hope to have it late this week.

admin - 29-5-2017 at 04:08 PM

Range bar support
I dont see how this is going to work with secondary data streams. I did much research and its really important to have them, though you can stlil make systems without them.
Im open to ideas on this.

Commissions

Gregorian - 30-5-2017 at 02:32 PM

If you specify a non-zero amount in the Commissions fields, it causes no strategies to be generated, at least in the testing I have done thus far. If you leave Commission set to at zero, strategies are generated whose Average Trade exceeds the roundtrip Commission amount that I had previously entered. So a non-zero Commission amount is somehow preventing certain strategies from evolving.

Do you recommend leaving Commission set to zero so that more strategies are generated - in which case I'm not sure what the purpose of the Commission field is - or do you see this as something to be fixed?

admin - 30-5-2017 at 03:24 PM

I'm intending to change this in the next week.
I want commission to be subtracted off system curve, IS curve and OOS curve.
One value for all
This value is NOT taken off fitness

The a commission value to be taken off FITNESS in system curve, IS curve and OOS curve.
One value for all
This value is not taken off equity curves.
EWFO works like this.
It means you can shift GSB to look for fatter trades, but get a totally level playing field for the equity curves,
but can choose to use commission on both as is the traditional usage of commission field.

I tested with $1 on each commission field and it worked fine. Probably your figure is to high to pass your filters in app settings.
If you use fitness netprofit * average trade, the commission value to fitness will in effect be irrelevant.
Fitness netprofit by itself, commission in fitness will be very significant.
Commission with Fitness in NP & PF I think we be irrelevant too.

crazyhedgehog - 31-5-2017 at 12:44 AM

I always build strategies with commission set to 10 in all 3 fields and it works well. As Peter said maybe the filters are too restrictive? I personally think it's important to build with commission and slippage included at realistic level and use Pearson as fitness so that you find systems which have linear equity even after commissions are subtracted from the trades.

Carl - 31-5-2017 at 04:17 AM

Hi Peter,

Just for reference purposes I would be nice if every system in the tab "unique system" had a unique number.

Thanks

admin - 31-5-2017 at 04:20 AM

Agreed. Thats a good idea. It's on the short term to do list. TS<>GSB & WF improvements are the top focus right now.

admin - 2-6-2017 at 12:57 AM

Hi Carl,
reference number done in 24.8 today. Thanks for the idea. We can do numbers 1 to ... as when we restart, or have multiple GSBwork.exe, or have loops, we might get duplicates

Carl - 4-6-2017 at 05:54 AM

Thanks Peter, a few suggestions:

Maybe users would like to be able to develop "long only" or "short only" systems.

And for long+short systems to be able to see the performance results for long and short trades separately (table, equity line, WF equity line).

Left window: "set exit at close" is now under "general", maybe a better place might be under "exits"?

admin - 4-6-2017 at 03:45 PM

Agreed on comments. Long only works well on some markets. At a guess it will be a month or so away.

admin - 5-6-2017 at 06:24 AM

Secondary Data and MC data files

Hi Gregorian.
Multicharts format now supported in 25.0

Carl - 5-6-2017 at 08:37 AM

"Maybe users would like to be able to develop "long only" or "short only" systems."

And is it possible to combine a validated "long only" and a validated "short only" strategy into one long/short strategy.

Decycler in MC

Gregorian - 5-6-2017 at 09:04 AM

Thank you - the MC data import works fine.

However, the first strategy developed with this data had two problems when compiling in MC:

1. The series of numbers under the //ID line at the top caused a compile error. Not sure whether these are necessary.

2. The strategy required the Decycler routine, but the Decycler ELD will not import into MC - it shows no routines contained inside - though the same ELD imports into TS just fine.

gmoney - 5-6-2017 at 10:16 AM

Quote: Originally posted by Carl  
And is it possible to combine a validated "long only" and a validated "short only" strategy into one long/short strategy.


I agree. This would be a great feature to incorporate.

Naming of functions

zug7 - 6-6-2017 at 12:20 AM


I have downloaded DECYCLER-FUNCTIONS.ELD and I cannot import it into my Tradestation development environment !

I have a big problem with generic names like "RoofingFilter" and "Decycler". - I already have such functions and a lot of other code depends on it.

Therefore I basically have the choice to throw out my other stuff or rename it (which is not possible because these are pieces of software which are used in collaboration with others). - It should not be the case that a piece of software overwrites existing code which is not related.

Please, please, please ... in future: can all GSB specific functions and code start with a name like GSB_* . And please can we rename the existing functions?


admin - 6-6-2017 at 12:29 AM

Are the functions identical? If so there is no need to over write the code.
Otherwise a simple search and replace macro could be made on your end to change gsb code thats exported. (else do it manually)
Im open to options on this.
Yesterdays build had myrsi etc which shouldnt cause you issues.
For new code I can check with you before hand. There is some new indicators out soon.
Worst case I will look into renaming the old gsb indicators to keep you happy :)

admin - 6-6-2017 at 03:34 AM

Hi Gregorian
1) bug should be fixed in next release. Thank you

Here is _Decycler
You can cut and paste into mc
{
Decycler
� 2013 John F. Ehlers
}
Inputs:
Cutoff(numericsimple);

Vars:
alpha1(0),
HP(0),
Decycle(0);

//Highpass filter cyclic components whose periods are shorter than �cutoff� bars
alpha1 = (Cosine(360 / Cutoff) + Sine (360 / Cutoff) - 1) /
Cosine(360 / Cutoff);
Decycle = (alpha1 / 2)*(Close + Close[1]) + (1- alpha1)*Decycle[1];

_Decycler=Decycle;

admin - 6-6-2017 at 05:25 AM

Hi Zug7
done in 25.3. Not well tested so might be issues

zug7 - 6-6-2017 at 11:46 AM

Peter,

You are amazing! - It is less then 12 hours that I posted my problem and we have discussed this and this has been already changed. Thank you very much !!!

Thomas

Carl - 11-6-2017 at 11:12 PM

Hello Peter,

I have been using GSB for a few weeks now and am still amazed by the results GSB generates.
A few days ago GSB developed yet another very good looking strategy om ES 30 minutes.
I imported the GSB strategy code in Tradestation and did an optimization for a walk forward analysis with your software "Enhanced Walk Forward Optimizer" (EWFO).

I would like to ask a few questions about this process:
1. What parameter ranges do you use in Tradestation when optimizing a strategy for walk forward analysis. +/-20%, +/- 40%, something else?
2. Do you include costs & slippage in Tradestation or do you set it to zero in Tradestation and only include it in EWFO?
3. Because I purchased GSB and received the code for the strategy GSBsys2ES you developed, what fitness function did you use for GSBsys2ES in Tradestation and in EWFO?

Thanks



Thanks,

admin - 11-6-2017 at 11:43 PM

Hi Carl,
thank you for your kind words.
1) I would tend to use the range that GSB has used in its own WF tests. This however is a whole topic in and of itself.
So I might say use nearest % in GSB being 50% or even more. (That's +25%, -25% from the original.)
You could also change search space from nearest to full, so see what parameter range work out best.
Full search space will use the entire paramter range allowed for a indicator internal in GSB. ie rsi 0 to 100, with length say 5 to 200 (varies per indicator)
More iterations might be needed if search space full is used.
I then will perform an identical WF in GSB. If the results vary significantly, then increase the amount of WF generations / population.
Too few WF iterations leads to in-consistent WF results.
So then the parameter range that GSB has used in the green box, I would use both extremes.
ie for the first parameter that starts at 27, the range GSB used is from 23 to 34. So I would use this range.
If the final parameter was close to an either edge of the range (ie it was 34), then I would optimize wider still.
Weights I always like to included weight or zero. Logic behind this is if zero is chosen in WF, then the indicator is not valid.
I will always do at least 2 WF in TS --> EWFO. Reason is the first is to get a rough idea of what range of parameters to use, and the steps in parameter increase might be very large. Few large steps speeds up the WF process, but is less precise. IE, i might use weight 0 to 100 step 10 on the first WF. This might result in a range of 30 to 50 being used in EWFO. So I will then use say 25 to 55 step 5 on the next WF.
wfquestion.png - 39kB


2) I normally use 0$ slippage & commission in TS WF, but will outline why sometimes this is not a good idea.
TS default fitness in WF is netprofit. NP itself is not the best fitness. I prefer NP*PF or NP* average trade. TS cant do fitness np*pf etc.
So TS is going to maximize fitness. Normally that's fine but.... If you have a system that might make 20,000 $10 trades, TS is going to be working in the wrong parameter range.
If you added $10 r/t slippage, its going to be working in a much better parameter range. (A system that makes 20,000 $10 trades is of no interest to us, as the profit per trade is too low.

3) I think I used NP*PF to make GSB2es in GSB. In EWFO I also used NP*PF. Its shown in the documentation excel file I give out with the code.
In EWFO, I try several fitness's to see what one leads best to parameter stability. You will see the parameter stability in GSBsys2ES is excellent.

Its often very clear that one is better, but the final result is often the same on multiple fitness's.
In order of favorites for fitness I try
np*pf,np*ave trade, np, np/dd, np / (5dd),

fitness commission I typically use $15, sometimes $30
Strongly like commission to be used in fitness. It skews the system to have higher PF, average trade, and less trades.
vbase(m) in place of np I rarely try too.

Note you have to watch for the redundancy if you have ind1*weight1*indic2*weight2.
In this case you leave weight2 as fixed value.

Shown here is the parameter stability. Excellent result.






parateter.png - 55kB

Licensing problem

Gregorian - 12-6-2017 at 01:48 PM

Today GSB is asking for my License ID and Password before starting up. The original Activation Code (with no password) sent to me does not work. If I try to locate my License ID using the link provided, I get taken to my Adaptrade (!) license portal, with no way to switch the software provider company from Adaptrade to you. Rebooting the PC did not help.

admin - 12-6-2017 at 03:20 PM

Hi Gregorian, In the release notes I commented how all paid users now need a license ID. This is to make rego instant when new people purchase, and it does give the
options for me to provide better service. IE notify users when there are updates etc.
I am emailing you with licence codes for GSB, EWFO, PA and OPTMON
If you have any problems let me know, and sorry ofr inconvenience caused.

rws - 12-6-2017 at 03:30 PM

I would like to ask:

I see the AT-F and AT-S to be much higher than what I see
in the trade list based on XP and NP.
So I mean the average profit per trade is much higher than
the difference between buy and sell price.

Do I miss something?
Thanks

admin - 12-6-2017 at 03:35 PM

Can you send screen shots on both? What commission fitness and commission graph are you using?
If you do this on build 26.1 you can then export a system for me to test and look at.

admin - 12-6-2017 at 11:26 PM

Hi Carl,
you commented that you wanted WF ts script back. This is not greatly needed as you can copy the parameters from the wf screen. We do want it back though.
It disappeared due to a intermittent internal crash that's not quick for us to fix. If it works, it will appear here. Its on the to do list.


wf.png - 35kB

rws - 13-6-2017 at 01:22 PM


Please find the picture. Please compare the trade list to the average
profit. It seems they are very different or do I miss something?


Quote: Originally posted by admin  
Can you send screen shots on both? What commission fitness and commission graph are you using?
If you do this on build 26.1 you can then export a system for me to test and look at.


$ per trade.png - 257kB

Carl - 13-6-2017 at 01:32 PM

Your ES price is factor 100 to high?

Carl - 13-6-2017 at 01:54 PM

Hi Peter,

Hoe does the "performance filter walk forward" feature under "tools" work?
GSB - tools - app settings - performance filter walk forward

Is it possible to filter the walk forward strat results with this feature, because at the moment I am scanning the results visually and manually?

Would be really nice if the scanning of walk forwarded strats could be automated.

Thanks

admin - 13-6-2017 at 08:29 PM

Hi Carl,
from memory thats like termination filter. If a WF run didnt meet a certain metric, it will be terminated.
Not a good idea to make this filter too active as it could invalidate WF.
Im currently not doing massive amounts of WF, so personally dont see the need to auto scan them.
There could be months of programing work put into WF so it will be a work in progress. We will see how this develops over time.

admin - 13-6-2017 at 08:35 PM

Hi RWS,
have you changed contract point value or something? Its way too high. You should also be on build 26.1 That way you can export the system to me to check.
The pl per trade in the trade list is still not done in 26.1, but it should be in the next 1 or 2 builds.

rws - 15-6-2017 at 03:16 PM

The reason was regional setting which should be US setting instead
of European.

admin - 15-6-2017 at 03:19 PM

Hi RWS,
Im happy to try and fix the problem, but will need screen shots of your regional settings so I can duplicate the problem. Great you found a work around. Carl is in NL and not had these issues.

Carl - 16-6-2017 at 01:37 AM

I am in the Netherlands, but used US regional settings on my PC's.

Armmar - 17-6-2017 at 11:50 AM

hmm not sure if this is a bug or me not setting things up right.

I have data from 2004 till 2015 on my primary instrument and all secondary instruments. However, all systems that are being generated are showing trades from 2008 till the end of 2013.

I'm on build beta 26.4

rws - 17-6-2017 at 12:26 PM

I have seen this also when running DAX



rws - 18-6-2017 at 07:30 AM

I also would like to have this point 4
Being able to export the list of trading system for analysis in
an external program like excel or other.
Was this removed and not added again?

Thanks


Quote: Originally posted by admin  
Hi Carl.
You point 1). Good idea. On the todo list.
2) We need all the metrics (or at least the main ones) for OOS and IS curve. Agreed
3) This is complex. We could do the ratio of fitness of orginal to OOS and IS. Why its complex is PF and Average trade might go up lots, and netprofit down. So there is too many things to compare.
I'm open to ideas on this.
4) Im not clear on this. Can you do some screen shot(s)
5) Currently the parameter tab = the original system tab, though some people will find this hard to see. I think the parameter tab isnt needed.
Whats much too complex is the walkforward tab summary. I'm not going to document this as it will be explained in GSB in the next month or less.
In short this is the parameters and indicators in machine (GSB) readable format), not human format.
If you don' understand it, dont worry. Even I dont, though I have a good idea. ie 13 in the list I think represents fastK.
This needs to be explain in GSB as time permits.




Carl - 18-6-2017 at 11:23 AM

Seems possible again. Click on the left upper corner of the table. Crtl+c. Excel. Ctrl+v

admin - 18-6-2017 at 05:31 PM

HI Armmar
Best you export me the system with the data files so I can observe this.
Was there any trades pre 2008? Its possible the closeminusCLoseD has filtered out years where volatility is low.
You could change the secondary filter to Genetic to see if the same issue occurs.

Regarding export of systems.
Export to portfolio Analyst is being worked on, but not sure how far away it is.
For now just do as Carl said, crlr c, ctrlv

Armmar - 19-6-2017 at 07:36 AM

Quote: Originally posted by admin  
HI Armmar
Best you export me the system with the data files so I can observe this.
Was there any trades pre 2008? Its possible the closeminusCLoseD has filtered out years where volatility is low.
You could change the secondary filter to Genetic to see if the same issue occurs.


Email sent. I was using the closed filter; however, removing the filter didn't eliminate the discrepancy.

Volume in MC data

Gregorian - 20-6-2017 at 02:51 PM

Is volume a field you use in GSB? If so, how are we to format data from MC to include volume? In TS, volume may be in the data by default, but that's not the case in MC. We have to choose the option to "Export all available fields", but if we do that now, GSB does not recognize the format of the import file.

admin - 20-6-2017 at 03:48 PM

Volume is used in GSB. I think its up volume added to down volume. Send me the file you want to use from MC, and I will get if fixed.
I think only accumdist function used volume from memory.

Carl - 22-6-2017 at 06:40 AM

Hi Peter,

GSB managed to build a good strategy on BP.

1.
I noticed the IS results in the red oval differ from the IS results in the green oval. Is this because of the fitness commission? And if so, is this on purpose?

2. When I use the Tradestation script from GSB in TS, the results are much worse in TS. How can I best examine the cause of the difference?

Thanks

GSB screenshot 20170622.jpg - 111kB

admin - 22-6-2017 at 03:40 PM

1) My results match 100% in the green. Are you sure your on the correct system? The resolution of the screen shot is very low. I cant verify this as the full system details
arnt seen. Its just averagefc(close....
match.png - 40kB

2) The next build of GSB has had a lot of work to diagnose this issue of GSB <> TS. Im hoping its not far away.
For now you either need to put diag mode on, pick a date of your choice, and check the ts print log results = results in GSB ts code.
Great you found some success with BP. Im interested to see how that market goes.


admin - 22-6-2017 at 09:48 PM

All or most of the issues why TS <> GSB at times have been identified.
Issues with gsb_zerosafe is ts not always the same as GSB, when multiple data streams are used, sometimes there are duplicates of the same date and time,
and an issue with the TS debug script.
Should all be fixed in the next build.

Training data from end

Armmar - 23-6-2017 at 07:44 AM

I feel like I saw this somewhere (maybe in an earlier build / in the docs?) but can't find it right now ... is there a way to set the training data to be at x% of the data from the end of the data segment rather than in the beginning?

Also, as a suggestion, it would be cool to have randomly selected training segments. For example: Suppose your training data is across 5 years of data. Instead of 5 contiguous years, run the training across 20 randomly selected 3-month segments of the data (basically when testing a particular setting / ruleset, run it against the whole data set but only look at the trade results originating from those 20 randomly selected quarters). This way you are more likely to include various market regimes within your training set and your test sets.

admin - 23-6-2017 at 08:12 AM

test at beginning set to true / false. More later...
Under optimization on the gui left side

Armmar - 23-6-2017 at 08:17 AM

Quote: Originally posted by admin  
test at beginning set to true / false. More later...
Under optimization on the gui left side


hmm ... can't seem to find it. On build 26.4. http://i.imgur.com/waHDShe.png

admin - 23-6-2017 at 04:59 PM

Go to tools, app settings, gui, advanced mode TRUE.
You have got test at beginning as a second option. There is small merit in using this as it does shift where OOS is. I've never used it myself.
WF improvements could take a few months of programing time and it will get very innovative as GSB matures.
I think there is merit in your idea. There are however more important WF improvements needed. ie multi pass wf. Coarse settings, then fine settings.
Auto detect the best fitness.

As for your idea. Normally we have 10 periods of data to WF. (not 20)
If we did your approach, would it make sense to have GSB pick say 10 chunks of data, but randomize the order of the 10 chunks, and then plot x times the
x equity curves on the same chart? This get problematic if we are not day trading, and the gaps between the data splices are going to screw the indicators.

Armmar - 25-6-2017 at 08:28 AM

Quote: Originally posted by admin  
Go to tools, app settings, gui, advanced mode TRUE.

Ahh that's where it was! Thanks
Quote: Originally posted by admin  

Auto detect the best fitness.

fwiw, I'd suggest against auto-detection of the best fitness function ... that is yet another optimization we'd be layering on top which presents one more opportunity for fitting too tightly to the data. Maybe its good to give the user options if they want to use it, but from my own experience, optimizing fitness functions doesn't lead to better results after the WF.

Quote: Originally posted by admin  

As for your idea. Normally we have 10 periods of data to WF. (not 20)
If we did your approach, would it make sense to have GSB pick say 10 chunks of data, but randomize the order of the 10 chunks, and then plot x times the
x equity curves on the same chart? This get problematic if we are not day trading, and the gaps between the data splices are going to screw the indicators.


I don't think applying the idea I suggested to the walk-forward OOS segments adds much value. I'd have to think about this more tbh ... I haven't tried applying this to the OOS segments of a WF before. I was suggesting it more in the context of the training data. Instead of training on one contiguous block of data, I was suggesting training on multiple randomly chosen blocks of data. Under this scenario, the actual indicator values are calculated using all data (not just the randomly chosen training data blocks), but only trades taken during those randomly selected blocks and considered when evluating the training data performance.

admin - 25-6-2017 at 05:19 PM

Ive found that a system tend often to gravitate to one fitness, but what it is varies. The final results however is often the same regardless of the fitness.
It will be an option, not something users must use. If we get solid parameter stability very early with one fitness - then thats what I want to use.
Yes you can argue that its another form of curve fitting, but its still valid and worth doing. Im going to think on your wf ideas when we get to improve the current wf.
That's a month or two away is my guess. TS<> GSB, universal data importers and a surprise big feature should be in the next 2 major builds.

Mysterious halts

Gregorian - 3-7-2017 at 09:14 PM

I usually set Restarts to 300 so that GSB will run overnight generating strategies. More often than not, over the past several releases, GSB will mysteriously stop, anywhere from 10 seconds in to many hours in, with anywhere from no to 44 of the 300 runs done. No errors displayed; it just stops running, per the Status display. Might this be something I have configured wrong? Not enough RAM? I have 16 GB, but MC chews up a lot of that, so I recently ordered another 16 GB.

admin - 3-7-2017 at 09:24 PM

16 gb could be tight with all the other stuff in the os. I have 32 on my main machine and it struggles to run 2 GSB for very long periods. It does have a lot of other apps though. Much nicer being on 64 gb so you can run lots of copies with no ram concerns.
Very good move to get more ram. Whats your population set to, and are you on 30 minute bars etc.
When task manager shows ram is 70%+ full, I can get issues. Best you send me a screen shot if your front gui and I will try to duplicate the setup..


taskm.png - 41kB

admin - 4-7-2017 at 10:32 PM

Quote: Originally posted by Gregorian  
I usually set Restarts to 300 so that GSB will run overnight generating strategies. More often than not, over the past several releases, GSB will mysteriously stop, anywhere from 10 seconds in to many hours in, with anywhere from no to 44 of the 300 runs done. No errors displayed; it just stops running, per the Status display. Might this be something I have configured wrong? Not enough RAM? I have 16 GB, but MC chews up a lot of that, so I recently ordered another 16 GB.


I have run GSB for > 24 hours, and no sign of this.
Most likely you are too low on ram

restarts.png - 85kB

admin - 6-7-2017 at 05:38 AM

I have spent the day on the TS <>GSB issue. I'm now seeing that TS is giving us issues.
In the normalization ts function "GSB" eld
Highest & highestffc & lowest are at times giving the wrong results.
Ive made a function using maxlist and minlist that is perfect.
However when I put these functions into the ts gsb function, they don't work.
Basically HighestMaxlist(price,x ) returns price, not highest(price,x)
If I remove the gsb function and put all the code into the gsb trading system, it works. (ie no functions)
Anyone experts in EL got any ideas?

Inputs:
snPrice(NumericSeries),
iiLength(NumericSimple);

Variables:
hst(0);

hst=snprice;
For Value3 = 1 To iiLength-1 Begin
hst=maxlist(hst,snprice[value3]);
End;

gsb_HighestFFCMaxlist = hst;





function.png - 51kB gsb.png - 128kB strat.png - 86kB

 Pages:  1    3  ..  25