C# для CTrader

Программирование прибыли: от азов к секретам мастерства. Читайте, спрашивайте, делитесь опытом.
Бонус за сообщение 0.5$
Ответственный Модератор - Haos

C# для CTrader

Сообщение Haos » 23 сен 2018, 07:09

Постепенно робо-трейдер может понять, что МТ4 его не устраивает уже и нужно искать замену. Современные требования к интрадей-трейдингу таковы, что необходима самая высокая скорость открытия и закрытия позиций, удобный продвинутый функционал и возможность создавать серьезные профессиональные торговые роботы.
Если брокер ваш поддерживает CTrader, то это лучшая замета МТ4. Терминал CTrader специально разрабатывался для EСN счетов. Сами алгоритмы пишутся на "си шарп" С#, который в общем-то потомок того же предка, что и MQL, а именно С, поэтому имеет смысл изучать и писать проги именно на C#.
В данной теме рассматриваться будут основные алгоритмы на С# в их связи с MQL.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

C# для CTrader

Сообщение Рэндом » 23 сен 2018, 07:15

CTrader сомнительная замена МТ. Особенно МТ5. Возможностей меньше. При необходимости к МТ можно подключить и C# и Питон и R. Я писал библиотеку для подключения Питона к МТ5. А Питон будет побогаче в плане библиотек, чем C#. Интересно что такого можно сделать в CTrader чего не сделать в МТ.
Кстати если все таки кому-то больше нравиться CTrader, то я могу ответить на вопросы по C# и платформе .NET. Но вот с программированием под CTrader знаком плохо.
Аватар пользователя
Рэндом
Специалист MQL
 
Сообщений: 13700
Зарегистрирован: 18 июл 2013, 08:05
Средств на руках: 31.45 Доллар
Группа: Администраторы
Благодарил (а): 1131 раз.
Поблагодарили: 3174 раз.
Каждый заблуждается в меру своих возможностей.

C# для CTrader

Сообщение Haos » 23 сен 2018, 20:14

Рэндом писал(а):CTrader сомнительная замена МТ. Особенно МТ5. Возможностей меньше. При необходимости к МТ можно подключить и C# и Питон и R. Я писал библиотеку для подключения Питона к МТ5. А Питон будет побогаче в плане библиотек, чем C#. Интересно что такого можно сделать в CTrader чего не сделать в МТ.
Кстати если все таки кому-то больше нравиться CTrader, то я могу ответить на вопросы по C# и платформе .NET. Но вот с программированием под CTrader знаком плохо.

Насколько я изучил вопрос, возможностей как раз больше в СиТрейдер, основная из них это значительное увеличение скорости открытия и закрытия позиций. Очень много дополнительных возможностей в ручной торговле от элементов интерфейса для локирования, усреднения, расчета риска и т.п. Кроме того, возможности СиШарп даже сравнивать нельзя с МКУЭль, также в конкретном случае комиссия по СиТрейдеру меньше при прочих равных условиях и, наконец, в нем есть возможность подключения FIX API сервиса.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

C# для CTrader

Сообщение Рэндом » 24 сен 2018, 07:15

В МТ5 обещают сделать FIX. Скорость выставления заявок сильно зависит от пинга. Если сервер брокера в США, а мы в России, то скорость будет не менее 100 мс. У меня У брокера сервер в Москве и VPS находиться тоже в Москве. Пинг 3 мс. Биржа находиться в Москве. Так что скорость приличная. МТ5 очень быстро работает. А код написанный на MQL5 по производительности приближается к C++. С# несколько уступает по скорости C++.
Аватар пользователя
Рэндом
Специалист MQL
 
Сообщений: 13700
Зарегистрирован: 18 июл 2013, 08:05
Средств на руках: 31.45 Доллар
Группа: Администраторы
Благодарил (а): 1131 раз.
Поблагодарили: 3174 раз.
Каждый заблуждается в меру своих возможностей.

