Machine learning in trading: theory, models, practice and algo-trading - page 2183

 
Aleksey Vyazmikin:

Good thinking - I'm already using it :)

The question here is what points to use to build the channel, and what information to take for predictors.

how is it possible? you use it, but you don't know what points you use? and you don't know what signs you use either? how come?)

I may be even younger than you ...

 
mytarmailS:

How is it possible? You use it, but you don't know what points you use and you don't know what signs you use either? How can this be?)

and stop telling me, i may be younger than you...

Well, I have ideas and implementation - as long as not everything that was conceived. One of the unrealized ideas is to build on ZZ, of course. I can see how well the channel works on large TFs.

Signs that there is now - actually an insider:

struct RA
{
   datetime          Time;//Время последней записи
   double            HL;//Цена начала построения верхнего уровня канала
   double            ML;//Цена начала построения среднего уровня канала
   double            LL;//Цена начала построения нижнего уровня канала
   double            HL_F;//Цена на конец дня для построения верхнего уровня канала
   double            ML_F;//Цена на конец дня для построения среднего уровня канала
   double            LL_F;//Цена на конец дня для построения нижнего уровня канала
   double            K_SKO;//Коэффициент СКО
   int               H_Time_01_HL;//Время в барах, с начала дня, фиксирующее первое касание верхнего уровня
   int               H_Time_01_ML;//Время в барах, с начала дня, фиксирующее первое касание среднего уровня
   int               H_Time_01_LL;//Время в барах, с начала дня, фиксирующее первое касание нижнего уровня
   int               H_Time_02_HL;//Время в барах, с начала дня, фиксирующее последнее касание верхнего уровня
   int               H_Time_02_ML;//Время в барах, с начала дня, фиксирующее последнее касание среднего уровня
   int               H_Time_02_LL;//Время в барах, с начала дня, фиксирующее последнее касание нижнего уровня
   int               N_P_HL;//Число касаний с окном верхней границы канала
   int               N_P_ML;//Число касаний с окном средней границы канала
   int               N_P_LL;//Число касаний с окном нижней границы канала
   double            Proc_L1;//Процент баров, закрывшихся выше верхней границы канала
   double            Proc_L2;//Процент баров, закрывшихся выше средней границы канала
   double            Proc_L3;//Процент баров, закрывшихся ниже средней границы канала
   double            Proc_L4;//Процент баров, закрывшихся ниже нижней границы канала
   double            Proc_ch_Max_Day;//Процент вписывания в канал при максимальной цене за день
   double            Proc_ch_Min_Day;//Процент вписывания в канал при минимальной цене за день
   double            Proc_Price_Close;//Положение цены в процентах относительно канала регрессии
   int               N_ch_Bar_Max_P;//Номер бара максимальной цены
   int               N_ch_Bar_Min_P;//Номер бара минимальной цены
   double            arr_0_Proc_Point_HL;//Отношение начала верхнего уровня канала N к цене открытия текущего дня
   double            arr_0_Proc_Point_ML;//Отношение начала среднего уровня канала N к цене открытия текущего дня
   double            arr_0_Proc_Point_LL;//Отношение начала нижнего уровня канала N к цене открытия текущего дня
   double            arr_0_Proc_Point_HL_F;//Отношение конца нижнего уровня канала N к цене открытия текущего дня
   double            arr_0_Proc_Point_ML_F;//Отношение конца среднего уровня канала N к цене открытия текущего дня
   double            arr_0_Proc_Point_LL_F;//Отношение конца нижнего уровня канала N к цене открытия текущего дня
   int               arr_0_HL_N_Per;//Число касаний с окном верхней границы канала (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_ML_N_Per;//Число касаний с окном средней границы канала (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_LL_N_Per;//Число касаний с окном нижней границы канала (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_N_H_Time_01_HL;//Время в барах, с начала дня, фиксирующее первое касание верхнего уровня (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_N_H_Time_01_ML;//Время в барах, с начала дня, фиксирующее первое касание среднего уровня (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_N_H_Time_01_LL;//Время в барах, с начала дня, фиксирующее первое касание нижнего уровня (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_N_H_Time_02_HL;//Время в барах, с начала дня, фиксирующее последнее касание верхнего уровня (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_N_H_Time_02_ML;//Время в барах, с начала дня, фиксирующее последнее касание среднего уровня (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_N_H_Time_02_LL;//Время в барах, с начала дня, фиксирующее последнее касание нижнего уровня (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   double            arr_0_Calc_Proc_Price_Close;//Положение цены в процентах относительно канала регрессии (прошлой цены окончания канала, цена начала канала, цена окончания канала)
   int               arr_0_Index_Ekstr_HL;//Индекс бара на котором был достигнут максимум или минимум в зависимости от вектора движения после контакта с уровнем
   int               arr_0_Index_Ekstr_ML;//Индекс бара на котором был достигнут максимум или минимум в зависимости от вектора движения после контакта с уровнем
   int               arr_0_Index_Ekstr_LL;//Индекс бара на котором был достигнут максимум или минимум в зависимости от вектора движения после контакта с уровнем
   int               arr_0_Index_Delta_HL;//Дельта между последним касанием и экстремумом - верхний уровень
   int               arr_0_Index_Delta_ML;//Дельта между последним касанием и экстремумом - средний уровень
   int               arr_0_Index_Delta_LL;//Дельта между последним касанием и экстремумом - нижний уровень
   int               arr_0_Index_DeltaS_HL;//Число баров с открытия дня до последнего экстремума после касания верхнего уровня
   int               arr_0_Index_DeltaS_ML;//Число баров с открытия дня до последнего экстремума после касания среднего уровня
   int               arr_0_Index_DeltaS_LL;//Число баров с открытия дня до последнего экстремума после касания нижнего уровня
   double            arr_0_Price_Proc_Ekstr_HL;//Цена экстремума в процентах канала - верхний уровень
   double            arr_0_Price_Proc_Ekstr_ML;//Цена экстремума в процентах канала - средний уровень
   double            arr_0_Price_Proc_Ekstr_LL;//Цена экстремума в процентах канала - нижний уровень
   double            arr_0_Price_Point_Ekstr_HL;//Цена экстремума в пунктах канала - верхний уровень
   double            arr_0_Price_Point_Ekstr_ML;//Цена экстремума в пунктах канала - средний уровень
   double            arr_0_Price_Point_Ekstr_LL;//Цена экстремума в пунктах канала - нижний уровень
   int               N_Bar_Calc;//Число посчитанных баров
   int               RegressorP_New;//Предикторы от функции RegressorP_New
   int               LastDeyPeresek;//Сколько днея назад пересекался уровень: 0 - верхний, 1 - средний, 2 - нижний
   double            arr_0_iDelyaLvL_HL;//Положение верхней границы канала регрессии в структуре iDelta 3Day
   double            arr_0_iDelyaLvL_ML;//Положение средней границы канала регрессии в структуре iDelta 3Day
   double            arr_0_iDelyaLvL_LL;//Положение нижней границы канала регрессии в структуре iDelta 3Day
};
RA arr_RA[10];

