Избранное трейдера Bat
Симбиоз двух алгоритмов или банальный учет направленности одного тикера относительно другого, мы все понимаем, но редко учитываем это при создании алгоритма.
На примере вчерашнего алгоритма, см статью -> smart-lab.ru/company/tslab/blog/663259.php сделали скрипт по си. В самой логике ничего не меняли, только добавили еще одно условие, открывать сделки, только если совпадает направление по ртс (ну естественно имеется ввиду если растет ртс то продавать си можно, и наоборот)
Делается это через экспорт импорт значений, которые легко можно передавать между скриптами в TSLab.
То есть в одном скрипте экспортируем с уникальным именем, а во втором импортируем по этому же имени. В зависимости от типов данных, импорт будет или логических значений или вещественных и целочисленных.
Ниже смотрим на эффект
Всем добрый день!
Я уже в своё время писал о том, что на Tradingview (далее TV) наконец-то появился адекватный способ полноценной автоматизации торговли без применения костыльных решений.
Например, раньше TV предоставлял возможность отправлять сигналы только на почту.
Поэтому приходилось писать программу, которые бы считывала данные с почтового клиента и отправляла их уже в торговый терминал.
Либо второй вариант, сканирования выделенной области экрана на наличие в нём заданного цвета сигнала покупка (зелёный), продажа (красный). А о каком открытом API речи даже и не шло.
Очевидно, что у данных решений были определённые недостатки, но они позволяли так или иначе автоматизировать торговлю. И если вы торгуете максимум 1-2 инструментами вышеописанного функционала может быть вполне достаточно, но в случае желания работать с портфелем из стратегий эти решения не совсем подходят.
Но благо TV дал нам наконец функционал, используя который мы можем наконец построить портфель из нескольких стратегий.
Как всегда, для тех — кто предпочитает в формате видео
Добрый день, коллеги.
Предположим, вы не хотите покупать фонды, биржевые ПИФы, ETFы, а хотите сами составлять свой портфель, управлять наличием в нём эмитентов и их долями, при этом перед вами стоит задача — активно контролировать что происходит с приобретенными акциями и не тратить на это половину свободного времени. Как это реализовать — именно об этом сегодня и поговорим.
p_CLASSCODE = «SPBFUT» --Код класса
p_SECCODE = «SiU0» --Код инструмента
function OnInit()
frame_60min = CreateDataSource (p_CLASSCODE, p_SECCODE, INTERVAL_H1)
frame_5min = CreateDataSource (p_CLASSCODE, p_SECCODE, INTERVAL_M5)
Index_60min = nil
Index_5min = nil
LastPrice = nil
IsRun = true
end
function main()
CreateTable()
while IsRun do
if Index_60min ~= frame_60min:Size() then
Index_60min = frame_60min:Size()
end
if Index_5min ~= frame_5min:Size() then
Index_5min = frame_5min:Size()
Transaq = 0
BuyWay = 0
SellWay = 0
end
if LastPrice ~= frame_60min:C(Index_60min) then
LastPrice = frame_60min:C(Index_60min)
BuySignal(frame_60min, Index_60min)
SellSignal(frame_60min, Index_60min)
if BuySpeed ~= nil and SellSpeed ~= nil then
if LastPrice < BuyPrice and BuySpeed > SellSpeed then
SetCell(t_id, 1, 4, «Buy»)
elseif LastPrice > SellPrice and SellSpeed > BuySpeed then
SetCell(t_id, 1, 4, «Sell»)
else
SetCell(t_id, 1, 4, «None»)
end
end
end
sleep(10)
end