.
Пишем биржевого робота на C#. Урок 13. Торговля на виртуальном счете по системе "Шип".
Автор megabax   
03.08.2012 г.
Структура программы на примере простейшей программы

  Пишем биржевого робота на C#. Урок 13. Торговля на виртуальном счете по системе "Шип".

Что бы смотреть урок полностью, подпишитесь на платный раздел.

В платном разделе статья находиться здесь.


Исходники к уроку можно скачать в платном разделе.

 

На прошлом уроке мы разобрали вопрос, как нейросеть определяет стоп лосс. Теперь пришло время пойти дальше. Сегодня я опубликую описание промежуточного шага по созданию робота, он уже торгует на виртуальном счете бэктестинга, но есть еще некоторые шероховатости, устранению которых будут посвящены будущие уроки. Сначала опишу некоторые изменения в программе. В частности, в форме расчета пакета нейросетей, которая вызывается из меню "Рассчитать" -> "По всему источнику цен":

 

Пишем биржевого робота на C#. Урок 13. Торговля на виртуальном счете по системе "Шип".

 

В ней появилась возможность указать начальную и конечную свечу, а так же файл лога, и флажок "Игнорировать сигналы если мы уже в позиции":

 

Пишем биржевого робота на C#. Урок 13. Торговля на виртуальном счете по системе "Шип".

 

Естественно, пришлось слегка переписать процедуру, вызываемую по кнопочке "Рассчитать"...

 

...

 

... Обратите внимание вот на такой код:

                //удаляем лишние ордера если какой то уже исполнился

                if (_device.ignore_signal_if_in_position && lastCountOrders>account.ordersCount)

                {

                    int cn = account.ordersCount - 1;

                    for (int ii = 0; ii <= cn; ii++)

                    {

                        (_device.driver as IAddTerminalDriver).deleteOrder(ii.ToString());

                    }

                }

 

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

 

...

 

... С ячеек 104 и 106 сигналы идут до конца нейросети через передаточные нейроны с коэффициентом 1 (сначала на 114 и 115, затем дальше):

Пишем биржевого робота на C#. Урок 13. Торговля на виртуальном счете по системе "Шип".

 

 

Как у нас вычисляются уровни стоп лосса и тэйк профита?  Во первых, тэйк профит у нас немного не доходит до противоположной границы канал. Здесь я задал уровень стоп лосса 90% от ширины канала. Это число, как входной параметр, указывается в ячейке 122 (только не в %, а в единицах, тоесть, 0.9):

 

 

Пишем биржевого робота на C#. Урок 13. Торговля на виртуальном счете по системе "Шип".

 

В ячейке 123 вычисляется разница между уровнем поддержки и уровнем сопротивления (та самая ширина канала, нужная для определения тэйк профита)...

 

...

 

...После чего можно мы сможет посмотреть файл лога:

Пишем биржевого робота на C#. Урок 13. Торговля на виртуальном счете по системе "Шип".

 

...

 

 

Последнее обновление ( 05.01.2013 г. )