Список констант тайм-фреймов графиков

Автор записи: Дмитрий (Admin)
1 звезда2 звезды3 звезды4 звезды5 звезд (Голосов 2, среднее: 5,00 из 5)
Загрузка...

Qlua-основы

INTERVAL_TICK -- (0)       Тиковые данные  
INTERVAL_M1   -- (1)       1 минута  
INTERVAL_M2   -- (2)       2 минуты  
INTERVAL_M3   -- (3)       3 минуты  
INTERVAL_M4   -- (4)       4 минуты 
INTERVAL_M5   -- (5)       5 минут 
INTERVAL_M6   -- (6)       6 минут 
INTERVAL_M10  -- (10)      10 минут 
INTERVAL_M15  -- (15)      15 минут 
INTERVAL_M20  -- (20)      20 минут 
INTERVAL_M30  -- (30)      30 минут 
INTERVAL_H1   -- (60)      1 час 
INTERVAL_H2   -- (120)     2 часа 
INTERVAL_H4   -- (240)     4 часа 
INTERVAL_D1   -- (1440)    1 день 
INTERVAL_W1   -- (10080)   1 неделя 
INTERVAL_MN1  -- (23200)   1 месяц

Добавить комментарий

Список констант тайм-фреймов графиков: 11 комментариев

    1. Вы пишите индикатор или скрипт?
      Если индикатор, тогда при переключении Таймфрейма весь график перерисовывается. Терминал вызывает функцию OnCalculate с индексом 1. Это можно использовать как переключение ТаймФрейма.
      Конечно, терминал вызывает функцию OnCalculate не только при переключении ТаймФрейма, например при изменении настроек он тоже ее вызывает. Можно отфильтровать, если запомнить, какой был ТаймФрейм при прошлом вызове OnCalculate(1) и какой теперь. Если изменился, значит переключили ТаймФрейм.

        1. Из скрипта OnCalculate Квиком не вызывается, проверил. Может какой-нибудь другой функцией Квик умеет реагировать на смену таймфрейма графика инструмента? Вариант постоянно проверять, например, цену открытия текущей свечи, кажется шибко тормозным.

          1. вам нужен индикатор, добавьте на график индикатор interval и поменяйте таймфрейм на графики или настройки

            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            17
            18
            19
            20
            21
            22
            23
            24
            25
            26
            27
            28
            29
            30
            31
            32
            33
            34
            
            Settings = {}
            Settings.Name = "*interval"
             
            function Init()
            	return 1
            end
             
            local strInt = {
            	[0]		= "tick",  
            	[1]		= "M1", 
            	[2]		= "M2", 
            	[3]		= "M3", 
            	[4]		= "M4",
            	[5]		= "M5",
            	[6]		= "M6",
            	[10]	= "M10",
            	[15]	= "M15",
            	[20]	= "M20",
            	[30]	= "M30",
            	[60]	= "M60",
            	[120]	= "H2",
            	[240]	= "H4",
            	[-1]	= "D",
            	[-2]	= "W",
            	[-3]	= "MN",
            }
            local info
            function OnCalculate(index)
            	if index == 1 then
            		info = getDataSourceInfo()
            		info.interval = strInt[info.interval]
            		message("info можно сохранить в файл или в namespace\n"..tostring(info.sec_code).." "..tostring(info.interval), 2)
            	end
            end
  1. Добрый день, Господа! Подскажите, а есть ли способ посчитать индикатор на текущем графике по другому таймфрейму, а потом изменить интервал текущего графика в зависимости от значения индикатора (например, на М5 посчитать АТР по дневным свечам, а потом изменить (автоматически )интервал М5 в зависимости от полученного значения АТР и вывести значение данного индикатора в дополнительное окно графика)?

    1. Начну с конца. Автоматически переключить ТФ нельзя, таких функция нет. Но если Вы готовы подключить внешнюю DLL библиотеку, написать алгоритм поиска нужного окна, активации его, поиска этого самого переключателя таймфреймов и активации нужного ТФ, то теоретически это возможно.
      Вообще задача необычная. Если это для ручной торговли, то на сколько нужно облениться, чтобы было лень переключить ТФ глядя на график. А если для робота, то вообще не нужно ничего ни где переключать, робот в недрах оперативки держит данные и оперирует ими.
      Конечно, нет предела совершенству, но тогда наступит время, когда понадобится алгоритм, который нажимает кнопки "Купить" и "Продать", а это уже робот. Так может Вам все же в сторону роботостроения начать смотреть.

      1. У меня была идея доделать индикатор Fractals таким образом, чтобы с учётом волатильности инструмента, рассчитанной по дневным свечкам, менялся таймфрейм графика для вышеуказанного индикатора, который в совокупности с заложенным алгоритмом свечных патернов будет генерировать сигналы для робота для торговли внутри дня по системе от уровней. А ещё это же удобно для премаркета, чтобы не открывать десятки графиков!)) Да, лень - это двигатель прогресса!))

    2. именно так как вы хотите - нет. но есть минимум два решения: просто в обычном lua-скрипте считаете все по нужным таймфреймам, благо, получить их несложно, потом передаете результаты расчета индикатору. и второй - если не хотите сами считать, а желаете воспользоваться готовыми индикаторами - открываете 10 графиков во всех нужных таймфреймах, результаты расчетов передаете в нужный скрипт.