C# для CTrader

Сообщение Haos » 24 сен 2018, 11:25

В общем, ничего как писать роботов на Сишарп для СиТрейдера я не нашел. Оказалось всё пшиком.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

C# для CTrader

Сообщение Рэндом » 24 сен 2018, 13:31

А что надо? Есть ведь справка по API. Этого достаточно. А по языку масса учебников. В общем могу ответить на конкретные вопросы.
Аватар пользователя
Рэндом
Специалист MQL
 
Сообщений: 13700
Зарегистрирован: 18 июл 2013, 08:05
Средств на руках: 31.45 Доллар
Группа: Администраторы
Благодарил (а): 1131 раз.
Поблагодарили: 3174 раз.
Каждый заблуждается в меру своих возможностей.

C# для CTrader

Сообщение Haos » 24 сен 2018, 13:58

Рэндом писал(а):А что надо? Есть ведь справка по API. Этого достаточно. А по языку масса учебников. В общем могу ответить на конкретные вопросы.

Да? Тогда конкретные вопросы:
1. Как получать котировки от брокера для обработки в коде?
2. Как отправлять торговые приказы?
3. Хотя бы пару примеров самых простых действий на Сишарпе чтобы из чего-то исходить.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

C# для CTrader

Сообщение Haos » 24 сен 2018, 18:43

Ага, разобрался! Для создания роботов брокер предлагает программное обеспечение под названием cAlgo.
cAlgo-это автоматизированное торговое программное обеспечение, используемое совместно с cTrader. cAlgo позволяет разрабатывать индивидуальные технические индикаторы для технического анализа, используя редактор исходного кода и язык C#. Пользовательские индикаторы, которые вы создадите, появятся в дополнение к встроенным индикаторам в CTrader.

Нужно скачать СиАлго и установить его для начала работы.
Важно вот что:
Build and deploy your C# automated trading systems on the (cTrader) cAlgo platform with its user friendly GUI and API. FIX API access also available.

Т.е. Создавайте и развертывайте автоматизированные торговые системы на языке C# на платформе (cTrader) cAlgo с удобным графическим интерфейсом и API. FIX API также доступен.
cAlgo документация.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

C# для CTrader

Сообщение Рэндом » 24 сен 2018, 23:26

Я не знаю как делать пример. В предыдущей версии был тестер. В новой нет. Если тестить на демо, то будет очень долго. Вообще терминал переделали. Раньше cAlgo был отдельной программой. Теперь все в одной программе. Без тестера терминал не пригоден для роботорговли.
Аватар пользователя
Рэндом
Специалист MQL
 
Сообщений: 13700
Зарегистрирован: 18 июл 2013, 08:05
Средств на руках: 31.45 Доллар
Группа: Администраторы
Благодарил (а): 1131 раз.
Поблагодарили: 3174 раз.
Каждый заблуждается в меру своих возможностей.

C# для CTrader

Сообщение Haos » 25 сен 2018, 07:16

Итак, приступим.
Для запуска среды разработки СиАлго нужно нажать кнопку {}, названием - Automate. Далее кнопку "Добавить". Появится вот такая заготовочка:

01-1.png

Видна похожая на MQL структура программного кода (в данном случае это методы класса базового робота, насколько я понимаю), а именно:
OnStart() - это обработчик событий, к которому робот обращается во время своего запуска (когда робот активирован на графике). Здесь вы можете добавить логику запуска робота, например, создать индикатор или исполнить ордер, который должен быть исполнен при старте.
OnTick() запускается при каждом тике, проверяет сигналы от индикаторов, исполняет, модифицирует или закрывает ордера и т.д..
OnStop() запускается, если робот остановлен. Вы можете добавить сюда логику деинсталляции робота.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.


Вернуться в MQL – теория и практика

Кто сейчас на форуме?

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 52

Права доступа к форуму

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

cron