As the title states, the Global Maximum is not persistent when GA testing with only negative profits as result. Global Maximum is always the last epoch's result:
Epoch number: 31
..
Other metrics:
{ balance: 8008.66585108,
..
Global Maximums:
..
{ balance: 8008.66585108,
but then, some epochs later:
Epoch number: 35
..
Other metrics:
{ balance: 6607.4022642528,
..
Global maximum so far:
{ balance: 6607.4022642528,
So yes, it doesn't make any profits with regards to the endPrice, but losses are still a lot less when your end balance is 8008 instead of 6607. So I would assume the Global Maximum actually shows the global maximum even with negative profits.
My config:
const randomExt = require('random-ext');
const config = {
stratName: 'RSI_BULL_BEAR_ADX',
gekkoConfig: {
watch: {
exchange: 'binance',
currency: 'USDT',
asset: 'BTC'
},
// daterange: 'scan',
daterange: {
from: '2018-04-18 09:00',
to: '2018-06-15 00:00'
},
simulationBalance: {
'asset': 1,
'currency': 1
},
slippage: 0.05,
feeTaker: 0.05,
feeMaker: 0.05,
feeUsing: 'taker', // maker || taker
},
apiUrl: 'http://192.168.190.158:3000',
// Population size, better reduce this for larger data
populationAmt: 20,
// How many completely new units will be added to the population (populationAmt * variation must be a whole number!!)
variation: 0.5,
// How many components maximum to mutate at once
mutateElements: 7,
// How many parallel queries to run at once
parallelqueries: 3,
// Min sharpe to consider in the profitForMinSharpe main objective
minSharpe: 0.5,
// profit || score || profitForMinSharpe
// score = ideas? feedback?
// profit = recommended!
// profitForMinSharpe = same as profit but sharpe will never be lower than minSharpe
// mainObjective: 'profitForMinSharpe',
mainObjective: 'profit',
// optionally recieve and archive new all time high every new all time high
notifications: {
email: {
enabled: false,
receiver: 'destination@some.com',
senderservice: 'gmail',
sender: 'origin@gmail.com',
senderpass: 'password',
},
},
candleValues: [15],
getProperties: () => ({
historySize: 1500,
SMA_long: randomExt.integer(15,5) * 100,
SMA_short: randomExt.integer(70,30),
BULL_RSI: randomExt.integer(15,5),
BULL_RSI_high: randomExt.integer(90,70),
BULL_RSI_low: randomExt.integer(70,40),
BEAR_RSI: randomExt.integer(20,10),
BEAR_RSI_high: randomExt.integer(70,30),
BEAR_RSI_low: randomExt.integer(30,10),
BULL_MOD_high: randomExt.integer(7,3),
BULL_MOD_low: randomExt.integer(-3,-7),
BEAR_MOD_high: randomExt.integer(20,10),
BEAR_MOD_low: randomExt.integer(-3,-7),
ADX: randomExt.integer(5, 2),
ADX_high: randomExt.integer(80, 60),
ADX_low: randomExt.integer(60, 40),
candleSize: randomExt.pick(config.candleValues)
})
};
module.exports = config;
Hi all,
As the title states, the Global Maximum is not persistent when GA testing with only negative profits as result. Global Maximum is always the last epoch's result:
but then, some epochs later:
Full epoch:
So yes, it doesn't make any profits with regards to the endPrice, but losses are still a lot less when your end balance is 8008 instead of 6607. So I would assume the Global Maximum actually shows the global maximum even with negative profits.
My config:
May I assume this is a bug or is this by design?