Проблема с коннектором МТ4


Проблема с коннектором МТ4
Atom Reply
11/21/2018


1. У меня windows10, МТ4 от Альпари, советника пришлось разместить по адресу C:\Program Files (x86)\Alpari MT4\MQL4\Experts\
Всю апи 4.4.14 разместил C:\Program Files (x86)\Alpari MT4\MQL4\Experts\StockSharp
2. в логе советника (C:\Program Files (x86)\Alpari MT4\MQL4\Experts\Data\Log\2018_11_20\MqlServer.txt) ошибка:
21:39:33.111| |MqlServer |StockSharp.MT4 v4.4.14.0
21:39:34.385| |MqlServer |MQL.START
21:39:34.386| |MqlServer |Commander started
21:39:34.389| |MqlServer |=> Commander.Parser
21:39:34.456|Error |MqlServer |System.MissingMethodException: Метод не найден: "StockSharp.Algo.IRemoteAuthorization StockSharp.Fix.FixServer.get_Authorization()".
в #=zPTGTJ402waqzfDDqXX3FUxQ=.#=zZvuNQT0=(String #=zPu9HbRQ=, String #=z4ig2G_4=)
в StockSharp.MT4.Exports.#=zYeDVzeib0hci(InitParams #=zc6QE4ng=)
в StockSharp.MT4.Exports.StartConnector(InitParams* args, Char* ptr)
21:39:34.457|Error |MqlServer |INIT ERROR: Метод не найден: "StockSharp.Algo.IRemoteAuthorization StockSharp.Fix.FixServer.get_Authorization()".

Помогите, пожалуйста?

Tags:


Thanks:




30 Answers
1 2  >
Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 11/21/2018
Reply


Здравствуйте,

Скачайте, пожалуйста, ночную сборку S#.API.
Thanks: ghost-mo

ghost-mo

Avatar
Training Donator
Date: 4/8/2019
Reply


Добрый день.
Не знаю как лучше сюда или в новую тему.

Использую ночную сборку пример \SampleFix (и свой вариант) и MT_4.4.17.zip, и windows10, МТ4 от Альпари.

при попытке отобразить ордерлог (или в своем варианте построить свечки выдается ошибка (загрузка истории работает)):
2019/04/08 18:44:18.842|Error |BasketMessageAdapter|System.InvalidOperationException: Не найден подходящий адаптер для MarketData,T(L)=2019/04/08 18:44:18.781,Sec=S#:EURRUB@FX RUB, Native:,Type:,Name=EURRUB,Price=0.001,Vol=0.01,Dec=3,Cur=EUR,Sec=S#:EURRUB@FX RUB, Native:,Type:,Type=OrderLog,IsSubscribe=True,Arg=,TransId=67437060,OrigId=0,SmallTF=True.
в StockSharp.Algo.BasketMessageAdapter.GetSubscriptionAdapters(MarketDataMessage mdMsg) в E:\Users\Ghost-mo\Desktop\проджекты\Сергей\StockSharp-master\Algo\BasketMessageAdapter.cs:строка 735
в StockSharp.Algo.BasketMessageAdapter.ProcessMarketDataRequest(MarketDataMessage mdMsg) в E:\Users\Ghost-mo\Desktop\проджекты\Сергей\StockSharp-master\Algo\BasketMessageAdapter.cs:строка 799
в StockSharp.Algo.BasketMessageAdapter.OnSendInMessage(Message message) в E:\Users\Ghost-mo\Desktop\проджекты\Сергей\StockSharp-master\Algo\BasketMessageAdapter.cs:строка 505
в StockSharp.Messages.MessageAdapter.SendInMessage(Message message) в E:\Users\Ghost-mo\Desktop\проджекты\Сергей\StockSharp-master\Messages\MessageAdapter.cs:строка 394
2019/04/08 18:44:18.828|Error |FixTrader |Инструмент EURRUB@FX RUB не может подписаться на OrderLog. Ошибка'Не найден подходящий адаптер для MarketData,T(L)=2019/04/08 18:44:18.781,Sec=S#:EURRUB@FX RUB, Native:,Type:,Name=EURRUB,Price=0.001,Vol=0.01,Dec=3,Cur=EUR,Sec=S#:EURRUB@FX RUB, Native:,Type:,Type=OrderLog,IsSubscribe=True,Arg=,TransId=67437060,OrigId=0,SmallTF=True.'.


P.S. Генератор лицензий не работает.
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/9/2019
Reply


Предположу, что дело в том, что MT4 не имеет лога заявок.
Thanks: ghost-mo

ghost-mo

Avatar
Training Donator
Date: 4/9/2019
Reply


Mikhail Sukhov Перейти
Предположу, что дело в том, что MT4 не имеет лога заявок.


ок.
Я тоже так предположил и решил строить свечи:
BuildCandlesMode =MarketDataBuildModes.Build,
BuildCandlesFrom = MarketDataTypes.Trades

Так же работать должно? даже если ордер лог нету, как то же свечи построить можно?
+ исторические свечи грузятся.
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/9/2019
Reply


ghost-mo Перейти
Mikhail Sukhov Перейти
Предположу, что дело в том, что MT4 не имеет лога заявок.


ок.
Я тоже так предположил и решил строить свечи:
BuildCandlesMode =MarketDataBuildModes.Build,
BuildCandlesFrom = MarketDataTypes.Trades

Так же работать должно? даже если ордер лог нету, как то же свечи построить можно?
+ исторические свечи грузятся.


Предположу, что через Level1. Тики так же отсутствуют в MT4.
Thanks: ghost-mo

ghost-mo

Avatar
Training Donator
Date: 4/9/2019
Reply


Круто.
Ошибки теперь нет, но правда и данных нет(..
Спасибо большое, что помогаете.
А то ж инструкций нету, что как, тяжко..
Topic starter
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/10/2019
Reply


И еще раз добрый день.
Подскажите пожалуйста примером, как через коннектор МТ4 получить свечи.
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/10/2019
Reply


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

ghost-mo

Avatar
Training Donator
Date: 4/10/2019
Reply


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


Ну любой пример явно не подойдет, т.к. лога заявок нету, тиков нету, свечек нету.
SampleFIX у меня при попытке отобразить свечи, пишет ошибки приведу в файле
FixTrader.txt 8.4KB (2)
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/10/2019
Reply


Сам пример универсален, но свечи выбираются в окне с инструментами. Там есть выпадающий ТФ список для выбора.
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/11/2019
Reply


Mikhail Sukhov Перейти
Сам пример универсален, но свечи выбираются в окне с инструментами. Там есть выпадающий ТФ список для выбора.


Да, я согласен с тем, что я это не заметил в начале.
Но я выбрал инструмент, выбрал тайм фрэйм, и получил ошибку. (Если тут не удобно смотреть, можно посмотреть в предыдущем сообщении файл)

2019/04/11 00:20:50.879| |FIX |Origin tf: 00:01:00
2019/04/11 00:20:50.971| |FIX |Build tf: Trades->00:01:00
2019/04/11 00:20:50.991| |BasketMessageAdapter|Не найден подходящий адаптер для MarketData,T(L)=2019/04/11 00:20:50.982,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Name=#LITECOIN,Price=0.01,Vol=0.01,Dec=2,Cur=USD,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Type=CandleTimeFrame,IsSubscribe=True,Arg=00:01:00,TransId=1215873,OrigId=0,From=04/04/2019 01:40:50 +03:00,SmallTF=True.
2019/04/11 00:20:51.115|Error |BasketMessageAdapter|System.InvalidOperationException: Не найден подходящий адаптер для MarketData,T(L)=2019/04/11 00:20:50.982,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Name=#LITECOIN,Price=0.01,Vol=0.01,Dec=2,Cur=USD,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Type=CandleTimeFrame,IsSubscribe=True,Arg=00:01:00,TransId=1215873,OrigId=0,From=04/04/2019 01:40:50 +03:00,SmallTF=True.
в StockSharp.Algo.BasketMessageAdapter.GetSubscriptionAdapters(MarketDataMessage mdMsg) в E:\Users\Ghost-mo\Desktop\проджекты\Сергей\StockSharp-master\Algo\BasketMessageAdapter.cs:строка 735
в StockSharp.Algo.BasketMessageAdapter.ProcessMarketDataRequest(MarketDataMessage mdMsg) в E:\Users\Ghost-mo\Desktop\проджекты\Сергей\StockSharp-master\Algo\BasketMessageAdapter.cs:строка 799
в StockSharp.Algo.BasketMessageAdapter.OnSendInMessage(Message message) в E:\Users\Ghost-mo\Desktop\проджекты\Сергей\StockSharp-master\Algo\BasketMessageAdapter.cs:строка 505
в StockSharp.Messages.MessageAdapter.SendInMessage(Message message) в E:\Users\Ghost-mo\Desktop\проджекты\Сергей\StockSharp-master\Messages\MessageAdapter.cs:строка 394
2019/04/11 00:20:51.114|Error |FixTrader |Подписка '#LITECOIN@CRYPTOCURRENCY' на CandleTimeFrame неожоданное закончилась с ошибкой 'Не найден подходящий адаптер для MarketData,T(L)=2019/04/11 00:20:50.982,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Name=#LITECOIN,Price=0.01,Vol=0.01,Dec=2,Cur=USD,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Type=CandleTimeFrame,IsSubscribe=True,Arg=00:01:00,TransId=1215873,OrigId=0,From=04/04/2019 01:40:50 +03:00,SmallTF=True.'.
Topic starter
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/11/2019
Reply


Еще раз вопрос: Как отобразить свечи при работе через МТ4.
Исторические свечи выгружаются, меня интересуют реал тайм. Строить свечи по level1 это бред.
Или у меня что то криво настроено?
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/11/2019
Reply


А в самом МТ есть 1м свечи для данного инструмента?
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/11/2019
Reply


Mikhail Sukhov Перейти
А в самом МТ есть 1м свечи для данного инструмента?


Да, у меня открыто второй график с этим инструментом с этим тайм фреймом.
Или как когда то в квике, надо открыть график правильного таймфрейма и инструмента и к нему прикрепить эксперта?
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/11/2019
Reply


Пришлите пожалуйста лог самого мкл части.
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/11/2019
Reply


И да уточните пожалуйста. Свечи не рисуются для всех инструментов или только для одного?
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/11/2019
Reply


Mikhail Sukhov Перейти
И да уточните пожалуйста. Свечи не рисуются для всех инструментов или только для одного?


Ну за все не рискну сказать, но крипто инструменты не рисуются, не рисуются #AA, фьюч какой то. Я Не нашел какой рисуется.
НА всякий случай уточнение история рисуется. Проблемы с реал таймом.

FixServer.txt 7.4KB (1) MqlServer.txt 11KB (1)
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/12/2019
Reply


По ошибке, которая получается от МТ4, видно, что нет исторических данных. Наверное, в этом причина.
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/12/2019
Reply


Mikhail Sukhov Перейти
По ошибке, которая получается от МТ4, видно, что нет исторических данных. Наверное, в этом причина.


По причине отсутствия исторических свечек, не строятся свечки реалтайм?
Ок, ща запущу без погрузки истории и этой ошибки не будет.
Или тут нюанс что из мт4 нельзя строить свечи, а только заказывать?
Topic starter
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/12/2019
Reply


Mikhail Sukhov Перейти
По ошибке, которая получается от МТ4, видно, что нет исторических данных. Наверное, в этом причина.


А это и есть тех.поддержка? Или есть что то еще?

Я сам разобрался: Если не запрашивать историю, то при попытке отобразить свечку выдается ошибка.
А если прогрузить историю, то свечки отображаются и исторические и реал таймовые.
1. об этом ни где не говорится.
2. это не совсем правильно
3. можно это как то обойти?
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/13/2019
Reply


ghost-mo Перейти
Mikhail Sukhov Перейти
По ошибке, которая получается от МТ4, видно, что нет исторических данных. Наверное, в этом причина.


А это и есть тех.поддержка? Или есть что то еще?

Я сам разобрался: Если не запрашивать историю, то при попытке отобразить свечку выдается ошибка.
А если прогрузить историю, то свечки отображаются и исторические и реал таймовые.
1. об этом ни где не говорится.
2. это не совсем правильно
3. можно это как то обойти?


Тех поддержка пока не обслуживает коннектор, потому что он новый.

Можете как-то подробнее расписать, что именно вы делаете и как? Лучше в примере кодов, которые можно применить к SampleFIX.
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/14/2019
Reply


Mikhail Sukhov Перейти

Тех поддержка пока не обслуживает коннектор, потому что он новый.

Можете как-то подробнее расписать, что именно вы делаете и как? Лучше в примере кодов, которые можно применить к SampleFIX.


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

Конечно. Берем SampleFIX, и например мт4 от Альпари с коннектором.
Подключаемся, открываем окно инструментов, выбираем инструмент, выбираем тайм фрэйм, нажимаем кнопку свечи получаем ошибку:
|BasketMessageAdapter|Не найден подходящий адаптер для MarketData,T(L)=2019/04/11 00:20:50.982,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Name=#LITECOIN,Price=0.01,Vol=0.01,Dec=2,Cur=USD,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Type=CandleTimeFrame,IsSubscribe=True,Arg=00:01:00,TransId=1215873,OrigId=0,From=04/04/2019 01:40:50 +03:00,SmallTF=True.
Закрываем окно графика. Потом идём в МТ4, загружаем историю по этому инструменту, снова нажимаем свечи, и о чудо после прогрузки истории, начинают строиться и реалтаймовые свечи.
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/14/2019
Reply


ghost-mo Перейти
Mikhail Sukhov Перейти

Тех поддержка пока не обслуживает коннектор, потому что он новый.

Можете как-то подробнее расписать, что именно вы делаете и как? Лучше в примере кодов, которые можно применить к SampleFIX.


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

Конечно. Берем SampleFIX, и например мт4 от Альпари с коннектором.
Подключаемся, открываем окно инструментов, выбираем инструмент, выбираем тайм фрэйм, нажимаем кнопку свечи получаем ошибку:
|BasketMessageAdapter|Не найден подходящий адаптер для MarketData,T(L)=2019/04/11 00:20:50.982,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Name=#LITECOIN,Price=0.01,Vol=0.01,Dec=2,Cur=USD,Sec=S#:#LITECOIN@CRYPTOCURRENCY, Native:,Type:,Type=CandleTimeFrame,IsSubscribe=True,Arg=00:01:00,TransId=1215873,OrigId=0,From=04/04/2019 01:40:50 +03:00,SmallTF=True.
Закрываем окно графика. Потом идём в МТ4, загружаем историю по этому инструменту, снова нажимаем свечи, и о чудо после прогрузки истории, начинают строиться и реалтаймовые свечи.


МТ коннектор не является коннектором к крипто бирже. Все крипто коннекторы указаны отдельно, и это написано у нас на сайте https://stocksharp.ru/products/pricing/

Ответ был дан здесь https://stocksharp.ru/posts/m/47214/ Возможно, он не понятен, я распишу. Ошибку отсуствия данных генерирует сам МТ. Он не дает данные по разным причинам. Одна из них как у вас - когда свечи не прогрузились в сам терминал. Коннектор подключается к терминалу, и работает через MQL. Данный язык достаточно ограничен в своих возможностях, поэтому все ограничения данного языка являются ограничениями коннектора. Вы не сможете получать данные, пока они не станут доступны в терминале для скриптов. Это ограничение невозможно обойти, так как это недостаток их платформы в целом. Как вариант, если вам нужна история торгов непосредственно с сервера брокера, то можно подключится попробовать напрямую к брокеру, минуя инфрастуктуру МТ. Спросите, предоставляет ли ваш брокер такую возможность. Обычно, это работает через FIX протокол.
Thanks:

ghost-mo

Avatar
Training Donator
Date: 4/14/2019
Reply


Mikhail Sukhov Перейти
....


Суть моего вопроса не в исторических свечках, а в свечках реал тайма.
И Ваш пример сэмпэл фикс не рисует реал таймовые свечи, если не прогрузить историю в МТ4.

Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 4/15/2019
Reply


ghost-mo Перейти
Mikhail Sukhov Перейти
....


Суть моего вопроса не в исторических свечках, а в свечках реал тайма.
И Ваш пример сэмпэл фикс не рисует реал таймовые свечи, если не прогрузить историю в МТ4.



Тогда я вас не понял. Каким образом вы хотите получать реал тайм свечи, если историю не дает терминал? Вы хотите строить свечи из тиковых данных, начиная с момента подписки (без истории)?
Thanks:
1 2  >

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy