02-05-2018, 02:13 AM
(02-04-2018, 03:09 PM)tommiehansen Wrote: 1. Already implemented and tested. Did not improve performance but in all tests made the performance worse so it was removed.
Also implemented a 'take profit' but this was also removed since it also didn't do anything except worsen the performance.
What ended up happening was basically this:
a. Buy
b. It was a bad buy (stoploss was met) so SELL
...
c. But RSI is even lower now so BUY again = better performance
--OR--
d. Do nothing and miss the opportunity = worse performance
Often it was the D-condition that happend which is suboptimal since it just ends up resulting in a lot of missed opportunities.
It might differ if one tests with 1-minute candles though, but testing is glacially slow so don't have time to test everything.
I created a generic function for stoploss though:
Code:/* STOPLOSS */
stoploss: function( maxDiff, cur, old )
{
let diff = ((cur/old)-1) * 100;
diff = diff.toFixed(2),
ret = false;
if( maxDiff >= diff )
{
ret = true;
let str = 'Stoploss hit! Stoploss @ ' + maxDiff + '% Current diff: ' + diff + '%';
log.debug(str);
}
return ret;
},
It just returns TRUE or FALSE if condition is met.
One would have to set a param to save 'old' (what price one bought at) as well etc.
Do also note that the strategy already has a stoploss of sorts due to the switching of trends. If BULL buys @ RSI 50 and BEAR sells at RSI 50 the BEAR-trend will basically act as a stoploss (which is part of the idea). So that thing already works as intended.
2. I do not know, this just go long and short. This is more of a genereal Gekko-question?
ok looks interesting.. I was just thinking about minimising the Loss trades... so it could never be a loss more than 5%, but I understand what you say...
about the 2. Question... that will be very interesting... any one from Gekko interested to answer?