Всем привет!
Сегодня вновь поговорим про парный трейдинг. Если в одном из выпусков выходного дня я затрагивал общие вопросы парного трейдинга, то здесь я покажу более детальные вещи, которые помогут реализовывать данную стратегию. Однако, я не готов выкладывать готовый торговый скрипт, реализующий такую торговую идею. Возможно, что когда-нибудь я дойду и до этого.
Итак, поехали.
1. График отношения цены одного инструмента к цена другого.
Немного напомню, что суть парного трейдинга – при входе в сделку покупать акции одного эмитента и продавать примерно на такую же сумму акции другого эмитента. При этом эти эмитенты должны быть схожи, на их цены разные параметры (цена нефти, доллар, учетная ставка ЦБ и пр.) действуют одинаково. В общем, цены этих эмитентов ходят вместе, то в какие-то моменты расходятся. В этот момент и нужно войти в сделку, подразумевая, что цены опять сойдутся. Как же определить когда входить в сделку?
Для лучшего понимания ситуации можно нарисовать график отношения цены первой бумаги по отношению к цене второй бумаги. Для этого нам может помочь LUA.
А точнее следующий скрипт:
Settings=
{
Name="Para_BUM1_BUM2",
ID_Stock1="BUM1",
ID_Stock2="BUM2",
incr=1
}
function Init()
return 1
end
function OnCalculate(index)
local Graph_Stock1, Num_Stock1, Legend_Stock1 = getCandlesByIndex(Settings.ID_Stock1,0,index-1,1)
local Graph_Stock2, Num_Stock2, Legend_Stock2 = getCandlesByIndex(Settings.ID_Stock2,0,index-1,1)
if Num_Stock1~=0 and Num_Stock2~=0 then
local Close_Stock1=Graph_Stock1[0].close
local Close_Stock2=Graph_Stock2[0].close
if Close_Stock1==0 or Close_Stock2==0 then
return nil
end
if Close_Stock1==nil or Close_Stock2==nil then
return nil
end
return (Close_Stock1/Close_Stock2)
else
return nil
end
end
Да, именно такой. В нем нет привычного нам блока main{}. Дело в том, что это не совсем обычный скрипт и мы его не будем запускать. И лежать этот скрипт должен не где попало, а в конкретном месте.
По правде сказать, я не сильно понимаю, что в этом скрипте что. В свое время откуда-то слямзил и использовал. Могу только сказать, что строка
return (Close_Stock1/Close_Stock2)
позволяет нам получать, и в последующем отрисовывать на графике отношение одной цены к другой.
Так вот, в папке, где лежит программа QUIK нужно создать новую папку с именем «LuaIndicators» и в эту папку положить данный скрипт.
Далее делаем следующее:
Жмем на кнопку «Создать диаграмму по интересующим инструментам»
В открывшемся окне набираем названием первого инструмента и выбираем его. Давайте выберем «Роснефть».
Откроется график по данному инструменту.
Объемы нас не интересуют. Нажимаем правой кнопкой на область с объемами, жмем «удалить – Область 2».
Получим такой график:
Теперь добавим в эту область цену второго инструмента.
Правая кнопка мыши – добавить график (индикатор).
В открывшемся окне жмем кнопку «Новый».
В открывшемся окне пишем название второго эмитента и выбираем его. Я написал Лукойл.
Нас переместят к предыдущему окну, где нужно будет нажать «Добавить».
После этого в одной области будет две цены нужных нам эмитентов.
Теперь нарисуем график отношения цены верхнего эмитента к цене нижнего.
Для этого на верхнем графике нажимаем правую кнопку и выбираем «Редактировать».
Получим такое окно и выбираем название эмитента.
Выбираем вкладку «Дополнительно».
И в поле «Идентификатор» вводим переменную «BUM1». Вообще тут может быть любое название переменной, но оно должно совпадать с переменной из скрипта в этой строке:
ID_Stock1="BUM1",
Аналогично поступим и со второй ценой – выберем и установим название идентификатора – BUM2.
Нажимаем «ОК».
Кстати, а почему «Ок» не переводят на русский? Есть же его перевод – «Хорошо».
Продолжаем. Снова нажимаем на область с графиками правой кнопкой и снова выбираем «Добавить график (индикатор)».
Теперь нужно в списке индикаторов найти наш индикатор. Он будет отражаться как имя файла, который мы поместили в папку «LuaIndicators».
Выбираем эту позицию, нажимаем «Добавить». И у нас появился новый график с отношением первой цены ко второй.
Нужно не забыть еще выбрать интересующий нас тайм фрейм. Также на этом графике можно нарисовать горизонтальные линии. Одну – центральную, вокруг которой, как мы считаем крутятся цены. И две линии в разных направлениях, подразумевая, что, когда график отношения будет их достигать мы будем входить в сделку.
Например, так:
Если график доходит до верхней линии, то мы должны Роснефть купить, а Лукойл продать. Когда цена вернется к центральной линии мы выйдем из сделки. И наоборот, если цена дойдет до нижней линии, то мы продаем Роснефть и покупаем Лукойл.
Конечно, я провел линии условно. Нужно высчитывать что получается в результате таких сделок, сколько уйдет на комиссии и пр.
Но, в целом ситуация такая.
2. Ликвидность инструментов.
Следующий момент, на который следует обращать внимание – это ликвидность инструментов. Дело в том, что нужно оперировать пакетами акций первой и второй компании, которые по цене примерно одинаковы. Иначе движение рынка может вам принести значительный убыток. Так, к примеру, при стоимости акций Роснефти в 344 рубля, а Лукойла в 3920 руб. Нужно на одну акцию Лукойла брать 11 акций Роснефти.
В этом случае цена акций Лукойла будет 3920, а акций Роснефти – 3784 руб. Разница 136 руб. Можно сократить эту разницу и оперировать двумя акциями Лукойла и 23-мя акциями Роснефти. В этом случае цены акций Лукойла будут 7840 руб., а Роснефти – 7912. Разница 72 руб. Что касается акций Роснефти, то вопросов с ликвидностью не должно быть. А вот, если Вы, к примеру, будете работать со фьючерсами Ростелекома, то тут могут быть проблемы – нужного количества акций по нужной Вам цене может не быть.
3. Работать нужно не с графиком, а с данными котировочных стаканов.
Несмотря на то, что в первом пункте я показал как строить график отношения одной цены к другой, принимать окончательное решение необходимо по данным котировочного стакана. Во-первых, для того чтобы ориентироваться на объемы, а во-вторых….
В алгоритме торговли должно фигурировать два коэффициента: Один как отношение цены продажи первого инструмента к цене покупки второго. Второй коэффициент – как отношение цены покупки первого инструмента к цене продажи второго.
Именно это доступно в котировочных стаканах. А график, который был нарисован в первом пункте может носить только вспомогательный характер.
На сегодня, пожалуй, всё.
Обратите внимание, что умея рисовать график, как было показано в п.1. можно проводить анализ различных бумаг на различных таймфреймах на предмет применимости использования парного трейдинга. Но, нужно учитывать, что нельзя одновременно строить отношения по скрипту-индикатору из пункта 1 для разных пар бумаг. Если Вам нужно одновременно построить отношения для разных бумаг, то нужно создавать копии скрипта, называть их по разному, и внутри скриптов менять значения переменных BUM1 и BUM2.
Ну, теперь точно все. Пиши в комментариях, если что-то не понятно.
Подписывайтесь на канал – дальше будет гораздо интереснее.
Ну, и совсем на прощение - картинка, нарисованная нейросетью на запрос "Прощание". Блин, что у нее в голове?
=================================
Краткое содержание данного канала.
=================================