А в чем прикол группы базовых и вспомогательных классов технических индикаторов и таймсерий ?

 

Вот раньше мы брали цены открытия с массива который создавал терминал, а сейчас создаем массив который уже создан, для  чего  это?

 

#include <Indicators\TimeSeries.mqh>

int OnInit()
{
CLowBuffer cb;
cb.SetSymbolPeriod(_Symbol,PERIOD_H4);
}

void OnTick()
{
cb.Refresh();
}


 

 
yerlan Imangeldinov:
это только предположение, но ... одно из замечательных свойств ООП - инкапсуляция, изолирование определенной логики внутри одного класса
таким образом, интерфейс для трейдера всегда остается одинаковым, а реализацию можно менять и код, написанный трейдером будет совместим с предыдущими версиями
то есть, используя классы, можно избежать ситуации как при переходе между МТ4 и МТ5 когда толпа ноющих трейдунов не в состоянии переписать сусшествующие скрипты из-за слишком больших отличий

есть класс = нет различий между MQL4 / MQL5 / MQL6
 
Andy Sanders:
это только предположение, но ... одно из замечательных свойств ООП - инкапсуляция, изолирование определенной логики внутри одного класса
таким образом, интерфейс для трейдера всегда остается одинаковым, а реализацию можно менять и код, написанный трейдером будет совместим с предыдущими версиями
то есть, используя классы, можно избежать ситуации как при переходе между МТ4 и МТ5 когда толпа ноющих трейдунов не в состоянии переписать сусшествующие скрипты из-за слишком больших отличий

есть класс = нет различий между MQL4 / MQL5 / MQL6
Буфер или массив он и в Африке буфер. Строение массива принципиально не изменить.
 
yerlan Imangeldinov:

Вот раньше мы брали цены открытия с массива который создавал терминал, а сейчас создаем массив который уже создан, для  чего  это? 

Ну, так не создавайте, берите тот, который создал терминал...

 
yerlan Imangeldinov:

Вот раньше мы брали цены открытия с массива который создавал терминал, а сейчас создаем массив который уже создан, для  чего  это?

 

#include <Indicators\TimeSeries.mqh>

int OnInit()
{
CLowBuffer cb;
cb.SetSymbolPeriod(_Symbol,PERIOD_H4);
}

void OnTick()
{
cb.Refresh();
}


 

Этот код не будет работать, так как cb является локальной переменной и при выходе из OnInit она будет уничтожена. Это даже компилироваться не должно. Вопросы у вас...
 
Alexey Volchanskiy:
Этот код не будет работать, так как cb является локальной переменной и при выходе из OnInit она будет уничтожена. Это даже компилироваться не должно. Вопросы у вас...
Да так и есть, что то я не заметил.