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

Qpile. Урок 15. Совмещение симуляции с реальной торговлей. Реальный ИД заявки.

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

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


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

Сегодня я исправил некоторые недочеты функции AddStop, которая была доработана на прошлом уроке. В частности, в старой версии этой функции нельзя было выставить реальный тэйк профит - выдавалось сообщение, что не хватает параметров. Во вторых, при реальной торговле в памяти виртуальной модели биржи сохранялся виртуальный же идентификатор стоп заявки. Спрашивается, что плохого? А то, что если мы захотим удалить заявку программно, мы не сможет одновременно с виртуальной удалить и реальную, так как не знаем ее идентфикатор. Какой же выход? В режиме реальной торговли виртуальным заявкам присваивать код соответствующей ей реальной заявке.

Что бы исправить эти недочеты, я внес изменения в следующие функцию CreateStopStruct...

...

как видим, здесь мы просто добавили недостающие параметры, которые будет задавать опционально (в начале текста робота). Заметили, что переменная, из которой берется значение параметра, начинается с p? Этот префикс я использую для обозначения переменных, которым в начале текста робота присваиваю значения и считаю их параметрами робота. Вы можете делать точно так же, а можете поступать по своему. Но мой метод позволит не запутаться потом в переменных.

Что это за доп. параметры тэйк-прфита объясню ниже, а пока приведу текст тестового портфеля (робота)...

PORTFOLIO_EX Test;
DESCRIPTION Тест;
CLIENTS_LIST ALL_CLIENTS;
FIRMS_LIST MC0084600000;

INCLUDE DateTime.lib, signaler.lib, simul.lib;



PROGRAM

'Параметры
pTicker="GZU1" 'Инструмент
pClass="SPBFUT" 'Код класса
pAccount="SPBFUT00206" 'клиентский счет
pClienCode="" 'код клиента
pCount=1 'количество акций
pIntervalTime="01:00:00" 'Интервал в формате ЧЧ:ММ:СС
pIntervalDate="00.00.0000" 'Интервал в формате ДД.ММ.ГГГГ
pBegStock="10:30:00" 'Время начала работы биржи в формате ЧЧ:ММ:СС
pEndStock="18:45:00" 'Время окончания работы биржи в формате ЧЧ:ММ:СС
pTradeCost=0.001 'технические расходы
pMaName="MA"
pCandleName="GD"
pBegMoney=1000
pStopLoss=0.01
pTakeProfit=0.05
pOperLogName="operlog.txt"
pPortfolioLog="portfoliolog.txt"
pSimulation=0

'Параметры тэйк профита
pOFFSET_UNITS="PERCENTS"
pSPREAD_UNITS="PERCENTS"
pOFFSET=0.1
pSPREAD=0.1

...

Заметили, что там появились строки для присвоения параметров тэйк-профита?:

'Параметры тэйк профита
pOFFSET_UNITS="PERCENTS"
pSPREAD_UNITS="PERCENTS"
pOFFSET=0.1
pSPREAD=0.1

А теперь запускаем в Quik-е портфель и смотрим, что реальные заявки действительно выставились*:

Qpile. Урок 15. Совмещение симуляции с реальной торговлей. Реальный ИД заявки.

и им соответствуют виртуальные заявки**:

Qpile. Урок 15. Совмещение симуляции с реальной торговлей. Реальный ИД заявки.

заметили, что ID у них так же соответствуют реальным?

Но если мы поставим параметр робота pSimulation=1

...

pTradeCost=0.001 'технические расходы
pMaName="MA"
pCandleName="GD"
pBegMoney=1000
pStopLoss=0.01
pTakeProfit=0.05
pOperLogName="operlog.txt"
pPortfolioLog="portfoliolog.txt"
pSimulation=0

...

, тогда ИД виртуальных заявок так же будут виртуальные,  реальные заявки выставляется не будут**:

Qpile. Урок 15. Совмещение симуляции с реальной торговлей. Реальный ИД заявки.

Теперь разберемся с дополнительными параметрами тэйк профита, а именно OFFSET_UNITS, SPREAD_UNITS, OFFSET, SPREAD...

...

 


* Скриншоты, помеченные данным знаком, являются цитатами и иллюстрациями  программного продукта "Quik", авторское право на который принадлежит "ARQA Technologies"

** Скриншоты, помеченные данным знаком, являются цитатами и иллюстрациями  программного продукта "Блокнот", авторское право на который принадлежит "Microsof"

 

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