На
главную страницу
Описание и примеры
заявок BuyScalp и SellScalp для скальперских операций
Для автоматического скальпирования
реализованы две новые заявки: BuyScalp и SellScalp
с блокировкой от последующих Buy и Sell сигналов до
окончания текущего бара (до появления нового
бара). Scalp-заявки подаются по сигналам с
графика и после открытия позиции и последующего закрытия
ее, по достижении заданного уровня профита или
убытка, ставится блокировка от любых
последующих сигналов того же направления (от
любых видов BuySell, Scalp и не Scalp-заявок),
вплоть до завершения бара, на котором эта
блокировка будет установлена. Т.е. на
каждом баре с сигналом может выполниться
одна Buy- и одна SellScalp-заявка
(по сигналу повторно подаваться может любое
кол-во заявок). Созданная после исполнения
заявки блокировка не допустит открытия других
позиций того же направления (пока не появится
следующий бар, после бара на котором исполнилась
Scalp-заявка). Механизм блокировки такой же как и у SimpLock-стопа,
но блокирующий файл начинается с названия BuyScalp_Lock_...
или SellScalp_Lock_...
Параметры заявок:
1) BuyScalp:
FNull:=If(BuyOrder,
ExtFml("Borisoff.MoveMICEX_SHR","12345-000", -100,
0.2, BuyScalp, 0.25, Simple, -0.15,
BuyOrder, 0), False);
^ ^ ^ ^
^
размер %прос- вид
%Scalp- %Scalp-
позиции кальзы- заявки профита
убытка
вания
!всегда с
минусом!
2) SellScalp:
FNull:=If(SellOrder,
ExtFml("Borisoff.MoveMICEX_SHR","12345-000", -100,
0.2, SellScalp, 0.25, Simple, -0.15,
SellOrder, 0), False);
^ ^
^ ^ ^ ^
^
рынок портфель
размер %прос- вид
%Scalp- %Scalp-
позиции кальзы- заявки профита
убытка
вания
!всегда с
минусом!
Для использования Scalp-заявок
надо задавать параметры: размер позиции,
процент проскальзывания при исполнении
заявок, вид заявки BuyScalp или SellScalp, процент
профита при достижении которого Scalp-сделка
завершается (выход по достижению заданного
уровня профита), процент убытка при
достижении которого Scalp-сделка также завершается
(выход при достижении заданного ограничения
убытка, если сделка не вышла в плюс).
%Scalp-профита и убытка
можно задавать динамически, т.е. не в виде
константы, а в виде изменяющегося параметра,
подставляемого в формулу, тогда с ценой
исполнения в файле будет сравниваться каждый раз
новое значение %Scalp профита. Т.е. процент
%Scalp-профита на тренде будет возрастать, в отличие
от константного значения, что позволит получить
большую прибыль при закрытии Scalp-позиции.
После получения сигнала с графика
модуль стартует для выполнения Scalp-заявки, как
обычной заявки.
Пока модуль исполняет полученную Scalp-заявку,
другие Scalp-заявки того же направления и по
этой же бумаге-портфелю-рынку не будут
разрешены.
После исполнения Scalp-заявки создается
специальный файл: ТипзаявкиИнструмент№ПортфеляРынок,
например: BuyScalpRTSI-9.1012345-005FORTS, SellScalpRTSI-9.1012345-005FORTS
в котором сохраняется фактическая цена
исполнения Scalp-заявки (или Close-цена, если
прочитать цену исполнения не удастся). Далее
начинает происходить постояное сравнение цены
открытия позции, сохраненной в файле, и текущей
цены бумаги. Как только будет достигнут
заданный процент прибыли по Scalp-позиции
(или процент убытка), то модуль подаст заявку на
закрытие имеющейся позиции.
Открытая Scalp-позиции является
обычной позицией, которая может быть закрыта не
только при достижении заданного профита или
убытка, но и при появлении на графике другого
сигнала на разворот или на закрытие позиции (если
заданные уровни профита или убытка еще не
достигнуты). Если же других сигналов не будет, то
через какое-то время позиция может закрыться
при достижении заданного Scalp-профита или
убытка. Закрытие Scalp-позиции может произойти
и на поледующих барах после того, на котором была
открыта позиция, в этом случае блокировка
поставится уже на бар на котором Scalp-позиция
будет закрыта по профиту.
Например BuyScalp-позиция
c профитом 0.4% получится, если взять Цену
исполнения сохраненную в Scalp-файле и текущую
Close-цену, то подастся заявка на закрытие
BuyScalp-позиции если: (ЦScalp-Close)/Close*100 > 0.4%;
Когда позиция закроется по
достижении заданного Scalp-профита, то
сразу будет создана блокировка исполнения ЛЮБЫХ
ПОСЛЕДУЮЩИХ сигналов ТОГО ЖЕ НАПРАВЛЕНИЯ до
завершения бара на котором была создана
блокировка (механизм блокировки такой же как у SimpLock-стопа
см.Раздел 15).
Если позиция закрывается
по Scalp-лоссу, то блокировка ставится АНАЛОГИЧНО!
ЗАМЕЧАНИЕ: Scalp-заявки работают БЕЗ СТОПОВ, т.к.
параметры стопов, Stop% и Add%Stop, используются для
задания параметров Scalp-заявок, поэтому в
Scalp-заявках лучше в названии стопа использовать
только стандартное слово 'Simple'. Учитывая, что
Scalp-заявки имеют условия по выходу, при убытке или
при профите, то применение стопов просто
нецелесообразно.
Параметры Scalp-заявок в
процессе торговой сессии можно менять
динамически, если они заданы не постоянным
значением, а какой-то формулой %профита или
%убытка, в зависимости от изменения каких-либо
индикаторов на графике.
Пример записи из лог-файла при исполнении
Scalp-заявки:
************** Новая заявка от 28.06.2010
17:47:06
Входные параметры заявки:
Тип заявки - SellScalp;
vTradeArea=FORTS;
vAccount=12345-005;
vFinInstr=RTSI-9.10; (заявка сформирована с графика этой
ЦБ)
vMaxPercentInPortfel=-1; Минус означает, что доля актива в
портфеле задана в лотах(контрактах), а не в
процентах!
vLotSize=1;
vPrice=139685;
vDecimals=0;
vPriceStop=0;
vPriceAddStop=0,00;
%ScalpProfit=0,20504;
%ScalpLoss=-1,50000;
vAllowShort=N;
vVidStop=Simple;
vClose=139685; AD_Bid=0; AD_Offer=0;
vPriceMinStep=5,00000;
vNumBarRight=0;
Время контроля исполнения заявок (сек)=35;
Mакс.срок действия созданных заявок и стопов
(дней)=3;
oADLite: есть соединение с сервером;
Параметры корректные;
Заданное максимально допустимое кол-во ЦБ в
портфеле для заявки 1 шт.
Имеющиеся позиции по RTSI-9.10: Количество=0 шт; Доля в
портфеле%=0;
Лимит на продажу RTSI-9.10 1 шт. по цене 139685р;
ResultSellLimit-Операция выполнена успешно!;
Подана заявка на Продажу 1 шт. RTSI-9.10 по цене 139685р;
N=53251715, для Открытия Scalp-позиции.
Цена исполнения заявки на Продажу 139685;
--- запись завершена: 28.06.2010 17:47:22 -----
************** Новая заявка от 28.06.2010 17:48:05
Входные параметры заявки:
Тип заявки - BuyScalp;
vTradeArea=FORTS;
vAccount=12345-005;
vFinInstr=RTSI-9.10; (заявка сформирована с графика этой
ЦБ)
vMaxPercentInPortfel=-1; Минус означает, что доля актива в
портфеле задана в лотах(контрактах), а не в
процентах!
vLotSize=1;
vPrice=139650;
vDecimals=0;
vPriceStop=0;
vPriceAddStop=0,00;
%ScalpProfit=0,38794;
%ScalpLoss=-1,50000;
vAllowShort=N;
vVidStop=Simple;
vClose=139650; AD_Bid=0; AD_Offer=0;
vPriceMinStep=5,00000;
vNumBarRight=0;
Время контроля исполнения заявок (сек)=23;
Mакс.срок действия созданных заявок и стопов
(дней)=5;
oADLite: есть соединение с сервером;
Параметры корректные;
Заданное максимально допустимое кол-во ЦБ в
портфеле для заявки 1 шт.
Имеющиеся позиции по RTSI-9.10: Количество=0 шт; Доля в
портфеле%=0;
Лимит на покупку RTSI-9.10 1 шт. по цене 139650р;
ResultBuyLimit-Операция выполнена успешно!;
Подана заявка на Покупку 1 шт RTSI-9.10 по цене 139650р;
N=53251865, для Открытия Scalp-позиции.
Цена исполнения заявки на Покупку 139650;
--- запись завершена: 28.06.2010 17:48:14 -----
************** Новая заявка от 13.07.2010 13:46:19
У BuyScalp-позиции достигнут заданный уровень
профита 1,74255. Эта заявка закрывает Scalp-позицию.
Входные параметры заявки:
Тип заявки - BuyScalp;
vTradeArea=FORTS;
vAccount=4586-000;
vFinInstr=RTSI-9.10; (заявка сформирована с графика этой
ЦБ)
vMaxPercentInPortfel=0; в %
vLotSize=1;
vPrice=140310;
vDecimals=0;
vPriceStop=0;
vPriceAddStop=0,00;
%ScalpProfit=1,741255;
%ScalpLoss=-4,50000;
vAllowShort=N;
vVidStop=Simple;
vClose=140310; AD_Bid=0; AD_Offer=0;
vPriceMinStep=5,00000;
vNumBarRight=0;
Время контроля исполнения заявок (сек)=27;
Mакс.срок действия созданных заявок и стопов
(дней)=30;
oADLite: есть соединение с сервером;
Параметры корректные;
Заданное максимально допустимое кол-во ЦБ в
портфеле для заявки 0 шт.
Имеющиеся позиции по RTSI-9.10: Количество=1 шт; Доля в
портфеле%=100;
Для Закрытия BuyScalp-позиции подана заявка на
Продажу 1 шт. RTSI-9.10 по цене 140310р; N=53989858.
Цена исполнения заявки на Продажу 140310;
--- запись завершена: 13.07.2010 13:46:23 -----