Gab0 / japonicus

Genetic Algorithm for Gekko Trading Bot.
MIT License
283 stars 103 forks source link

What is supposed to be done? #44

Closed talentoscope closed 6 years ago

talentoscope commented 6 years ago

Great bit of software, thanks developer! Two things: Can a requirement for python>=3.6 be added to the readme? Also, what is supposed to be done with the output after 400 epochs? I ran with the -i option, and at the end was given a load of configuration settings, but what is supposed to be done with them? Do you have any examples please?

Gab0 commented 6 years ago

@xteejx, at the end of the epoches some settings will be printed on the prompt if they are deemed minimally viable by the algorithm. If you see them, paste on gekko/config.js, under correct key. If you don't see them, try some other strats or parameter value limits.

trainerbill commented 6 years ago

@Gab0 I have run it against your PPOTSI example and the default StochRSI strat and only get output similar to below. Can you post what we should be looking for? the ~bP lines don't seem to correspond with any of the input params like persistance/high/low etc. ====== EPOCH 2/400 ====== Locale1 first unevaluated: 12 2 individues removed due to equality [10] ~ bP: -0.564 S: 0.000 nbT:1.000 ~ bP: -234.234 S: 0.165 nbT:27.000 ~ bP: 16.821 S: 0.000 nbT:1.000 ~ bP: -170.009 S: 1.166 nbT:9.500 ~ bP: -11.703 S: 0.000 nbT:1.000 ~ bP: -225.162 S: 0.266 nbT:24.750 ~ bP: -6.929 S: 0.000 nbT:1.000 ~ bP: -1.552 S: 0.000 nbT:1.000 ~ bP: -13.790 S: 0.000 nbT:1.000 ~ bP: -65.895 S: 2.002 nbT:5.750 EPOCH 2 &10 Maximum profit 16.821 Average profit -41.524
Minimum profit -234.234 Profit variation 80.607 Population size 17 Max population size 15
Avg trade number 7.300 Avg sharpe ratio 0.212

Elder dies 0

Locale2 first unevaluated: 9 4 individues removed due to equality [5] ~ bP: -69.157 S: 0.875 nbT:12.750 ~ bP: 1.517 S: 1.323 nbT:3.500 ~ bP: -51.817 S: 1.503 nbT:3.000 ~ bP: -36.305 S: 0.000 nbT:1.000 ~ bP: -30.869 S: 0.000 nbT:1.000 EPOCH 2 &5 Maximum profit 1.517 Average profit -12.970
Minimum profit -69.157 Profit variation 21.105 Population size 16 Max population size 15
Avg trade number 4.250 Avg sharpe ratio 0.314

Elder dies 0

Epoch runs in 14.45 seconds;

Gab0 commented 6 years ago

hello @trainerbill, currently the GA only outputs settings at the end of all epoches. You could set nb_epoch to lower numbers like 50 to get results faster. Those ~bP lines are evaluation score for each individue being evaluated on current epoch, mostly for debugging purposes. Im finishing a nicer interface, available soon ;d

trainerbill commented 6 years ago

@Gab0 even at the end of the run it really just says strategy fails. I would like to know what parameters it tried throughout the course of the run so that maybe I can limit the range a bit more... or at least see what it was trying. Here is all I am seeing:

Strategy Fails.

Selecting 1+4 individues, random test;
4 selected;
1 selected;
Testing monthly profit -43.110   nbTrades: 1.0
Testing monthly profit -10.296   nbTrades: 1.0
Testing monthly profit 4.993     nbTrades: 1.0
Testing monthly profit -9.347    nbTrades: 1.0
Testing monthly profit -18.758   nbTrades: 1.0
Testing monthly profit 0.139     nbTrades: 1.0
Testing monthly profit -29.259   nbTrades: 1.0
Testing monthly profit 2.165     nbTrades: 1.0
Testing monthly profit 14.218    nbTrades: 1.0
Testing monthly profit 2.743     nbTrades: 1.0
Testing monthly profit -9.792    nbTrades: 1.0
Testing monthly profit 35.560    nbTrades: 1.0
Annual profit -59.016%
Testing Strategy:

Strategy Fails.

        .RUN ENDS.
Running took 158 seconds.
Gab0 commented 6 years ago

Yeah @trainerbill, thats a bit disappointing... I'm testing a better visualization method.. should be online in a few mins ;d