Блог им. autotrade

Индикатор средней на разных TF(15/60/D) одной длины

Индикатор средней на разных TF(15/60/D) одной длины
То есть у нас есть 15-минутный график и на нем отображаем среднюю с периодом 200 на 15 минутках, период 200 на часах и период 200 на днях, все на одном графике.
Кстати, если построить на 15 минутке среднюю 200, то она почти будет совпадать со средней 50 на часах того же графика
Индикатор позволяет сократить количество окон с разными таймфреймами
Индикатор средней на разных TF(15/60/D) одной длины
--[[
средние на разных TF(15/60/D) одной длины
--]]
Settings=              
        {                          
            Name = "SMA_mult_template_v1",   -- indicator name
            ln=200,               -- period	
            line=                                     
                {                               
                    {  
                        Name = "SMA_TEMPL",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(0,0,255)
                    },
					{  
                        Name = "cur3",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(0,0,255)
                    },
					{  
                        Name = "cur4",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(0,0,255)
                    }					
                }
       }


function Init()
  
  return 3
end


function OnCalculate(index)

  ln = Settings.ln 
  

  if index == 1 then 
    hour = {}
    day = {}  
  
    sum = {}
    sma = {}  	
    n = {}	
	
    sumh = {}
    smah = {}  	
    nh = {}		
	nhi = {}
	
    sumd = {}
    smad = {}  
    nd = {}		
	ndi = {}	
	
    sum[index] = O(index)
    n[index]=1
	
    sumh[index] = O(index)
    nh[index]=1
    nhi[index]=1
	
    sumd[index] = O(index)
    nd[index]=1	
    ndi[index]=1	
	
	hour[index] = T(index).hour	
	day[index] = T(index).day	
	
  else
  
    if index > ln then     
      sum[index] = sum[index-1] + O(index)
	  sum[index] = sum[index] - O(index-ln)
      n[index] = n[index-1]
    else 
      sum[index] = sum[index-1] + O(index)
      n[index] = n[index-1] + 1	
    end 
	
	if hour[index-1] ~= T(index).hour then 
      nh[index] = nh[index-1] + 1		
      nhi[nh[index]] = index
	  if nh[index] > ln then 
	    sumh[index] = sumh[index-1] + O(index)-O(nhi[nh[index]-ln])
		smah[index] = sumh[index]/ln
	  else
	    sumh[index] = sumh[index-1] + O(index)
		smah[index] = nil
	  end 
	else  
      nh[index] = nh[index-1]
      sumh[index] = sumh[index-1]  
	  smah[index] = nil
    end 
	
	if day[index-1] ~= T(index).day then 
      nd[index] = nd[index-1] + 1		
      ndi[nd[index]] = index
	  if nd[index] > ln then 
	    sumd[index] = sumd[index-1] + O(index)-O(ndi[nd[index]-ln])
		smad[index] = sumd[index]/ln
	  else
	    sumd[index] = sumd[index-1] + O(index)
		smad[index] = nil
	  end 
	else  
      nd[index] = nd[index-1]
      sumd[index] = sumd[index-1]  
	  smad[index] = nil
    end 	
	
	hour[index] = T(index).hour	
	day[index] = T(index).day		
  end
  
  
  if n[index] ~= 0 then 
    sma[index] = sum[index]/n[index]
  end  
   

    return sma[index], smah[index], smad[index]
 
  
end

Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
472 | ★2
5 комментариев
это все куйня, вот в МТ4, есть индикатор, который на рабочем ТФ показывает машку, с заданным периодом, в виде горизонтальной линии. Допустим рабочий Н1, а линии SMA200 отрисует на этом ТФ, как она графиках Н4, D1, W1, одновременно.
avatar
Клетчатый, здесь тоже самое
avatar
autotrade, 
avatar
гм… достаточно просто знать элементарную математику.

ЕМА50 на н4 = ЕМА200 на н1 = ЕМА 800 на м15 ну и т.д.
avatar
jin, на ema и sma по разному
avatar

Читайте на SMART-LAB:
Китай в 2026: от EV до ИИ и энергетики
Китайский фондовый рынок в 2025 году выглядел стабильным и к концу года оценивался в более чем $57 трлн. Несмотря на эту стабильность, его...
Фото
📌 Размещение облигаций ВТБ Лизинг
ВТБ Лизинг — одна из крупнейших лизинговых компаний России. Кредитные рейтинги эмитента — ruAA от Эксперт РА и AA(RU) от АКРА. О...
Фото
⏳ Последний шанс приобрести конвертируемые облигации МГКЛ с кэшбэком 10%
Период покупки конвертируемых облигаций СО-001 (MGKLCO1) с кэшбэком подходит к концу. Чтобы получить кэшбэк 10% , квалифицированным...
Фото
НОВАТЭК: Отчет за 1-е полугодие 2026 - прибыль продолжает падать, но лучшее впереди, если не прилетит
НОВАТЭК отчитался за 1-е полугодие по МСФО, нормализованная чистая прибыль упала на 9% г/г  Пресс релизы максимально...

теги блога autotrade

....все тэги



UPDONW
Новый дизайн