MA Color — это модифицированная скользящая средняя, которая меняет цвет в зависимости от направления тренда.
Индикатор помогает визуально определять направление тренда, особенно на мелких таймфреймах.
Settings = { Name = "MA Color", MAPeriod = 29, -- Период MA MAType = 0, -- Тип усреднения (0 = SMA, 1 = EMA, 2 = SMMA, 3 = LWMA) line = { { Name = "MA Up", -- Линия роста MA Color = RGB(0, 255, 0), -- Зелёный (рост) Type = TYPE_POINT, Width = 2 }, { Name = "MA Down", -- Линия падения MA Color = RGB(255, 0, 0), -- Красный (падение) Type = TYPE_POINT, Width = 2 } } } -- Функция расчёта скользящей средней (без рекурсии) function MovingAverage(index, period, matype) if index < period then return nil end -- Проверяем, есть ли достаточно дан
Settings =
{
Name = «DHLM»,
line =
{
{
Name = «High»,
Color = RGB(0,200,64),
Type = TYPET_BAR,
Width = 1
},
{
Name = «Low»,
Color = RGB(200,0,64),
Type = TYPET_BAR,
Width = 1
},
{
Name = «Median»,
Color = RGB(0,64,200),
Type = TYPET_BAR,
Width = 1
}
}
}
local hlm = {}
local math_max = math.max
local math_min = math.minfunction Init()
return #Settings.line
end
function OnCalculate(index)
local dt = T(index)if O(index) then
if dt.day ~= hlm.day or
dt.month ~= hlm.month or
dt.year ~= hlm.year then
hlm.year = dt.year
hlm.day = dt.day
hlm.month = dt.month
hlm.high = H(index)
hlm.low = L(index)
else
hlm.high = math_max(hlm.high,H(index))
hlm.low = math_min(hlm.low,L(index))
hlm.median = (hlm.high + hlm.low)/2
end
end
return hlm.high,hlm.low,hlm.median
end