вопрос по удвоению лота

 
Здраствуйте, скажите пожалуста какой код нужно вставить чтобы советник после 6 сделок подряд закрытых по профиту переставал торговать? или хотябы подскажите функцию определяющую по профиту или убытку закрылась последняя сделка
 
gmMarat >>:
Здраствуйте, скажите пожалуста какой код нужно вставить чтобы советник после 6 сделок подряд закрытых по профиту переставал торговать? или хотябы подскажите функцию определяющую по профиту или убытку закрылась последняя сделка

сопствено забыл про самое главное ... после каждой профитной сделки должен удваиваться лот....

 
Мартин. Вид сбоку.
 
sayfuji >>:
Мартин. Вид сбоку.

ну это наврядли мартин...просто идея в том, что есть куча советников хорошо работающих в трендах и дающих на них по 6-10 профитных сделок подряд, так что помоему неплохо былоб к ним прикрутить такую траблу...а так как с mql я еще тока начал знакомится...поетому и попросил помочь

 
gmMarat >>:
... подскажите функцию определяющую по профиту или убытку закрылась последняя сделка

Читаете из истории сделок последнюю сделку посредством OrderSelect(..., MODE_HISTORY);

.

Далее если нужно выяснить закрыта позиция в профит или убыток и вычмслить кол-во пунктов профита/убытка

(т.е. в случае закрытия с рынка не по ТП/СЛ):

Анализируете тип закрытой сделки (шорт/лонг) посредством OrderType();

Анализируете профит сделки в пунктах:

для лонга: (OrderClosePrice() - OrderOpenPrice()) / Point;

для шорта: (OrderOpenPrice() - OrderClosePrice()) / Point;

.

Для определения закрытия по ТП/СЛ:

Сравнить цену закрытия сделки с ценой ТП (желательно с некоторым допуском т.к. закрыть могут с проскальзыванием):

if (MathAbs(OrderClosePrice() - OrderStopLoss()) / Point < 4) // Цена закрытия позиции отличается от ТП не более чем на 3п

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