About the Youkaning - no need to be offended - it's a comfortable style of communication for me that doesn't carry a pejorative connotation.

 
Aleksey Vyazmikin:

Well, I have ideas and implementation - not everything that was conceived has been realized yet. One of the unrealized ideas to build - by ZZ of course. I see how well the channel works on large TF.

Signs that there is now - actually an insider:

There's no need to be offended about it - it's a comfortable style of communication for me, which does not carry a pejorative meaning.

I liked the price percentage position. About the same but manually for now. And there are more states than just a channel. But in your case there are more channel parameters, so it may be enough to distinguish different states.
 
Aleksey Vyazmikin:

Well, I have ideas and implementation - not everything that is planned has been realized yet. One of the unrealized ideas to build - by ZZ of course. I see how well the channel works on large TF.

Signs that are there now - actually insider:

seriously...

I have it 100 times easier.

I'm looking at channels as images with the algorithm. It's easier for me now + it may be scaled to different TFs.

 
Aleksey Vyazmikin:

Well, I have ideas and implementation - so far not everything that was conceived has been realized. One of the unrealized ideas to build - by ZZ of course. I see how well the channel works on large TFs.

So, what are the cuts?

 

Who can tell me why the MT5 is not installed in Colab?

command: !pip install MetaTrader5

Gives two errors - Could not find a version that satisfies the requirement MetaTrader5==5.0.33 (from versions: none)

No matching distribution found for MetaTrader5==5.0.33

 
Valeriy Yastremskiy:
I liked the percentage price position. About the same but manually for now. And there are more states than just a channel. But in your case there are more channel parameters, so it may be enough to distinguish different states.

This option is for a channel built for the whole day, and it is used on minutes, and for faster channels it is redundant, I think.

 
Aleksey Vyazmikin:

This option is for a channel built for the whole day, and applied on the minutes, and for faster channels it is redundant, I think.

Here it is different, I look at all standard TF 132 bars. (or 144 as suggested). After 1000 bars it seems to me that the memory of the series is lost. I.e. it is necessary to look at the state of large TFs. I've been working on this for some time, but I've been thinking how to prepare data from different TFs.

 
mytarmailS:

seriously...

Everything with me is 100 times easier.

I look at the channels as images with the algorithm, it's easier for me so far + it's possible to scale to different TFs

Scale with meaning, a small TF is a decoding of a larger one.

 
Aleksey Vyazmikin:

Well, I have ideas and implementation - not everything that was conceived has been realized yet. One of the unrealized ideas to build - by ZZ of course. I see how well the channel works on large TF.

Signs that there is now - actually an insider:

There's no need to be offended about it - it's a comfortable style of communication for me, which does not carry a pejorative meaning.

Is this a topic of the MO series?
Reason: