На
главную страницу
Описание
доп.функций, передающих параметры из
АД-терминала в Метасток:
В Dll-библиотеке
версии v.59 появились новых функции,
которые дают возможность передать в
Метасток из АД-терминала несколько важных
для автоматической торговли параметров. Это
следующие функции:
ExtFml( "Borisoff.PositionAD(
"Portfel", "TradeArea", "Tiker" ); передает в Метасток величину
имеющейся позиции в АД-терминале для
указанного портфеля, рынка и инструмента, из
Таблицы "Позиции".
ExtFml( "Borisoff.EquityAD",
"Portfel", "TradeArea" ); передает в Метасток имеющийся процент
прибыли/убытка (П/У%) в целом для указанного
портфеля и рынка, из Таблицы "Баланс по
счетам".
ExtFml( "Borisoff.OpenINTEREST(
"Tiker", "TradeArea" ); передает в Метасток текущую величину
открытых позиций по указанному инструменту
и рынку (из таблицы "Котировки"
АД-терминала). Из-за наличия одинаковых тикеров
на разных рынках добавлен уточняющий параметр
"TradeArea".
ExtFml( "Borisoff.MinuteAD()
); передает в
Метасток минуты времени текущей
сессии АД-терминала.
ExtFml( "Borisoff.HourAD()
); передает в
Метасток часы времени текущей
сессии АД-терминала.
Т.е. теперь с помощью этих функций можно видеть и
использовать значения данных параметров
непосредственно в Советнике Метастока, что очень
удобно для авто-торговли. Эти функции выдают текущее
значение параметров в АД-терминале, т.е. без
истории. Соответственно при выводе на график в
Метастоке эти функции будут рисовать прямую
линию (уровень), значение которой будет равно
значению параметра в АД-терминале в данный
момент.
Частота запроса
данных из АД-терминала составляет раз в
секунду, но
обновление данных этих функций на графике
зависит от частоты обновления данных Метастока
при каждой новой СДЕЛКЕ НА БИРЖЕ, а не от времени!
Т.е. если частота биржевых сделок большая, то
обновление данных на графике (в Советнике) более
частое, а если сделок мало, то соответственно
частота обновления данных в Советнике меньше! С помощью функций MinuteAD()
и HourAD(), сверяя текущее время
АД-терминала и время бара, можно сделать
управление сигналами Buy и Sell
даже внутри бара, например, подавать
заявки не сразу с началом нового бара, а спустя
какое-то время, или наоборот, за какое-то время
перед завершением текущего бара!
Примеры
написания параметров функций в Метастоке (нужно
обязательно получать значение функции через
LastValue):
PAD:=LastValue( ExtFml( "Borisoff.PositionAD",
"12345-000", "FORTS", "RTSI-6.11" ) ); видим в Метастоке текущую
позицию по RTSI-6.11 на ФОРТС в портфеле 12345-000;
EAD:=LastValue( ExtFml( "Borisoff.EquityAD",
"12345-000", "FORTS" ) ); видим в Метастоке текущий %дневного
профита/убытка на ФОРТС по портфелю 12345-000 которое
показывается в данный момент в АД-терминале в
таблице "Баланс по счетам", нужна открытая
таблица;
OI:=LastValue( ExtFml( "Borisoff.OpenINTEREST",
"RTSI-6.11", "FORTS" ) ); видим в Метастоке кол-во открытых
позиций по RTSI-6.11 в котировках (текущий открытый
интерес);
HAD:=LastValue( ExtFml( "Borisoff.HourAD"
) ); видим в Метастоке
часы текущей сессии в АД-терминале (функция
удобна для использования со Stop и Start-заявками);
MAD:=LastValue( ExtFml(
"Borisoff.MinuteAD" ) ); видим в Метастоке минуты текущей сессии
в АД-терминале (функция удобна для использования
со Stop и Start-заявками);
Т.е. не рекомендуется сразу
использовать эти функции в формулах, а нужно
сначала через LastValue() присвоить значения
этих функций переменным, и потом уже
использовать в формулах только эти
переменные.
Для пользования
этими функциями скачайте из Раздела 2
этого сайта текущую версию файла Borisoff.Dll