Какой индикатор нужен для календарного спреда фьючерсов
Открывая позицию в дальнем и ближнем фьючерсах на один и тот же актив неплохо иметь перед глазами график их разности. И Quik средствами QLua предлагает такую возможность.
Код довольно прост:
— Складывает Value графиков GraphId1 и GraphId2
— При запуске на загрузке Quik'а работает код предыдущей загрузки
— с последними свойствами, полученными из кода или интерактивно.
— При запуске старые бары графика данных сканируются дважды,
— только если есть подключение к серверу.
— При смене тайм-фрейма старые бары сканируются только единожды.
— При загрузке Quik'а первый скан до подключения к серверу.
CandlesOK = true
Settings = { — После смены тайм-фрейма нужно интерактивное подтверждение
Name = "_Add"
,GraphId1 = «Tag-1» — Перезадать оба после первой загрузки.
,GraphId2 = «Tag-2» — Сохраняются при последующих запусках.
,Factor1 = 1 — Для GraphId1
,Factor2 = 1 — Для GraphId2
,Base1 = 0 — Для GraphId1
,Base2 = 0 — Для GraphId2
,Value = «close»
,line = { — Исчезает прогррамный доступ после 1-го интерактивного изменения
{Name = «close»
,Color = RGB(255,255,0) — Жёлтый
,Type = TYPE_HISTOGRAM — POINT, LINE, DASH, DOT, HISTOGRAM,
,Width = 2} — TRIANGLE_UP, TRIANGLE_DOWN.
}
}
function Init()
local s = «Indicator _Add:»
if 0 == getNumCandles (Settings.GraphId1) then
CandlesOK = false
s = s .."\n invalid GraphId1"
end
if 0 == getNumCandles (Settings.GraphId2) then
CandlesOK = false
s = s .."\n invalid GraphId2"
end
if not CandlesOK then message (s) end
return #Settings.line
end — Init()
function OnCalculate (index)
if index == 1 then
CandlesOK = true
if 0 == getNumCandles (Settings.GraphId1) or
0 == getNumCandles (Settings.GraphId2) then
CandlesOK = false
end
--[[message («Settings.Value »… tostring (Settings.Value)
.."\nSettings.line "… tostring (Settings.line)
.."\nCandlesOK "… tostring (CandlesOK))--]]
if Settings.Value ~= «open» and Settings.Value ~= «high» and
Settings.Value ~= «low» and Settings.Value ~= «close» then
Settings.Value = «close»
message («Indicator _Add: Value must be open/high/low/close»)
end
end
if not CandlesOK then return nil end
local candle1 = (getCandlesByIndex (Settings.GraphId1, 0, index-1, 1))[0]
local candle2 = (getCandlesByIndex (Settings.GraphId2, 0, index-1, 1))[0]
local val1 = candle1[Settings.Value]
local val2 = candle2[Settings.Value]
— Результат return res == 0 and nil or res всегда 0 при res == 0
if val1 == 0 or val2 == 0 then return nil end
return (val1 + Settings.Base1) * Settings.Factor1
+ (val2 + Settings.Base2) * Settings.Factor2
end — OnCalculate()
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
Рубль потерял 20% за лето: что будет дальше и как на этом заработать
Российский рубль значительно ослаб за последние месяцы, прервав полуторалетний тренд на укрепление. Он оправдал ожидания тех, кто делал ставку на иностранную валюту. Что будет с рублем в...
Курс на ужесточение: какой будет ключевая ставка ЦБ РФ в конце 2026 года?
Банк России на заседании 11 сентября, как и ожидал консенсус аналитиков, впервые за последние 15 месяцев не снизил ключевую ставку, а сохранил её на уровне в 14% годовых. Мы рассматривали...
Сбер РПБУ 8 мес. 2026 г. - менеджмент ждет замедления, но в отчетах пока рекорды
Сбер опубликовал результаты по РПБУ за 8 мес. 2026 г. Чистая прибыль за 8 месяцев составила 1,33 трлн руб. (+19%). За август 169,1 млрд руб. (+14,2%). Рентабельность капитала за 8 месяцев...
Inkvizitor01, более того, это вполне уже может быть, после прочтения всей этой дребедени вспомнился начальник цеха Уралвагонзавода, сдел неприметный товарищ, а потом встретился с президентом и как ...
Олег Радзинский, вывести можно всё, было бы желание. Взять хотя бы топливные карты, которые у них были в литрах. Денег на счетах что у Трассы, что у Евротранс похоже нету, встречные иски у них толь...
YgrOK, да, я купил по 4000-4500. Я инвестор, и ждал цену 4500 3 года, и купил их в том количестве которое мне нужно, при падении до 4000 и ниже, это был подарок, я им воспользовался. Продавать акци...
Хорошо но плохо Фьюч ММВБ 5мин
Ну такое. Недоволен сегодняшним днем, несмотря на то, что повезло (об этом читайте у меня в канале, конечно же))))
Шорт перенес дальше. Авто-репост. Чит...
Рост заказов нет главная метрика маркетплейсов. Что изменилось?
Сейчас самая ценная часть маркетплейса не приложение, не склад и даже не доставка. Основная ценность в привычке покупателя возвращ...
Рост заказов нет главная метрика маркетплейсов. Что изменилось?
Сейчас самая ценная часть маркетплейса не приложение, не склад и даже не доставка. Основная ценность в привычке покупателя возвращ...