Функция для обращения к данным «свечек» на графике, а также к значениям
индикаторов технического анализа. MAP GET_CANDLE (STRING class_code,
STRING sec_code, STRING parameter_name, STRING interval,
STRING graph_type, DOUBLE Date, DOUBLE Time) Функция возвращает ассоциативный массив (MAP), содержащий информацию
о ценах в момент времени «Date»«Time», для графика, построенного по инструменту с
кодом «sec_code» из класса с кодом «class_code» с временным интервалом
«interval». Если «class_code» равен «», то функция ищет «sec_code» по всем
классам до первого нахождения. Тип графика указывается следующим кодом:
GET_CANDLE
Тип графика
Код
Тип графика
Код
Тип графика
Код
PRICE
1
PARABOLIC SAR
10
CUM AD
21
VOLUME
2
SROC
11
CHAIKIN OSCILLATOR
22
MOVING AVERAGE
3
MOM
12
CUM WAD
23
PRICE OSCILLATOR
4
ROC
13
ELDER FI
24
MACD
5
MFI
16
ELDER RAY
25
STANDARD DEV
6
WILLIAMS %R
17
VERTICAL HORIZONTAL FILTER
26
BOLLINGER LINES
7
ENVELOPS
18
CHAIKIN VOLATILITY
27
STOCHASTIC
8
VOLUME OSCILLATOR
19
RSI
9
BALANCE VOLUME
20
Значение временного интервала «interval» можно задавать следующими числовыми величинами:
Величина интервала | Значение | Величина интервала | Значение | Величина интервала | Значение | ||
---|---|---|---|---|---|---|---|
Месячный | month | 1 минута | 1 | 15 минут | 15 | ||
-3 | 2 | 20 минут | 20 | ||||
Недельный | week | 3 минуты | 3 | 30 минут | 30 | ||
-2 | 4 минуты | 4 | 60 минут | 60 | |||
Дневной | day | 5 минут | 5 | 2 часа | 120 | ||
-1 | 6 минут | 6 | 4 часа | 240 | |||
Тиковый | 0 | 10 минут | 10 |
Значение «parameter_name» должно соответствовать одному из значений имени параметра из Таблицы текущих значений параметров. Их перечень см. Функции для получения значений Таблицы текущих торгов. Если «parameter_name» указан как «», то поиск осуществляется по данным Таблицы обезличенных сделок.
Значение даты «Date» нужно указывать в формате «ГГГГММДД». Например,
«20050527» означает 27 мая 2005 г. Значение времени «Time» нужно указывать в
формате «ЧЧММСС». Например, «163500» означает 16 ч. 35 мин.
Функция
возвращает ассоциативный массив (MAP), содержащий параметры:
№ | Параметр | Тип | Описание |
---|---|---|---|
1 | OPEN | DOUBLE | Цена открытия (первой сделки) в данном интервале времени |
2 | CLOSE | DOUBLE | Цена закрытия (последней сделки) в интервале |
3 | HIGH | DOUBLE | Наибольшая цена сделки в интервале |
4 | LOW | DOUBLE | Наименьшая цена сделки в интервале |
5 | VOLUME | DOUBLE | Суммарный объем сделок в интервале |
‘
msg = GET_CANDLE("TQBR", "HYDR", "", "5", "PRICE", 20101130, 103500)
MESSAGE(msg, 2)
‘
В некоторых случаях, например, когда индикатор технического анализа состоит из нескольких линий, применение функции GET CANDLE невозможно. Для доступа к таким графикам средствами языка QPILE используется функция GET CANDLE EX.
MAP GET_CANDLE_EX (STRING Tag, DOUBLE Date, DOUBLE Time)
Функция возвращает ассоциативный массив (MAP) с данными для графика со строковым идентификатором Tag в момент времени «Date» и «Time». Таким образом, для того чтобы обратиться к данным на графике, необходимо его предварительно построить и присвоить ему уникальный строковый идентификатор Tag. Идентификатор Tag задается в диалоге «Редактирование настроек графика» на вкладке «Дополнительно».
При вызове функции значение даты «Date» нужно указывать в формате «ГГГГММДД». Например, «20050527» означает 27 мая 2005 г. Значение времени «Time» нужно указывать в формате «ЧЧММСС». Например, «163500» означает 16 ч. 35 мин. Функция округляет параметр «Time» до ближайшего меньшего значения времени, соответствующего интервалу графика. Например, если интервал графика — «5 минут», а значение параметра «Time» — «163700», то функция округлит значения параметр «Time» до «163500», а если интервал графика – «60 минут», то «163700» округлиться до «160000».
Возвращаемый функцией ассоциативный массив содержит следующие поля:
№ | Параметр | Тип | Описание |
---|---|---|---|
1 | COUNT | DOUBLE | Количество линий, образующих индикатор |
2 | TIME | DOUBLE | Точное время свечки |
3 | LINES | DOUBLE | Коллекция линий, в которой каждый элемент коллекции содержит ассоциативный массив (MAP) |
Каждый элемент коллекции линий содержит ассоциативный массив (MAP) со следующими параметрами:
№ | Параметр | Тип | Описание |
---|---|---|---|
1 | NAME | STRING | Название линии (из легенды) |
2 | OPEN | DOUBLE | Цена открытия в интервале времени |
3 | CLOSE | DOUBLE | Цена закрытия в интервале времени |
4 | HIGH | DOUBLE | Наибольшее значение цены в интервале времени |
5 | LOW | DOUBLE | Наименьшее значение цены в интервале времени |
6 | VOLUME | DOUBLE | Суммарный объем сделок в интервале |
slice = Get_Candle_Ex ("all", 20070511, 170000)
LineCount = Get_Value (slice,"COUNT")
time = Get_Value (slice,"TIME")
lines = Get_Value (slice,"LINES")
FOR lineID FROM 0 TO LineCount-1
line = Get_Collection_Item (lines, lineID)
open = Get_Value (line,"OPEN")
line_name = Get_Value (line,"NAME")
volume = Get_Value (line,"VOLUME")
END FOR