Программирование - это просто
Advertisement
Главная arrow Уроки программирования arrow Уроки программирования qplie (платный раздел) arrow Урок 4. Пишем простейшего робота (RSI, qpile, quik,trades,func)
01.03.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Урок 4. Пишем простейшего робота (RSI, qpile, quik,trades,func) Печать E-mail
Автор megabax   
18.03.2010 г.
Структура программы на примере простейшей программы

Урок 4. Пишем простейшего робота (RSI, qpile, quik,trades,func)

 

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

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


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

...

...Теперь разберем его более подробно. В самом начале программы мы задаем параметры:

'параметры
pTop=60
pBottom=40
pTicker="LKOH" 'Инструмент
pClass="EQBR" 'Код класса
pAccount="L01-00000F00" 'клиентский счет
pClienCode="" 'код клиента
pCount=1 'количество акций
 

pTop и pBottom верхнее и нижнее значение RSI соответственно, эти параметры вам знакомы из урока 3. С остальными параметрами тоже, думаю, должно быть все ясно, их мы проходили на уроке 1 и уроке 2. В этой программе мы их собрали в самом начале текста, что бы можно было легко менять, если мы, захотим например, перенастроить робота для другой акции. Да, еще параметр pCount - вы наверное догадались, что в нем задается количество бумаг, которым будет торговать робот...

...

...Затем у нас идет функция, которая определяет тип сигнала...

...

...Она возвращает 1, если нам надо покупать, -1 если продавать и 0 если нет сигнала. В этой функции сначала вычисляется значение индикатора RSI, потом сравнивается с параметрами.

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

Поэтому, нам понадобиться еще одна функция...

...

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

...

... Новое для вас разве слово message, оно просто выводит на экран сообщение вот в таком виде:

Урок 4. Пишем простейшего робота (RSI, qpile, quik,trades,func).

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

И, наконец, последняя функция - получить цену последней сделки (по ней мы будем торговать):

func GetCurrentPrice(aClass, aTicker)
result=GET_PARAM(aClass, aTicker, "last")
end func

Теперь переходим, собственно говоря, к самой программе...

...

...Вот какие сделки совершил робот при его тестировании на демо счете:


Урок 4. Пишем простейшего робота (RSI, qpile, quik,trades,func).

 

 

 

Последнее обновление ( 02.12.2010 г. )
 
« След.   Пред. »
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги