Возможно ли реализовать в MT5 НАДЕЖНЫЙ учет структуры совокупной позиции? - страница 2

 
getch >>:

Еще один способ реализации через высокоуровневый API на MQL5, но снова ненадежно:

nen писал(а) >>

Это неверное утверждение. Сначала надо попробовать MQL5, потом уже говорить о порядке усложнения.

Сложно будет менять наработанную с годами логику процесса программирования. Но программы на MQL5 можно создавать более сложные, чем на MQL4, с меньшеми затратами времени. И возможностей добавилось столько, что сейчас просто трудно представить весь объем новшеств. Полезных новшеств.

-------

Плохо, что придется ВСЕ переписывать с MQL4 на MQL5.

Конечно, можно! Но при портировании MQL4->MQL5 это в большиснтве случаев далеко не так.

nen, прошу сообщить свое видение реализации на MQL5 стратегии, допускающей запуска на одном торговом инструменте нескольких независимых стратегий.

Возьмите любую простецкую стратегию из стандартной поставки MT4 и сделайте ее универсальной (независимой) стратегией.

На MQL4 - это 10 строчек кода и меньше 5 минут работы.

На MQL5 - это ... даже не представить.

Я вижу решение этой проблемы через создание средствами MQL5 более высокого уровня API, чем сам MQL5. В этом API будут реализованы торговые функции с возможностью работы с виртуальными позициями, у которых будут все свойства, какие есть у MT4-позиций. Уверен (пророчество просто), различные версии таких API появятся в CodeBase MQL5, со временем в них будут устраняться ошибки, и все доводиться до идеала. Трейдеры будут просто подключать этот API и тогда решение вышеназванной задачи и подобных будет занимать тоже меньше 5 минут.

Но, к сожалению, это решение все равно будет не надежным, т.к. база данных логических связей виртуальных позиций будет храниться не на торговом сервере.

P.S. Также через это API мощными средствами MQL5 будет создан интерфейс для работы с этими виртуальными позициями руками - аналог MT4.

Вообще-то, мне не вполне понятны траблы по надежности. Просто на вскидку. Советник1 выдает сигнал купить, Советник 2 выдает сигнал м-м-м, не важно, тоже купить. Торговые ф-ии в них заменены на, скажем, ф-ии использующие гл. переменные. Дальше блок учета-торговли формирует совокупную позу и отдает соответствующий приказ. Дожидается подтверждения выполнения. После чего, информирует советники, что их ордера выполнены. Или не выполнены. Т.е. блок учета эмулирует работу сервера МТ4, но по реальному исполнению нетто-приказов. Эмулирует через гл.переменные. Или через лог.файл - надежней по идее.

Т.е. это можно сделать и в МТ4. Возможно, в МТ5 это будет сделать проще - не знаю.

 
kombat писал(а) >>

Спасибо, уважаемый! Вот и проблеме конец, кто участвовал, молодец!

 
Svinozavr >>:

Вообще-то, мне не вполне понятны траблы по надежности. Просто на вскидку. Советник1 выдает сигнал купить, Советник 2 выдает сигнал м-м-м, не важно, тоже купить. Торговые ф-ии в них заменены на, скажем, ф-ии использующие гл. переменные. Дальше блок учета-торговли формирует совокупную позу и отдает соответствующий приказ. Дожидается подтверждения выполнения. После чего, информирует советники, что их ордера выполнены. Или не выполнены. Т.е. блок учета эмулирует работу сервера МТ4, но по реальному исполнению нетто-приказов. Эмулирует через гл.переменные. Или через лог.файл - надежней по идее.

Т.е. это можно сделать и в МТ4. Возможно, в МТ5 это будет сделать проще - не знаю.

Совершенно верно, это можно и сделано многими на MQL4 под NFA-брокеров. Также можно сделать и на MQL5. Но надежности в этом не будет, т.к. все логические связи у вас будут храниться на локальной машине, которая подвержена любым техническим неприятностям. Если бы база логических связей хранилась на торговом сервере и могла изменяться им же, то надежность была бы 100%, как это сделано на не NFA-MT4.

Наличие мэджиков и комментов в MQL5 совершенно не решает проблему надежности. У вас упал комп, где крутились системы. Вы хотите подключиться к счету на другом компе и продолжить там работу своих советников. Но они не смогут в MT5 подхватить инфу. Только если анализировать историю FILLED-ордеров, но это не надежно.

 
getch >>:

Совершенно верно, это можно и сделано многими на MQL4 под NFA-брокеров. Также можно сделать и на MQL5. Но надежности в этом не будет, т.к. все логические связи у вас будут храниться на локальной машине, которая подвержена любым техническим неприятностям. Если бы база логических связей хранилась на торговом сервере и могла изменяться им же, то надежность была бы 100%, как это сделано на не NFA-MT4.

Наличие мэджиков и комментов в MQL5 совершенно не решает проблему надежности. У вас упал комп, где крутились системы. Вы хотите подключиться к счету на другом компе и продолжить там работу своих советников. Но они не смогут в MT5 подхватить инфу. Только если анализировать историю FILLED-ордеров, но это не надежно.

Можно в комментариях к ордерам хранить нужную для внутреннего учета информацию. Они-то на сервере лежат.

===

Нет. Не во всех случаях - для этого ордер должен быть открыт.

 
Svinozavr >>:

Можно в комментариях к ордерам хранить нужную для внутреннего учета информацию. Они-то на сервере лежат.

Ненадежно. Контрпример самому не трудно придумать.

 
getch >>:

Ненадежно. Пример самому не трудно придумать.

Если ордер открыт, то это также надежно, как и в случае учета на МТ4. Другое дело, что нетто не всегда будет открыто-модифицировано. Да не важно это!

Ну, слетела машина. Потеряна внутренняя история. Дальше так или иначе советники запускаются по новой. Баланс, позиция доступны. Советники принимают решения по доступной информации. И все.

 
getch >>:
Удивительно, что MT5 вызывает одни восхищения, при этом не позволяя надежно делать элементарные вещи.

Ну а как не восхищатся то???

Мощща такая шо жуть!

мне ужо например 511 символов не хватает в коменте шоб

выводить всё что можно выдернуть из маркетинфо...


А насчёт локодрочиловки на основе написаного специально комплекса на мкл5.

... ну как бы это помягче... уж лучше пусть совсем ничего чем такое...

Воспризвести "как было в 4-ке" не получится!!! таково моё мнение, и менять его пока не собираюсь.

 

Спасибо Integer сто лет не слышал как поёт СерьГа :о)

А нужно то было прочесть стих, открыть папку Music\СерьГа и жизнь удалась.

 
))) Да мне это тоже ни нафиг не надь. Просто идея. Я-то изначально без локов.
 
Вы торговали руками и у вас стоял советник, который локально запоминает структуру совокупной позиции, чтобы трогать только свою часть. Комп слетел. Вы запускаете на другом компе ( логической связи теперь нет) тот же советник. Как он учтет свою текущую часть совокупной позиции? Представьте еще, что до слета компа советник выставил несколько отложек, некоторые исполнились после слета, но до рестарта.
Причина обращения: