Особенности языка mql5, тонкости и приёмы работы - страница 271

 
Andrey Dik #:
Там в статье используются именно методы оптимизации? Можно ссылку на статью, пожалуйста.

https://www.mql5.com/ru/articles/15223

Да, MinBLEIC использовал.

Эконометрические инструменты для прогнозирования волатильности: Модель GARCH
Эконометрические инструменты для прогнозирования волатильности: Модель GARCH
  • www.mql5.com
В статье дается описание свойств нелинейной модели условной гетероскедастичности(GARCH). На ее основе построен индикатор iGARCH для прогнозирования волатильности на один шаг вперед. Для оценки параметров модели используется библиотека численного анализа ALGLIB.
 
Evgeniy Chernish #:

https://www.mql5.com/ru/articles/15223

Да, MinBLEIC использовал.

Спасибо!

 
Vladimir Simakov #:

Чем хорошо оборачивание в класс - это использование идиомы RAII.

Суть в следующем. При выходе из зоны видимости вызываются деструкторы объектов с локальным временем жизни в порядке обратным их объявлению. Поэтому, в коде:

сначала будет вызван DoSomething, а только потом деструктор ~TSomeClass(). Теоретически, мы можем даже не иметь на руках исходного кода TSomeClass и не знать, что происходит в деструкторе.

Если же сделать так:

, то, гарантированно, сначала вызовется деструктор TSomeClass и только после этого, при выполнении деструктора TScoupe, позовется  DoSomething.

Даже не знаю как реагировать на этот ответ. 

Я не спрашивал о "преимуществах заворачивания в классы". 

Я задавал совсем другой вопрос. 

 
Aleksandr Slavskii #:
Подскажите, вот это без ООП равнозначно тому, что ниже с ООП?  И если не равнозначно, то в чём разница?
По функционированию равнозначно.
 
Sergey Gridnev #:
По функционированию равнозначно.

Спасибо.

 
Воспроизведение ситуации, когда просадка по эквити меньше просадки по балансу.
#include <MT4Orders.mqh> // https://www.mql5.com/ru/code/16006

#define Bid SymbolInfoDouble(_Symbol, SYMBOL_BID)
#define Ask SymbolInfoDouble(_Symbol, SYMBOL_ASK)

void OnTick()
{
  static const bool Init = OrderSend(_Symbol, OP_BUY, 1, Ask, 0, 0, 0) &&
                           OrderSend(_Symbol, OP_SELL, 1, Bid, 0, 0, 0);
}


 
Комментарии, не относящиеся к этой теме, были перенесены в "Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам".
 
fxsaber #:
void OnTick() {   static const bool Init = OrderSend(_Symbol, OP_BUY, 1, Ask, 0, 0, 0) &&                            OrderSend(_Symbol, OP_SELL, 1, Bid, 0, 0, 0); }

Уважаемый  fxsaber, можно поинтересоваться, зачем в конструкции

void OnTick()
{
  static const bool Init = OrderSend(_Symbol, OP_BUY, 1, Ask, 0, 0, 0) &&
                           OrderSend(_Symbol, OP_SELL, 1, Bid, 0, 0, 0);
}

Нужны   static const? 

 
Alexey Volchanskiy #:

Уважаемый  fxsaber, можно поинтересоваться, зачем в конструкции

Нужны   static const? 

static - переменная инициализируется только на первом вызове OnTick.

const - переменная не будет меняться после инициализации. Пишу так для самоконтроля.

 
fxsaber #:

static - переменная инициализируется только на первом вызове OnTick.

const - переменная не будет меняться после инициализации. Пишу так для самоконтроля.

Спасибо, я так и думал. Просто я static и const использую при наследовании классов, вот и спросил.