Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 2000

 
Evgeniy Chumakov:

А где X[,3]  и т.д.? 

нету, потому что их не надо..

Evgeniy Chumakov:

  Не понимаю X[,1] == X[,1]  смысл? 

нужно, объяснять долго

Evgeniy Chumakov:

  Для прогноза нужно пройти по последним 10 значением

да

 
mytarmailS:

гугл врет ! я так и знал, пиндосы )))


Ты когда пандас запускаешь или любую другую библу, тебе же не надо в IDE держать 10 открытых скриптов с функциями к нему, вот это мне и надо

это пакеты

создай в папке пустой файл __init__.py и наслаждайся

 
[16,] "X[,8]>-0.03370967745 & X[,9]<=-0.00120967745 & X[,10]>-0.00596774195 & X[,10]<=0.0229032258"

Понял, в общем если array[x3] > - 0.03370967745 и array[x4] <= -0.00120967745 то [16]  и т.д.

 
Maxim Dmitrievsky:

это пакеты

создай в папке пустой файл __init__.py и наслаждайся

ок , попробую

 
Evgeniy Chumakov:

Понял, в общем если array[x3] > - 0.03370967745 и array[x4] <= -0.00120967745 то [16]  и т.д.

я не знаю синтаксиса мт4, я не уверен что понимаю что ты написал

 
mytarmailS:

я не знаю синтаксиса мт4, я не уверен что понимаю что ты написал

скажем так , если твой array с значениями называется   "х", и ты прогнозируешь   i-тый  элемент 

то   X[,10]  для тебя это    x[i-1]

а     X[,1]   для тебя это  x[i-10]

а прогнозируем  - x[i]


вот статистика по правилам и их ошибке

      len freq                  err                 
 [1,] "2" "0.258200032315398"   "0"                 
 [2,] "3" "0.168363225076749"   "0"                 
 [3,] "1" "0.0980772338019066"  "0"                 
 [4,] "1" "0.0929067700759412"  "0"                 
 [5,] "3" "0.0575214089513653"  "0"                 
 [6,] "4" "0.0571982549684925"  "0"                 
 [7,] "3" "0.0542898691226369"  "0"                 
 [8,] "2" "0.0525125222168363"  "0"                 
 [9,] "2" "0.0313459363386654"  "0"                 
[10,] "3" "0.0274680885441913"  "0"                 
[11,] "2" "0.025044433672645"   "0"                 
[12,] "3" "0.015026660203587"   "0"                 
[13,] "2" "0.0124414283406043"  "0"                 
[14,] "3" "0.010017773469058"   "0"                 
[15,] "5" "0.0122798513491679"  "0.0131578947368421"
[16,] "4" "0.0103409274519308"  "0.1875"            
[17,] "1" "0.0122798513491679"  "0.236842105263158" 
[18,] "1" "0.00468573275165616" "0.482758620689655" 


в принципе 16, 17, 18  правило можно попробовать не учитывать

 
mytarmailS:

скажем так , если твой array с значениями называется   "х", и ты прогнозируешь   i-тый  элемент 

то   X[,10]  для тебя это    x[i-1]

а     X[,1]   для тебя это  x[i-10]

а прогнозируем  - x[i]

 

x[i], x[1], x[2],x[3] - такая последовательность.

поэтому X[,10]  скорее это    x[i+1] ,  если минус то в будущее .   

 
Evgeniy Chumakov:

 

x[i], x[1], x[2],x[3] - такая последовательность.

поэтому X[,10]  скорее это    x[i+1] ,  если минус то в будущее .   

Ааа, ну тогда забудь что я написал,  у меня в языке   i+1 это будущее


тогда ориентируйся на эту картинку

 
Машинное обучение в трейдинге: теория, практика, торговля и не только
Машинное обучение в трейдинге: теория, практика, торговля и не только
  • 2020.09.08
  • www.mql5.com
Добрый день всем, Знаю, что есть на форуме энтузиасты machine learning и статистики...
 
mytarmailS:

Ааа, ну тогда забудь что я написал,  у меня в языке   i+1 это будущее


тогда ориентируйся на эту картинку

 


Да уже понял.  X[,10] это 1 , x[,1] это 10 .

 
int ForecastSum = 0;

int ForecastStart = 1;

if(X[ForecastStart] <= -0.025 && X[ForecastStart] > -0.08201612905){ForecastSum++;}
if(X[ForecastStart + 1] > -0.057983871 && X[ForecastStart + 1] <= -0.01129032255 && X[ForecastStart] > 0.0219354839){ForecastSum--;}
if(X[ForecastStart + 1] <= -0.057983871){ForecastSum++;}
if(X[ForecastStart + 1] > 0.0702419355){ForecastSum--;}
if(X[ForecastStart + 2] > 0.01362903225 && X[ForecastStart + 2] <= 0.0564516129 && X[ForecastStart + 1] > 0.00153225805){ForecastSum--;}
if(X[ForecastStart + 2] <= 0.0564516129 && X[ForecastStart + 2] > -0.01153225805 && X[ForecastStart + 1] <= 0.0040322581 && X[ForecastStart] <= -0.00596774195){ForecastSum--;}
if(X[ForecastStart + 2] > -0.03370967745 && X[ForecastStart + 2] <= -0.00403225805 && X[ForecastStart] > 0.00032258065){ForecastSum++;}
if(X[ForecastStart + 2] <= -0.03370967745 && X[ForecastStart] > 0.02814516125){ForecastSum--;}
if(X[ForecastStart + 3] > -0.025 && X[ForecastStart + 3] <= -0.00403225805 && X[ForecastStart + 2] > -0.03370967745){ForecastSum++;}
if(X[ForecastStart + 2] > -0.0266935484 && X[ForecastStart + 2] <= -0.025){ForecastSum--;}
if(X[ForecastStart + 1] > 0.0091129032 && X[ForecastStart + 1] <= 0.0277419355 && X[ForecastStart] <= -0.00096774195){ForecastSum++;}
if(X[ForecastStart + 1] <= 0.0564516129 && X[ForecastStart + 1] > 0.03935483875){ForecastSum++;}
if(X[ForecastStart + 2] > 0.02346774195 && X[ForecastStart + 1] > -0.057983871 && X[ForecastStart + 1] <= -0.0212903226){ForecastSum--;}
if(X[ForecastStart + 2] > -0.03370967745 && X[ForecastStart + 2] <= 0.0233870968 && X[ForecastStart + 1] <= 0.0233870968 && X[ForecastStart] > 0.0091129032 && X[ForecastStart] <= 0.02766129035){ForecastSum++;}
if(X[ForecastStart + 2] > -0.03370967745 && X[ForecastStart + 1] <= -0.00120967745 && X[ForecastStart] > -0.00596774195 && X[ForecastStart] <= 0.0229032258){ForecastSum++;}
if(X[ForecastStart] > 0.0012903226){ForecastSum--;}
if(X[ForecastStart + 9] == X[ForecastStart + 9]){ForecastSum++;}

Сделал так,  прогнал по массиву с данными фигня получилась 50/50 . 

У Максима картинка круче была.

Причина обращения: