![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нет, это синхронный объект.
Вроде вы писали, что планируете некие функции для асинхронности в mql.
Может там и событие OnSocket припишется?
Нет, это синхронный объект.
Я тоже поддерживаю наличие обработчика события сокетов чтобы не приходилось по таймеру постоянный опрос делать. Уверен что разработчики могут это реализовать изящнее.
Максим, раз вы занимаетесь Websocket'ами, а вы можете попробовать в вашем проекте подключиться к сокету wss://api.huobi.pro/ws без дополнительных параметров?
Цель - узнать дело в библиотеке которую мы используем в С# или нет.
ИМХО сокет должен открываться в любом случае, так же как и через сайт, без всяких дополнительных параметров.
Максим, раз вы занимаетесь Websocket'ами, а вы можете попробовать в вашем проекте подключиться к сокету wss://api.huobi.pro/ws без дополнительных параметров?
Цель - узнать дело в библиотеке которую мы используем в С# или нет.
ИМХО сокет должен открываться в любом случае, так же как и через сайт, без всяких дополнительных параметров.
Сокет открывается, даже подписка срабатывает
C:\src>tclsh hibou.tcl Socket sock0000000002E8D890 Connected :-)
put json: { "sub": "market.btcusdt.kline.1min", "id": "1122" }
Message binary ▼ «V*ÈÌKW²24µ036µ425657©♣ ´á!▬
Message binary ▼ «VÊLQ²R2442RÒQ*.I,)-♠òó³A¼Ò¤¤TlnbQvj^RIriqJ^vNf^ªanf▲PQ P¹¡© ±©¥©±a- éÝ×kS
Message binary ▼ MÌÍ
à ►♦àwÙ³ëïêÛ´F→ÑÒö►òîM Ð∟g>f6#♦o¯)u~ïq]Χkâ8ç
D♠ïV♫►Rså ·^÷¿òûþ♣¬↨Ã▬È ¹u♀Jû\tÌñ·¹µ▼⌂q^£C-
Message binary ▼ MÌÍ
\?↨Òcºà°Ô´þÇ◄dHy÷F(4Ç↔Â♦▲á5ÇÆï-lëØøSTA[Á²ú¦P¬>«¶fð;¤ñO♀ê3▬ðF↑âh↓\×س%®
CÈ NæZÔNôûß@âq|☺
данные шлют, только это или не GZ озвученный в документации, или ловкие китайцы впендячили ещё и заголовки :-)
надо разбираться с их компрессией, но мне честно лень :-)
PS скрипт который это делает приложил, там строчек всего ничего..такое можно дёргать из 4-ки.
PS скрипт который это делает приложил, там строчек всего ничего..такое можно дёргать из 4-ки.
Большое спасибо! Значит дело в библиотеке C#.
Большое спасибо! Значит дело в библиотеке C#.
не думаю что всё настолько плохо: ей скорее надо опции/настройки подкручивать - во первых hibou соединяется весьма долго, могут таймеры отвалится, во вторых к версиями TLS они требовательны
Большое спасибо! Значит дело в библиотеке C#.
Нет, в самой библиотеке нет проблем. Пришлось потратить время, но раскопал.
Скачал несколько примеров с гитхаба, в том числе и те, на которые указывали, ни в одном из них сокет не заработал. Это еще больше сбило с толку. А причиной оказалось усиление сертификата безопасности на сервере брокера.
Изменяем настройку в экземпляре нашего сокета:
Чуточку корректируем класс Program
такое изменение сделано для того, чтобы сервер не был жестко прописан в библиотеке, а чтобы можно было его из советника задавать
В итоге результат:
Так что в итоге библиотека получилась очень широкоформатной.
Далее прикрутим с Федором вызов котировок.
Появились еще заинтересованные лица на данный пример, так что продолжим улучшение.
Круто! Заработало! Большое спасибо, Алексей!
Я попробовал применить библиотеку к МТ4, файл советника компилится без ошибок,
но когда я его прикрепляю к графику получая ошибку "Global initialization failed" если использую метод который возвращает простой тип.
а если пытаюсь получить структуру, то Invalid ex4 file (8)
Может будет работать если выкинуть все структуры
или нужно делать шаманство с IL или com-портами
Я попробовал применить библиотеку к МТ4, файл советника компилится без ошибок,
но когда я его прикрепляю к графику получая ошибку "Global initialization failed" если использую метод который возвращает простой тип.
а если пытаюсь получить структуру, то Invalid ex4 file (8)
Может будет работать если выкинуть все структуры
прикручивание C# к 4-ке это отдельная печальная песня, выше по треду про это писали.
к 5-ке просто, там шарп у него внутри, иначе string нельзя было-бы возвращать из dll