Quik тайно через график Volume передает значение Price!

Страницы: 1
RSS
Quik тайно через график Volume передает значение Price!
 
Выяснилось это как-то прозаично: присвоил идентификатор графику Volume и попытался получить ее значение через Lua-скрипт.
Получил Price.  :shock:
Традиционный вопрос: как такое может быть?  
Lbot3D
 
"тайно" =)
Постановка вопроса претендует на раскрытие глобального коварного замысла, несомненно, вредоносного по своей сути :)
 
Цитата
XXM написал:
Традиционный вопрос: как такое может быть?

Для графика цены и для графика объема один источник информации, а не два.
Поэтому обращаясь к графику цены вы получите те же параметры что при обращении к графику объема.
 
Цитата
Sergey Gorokhov написал:
Для графика цены и для графика объема один источник информации, а не два.
Можете продолжить:
Для графика цены, для графика объема и для графика скользящей средней - один источник информации, а не три.
Поэтому ...
:smile:
Но, вообще-то, ответ как-то так, что не совсем ответ.
Цитата
XXM написал:
присвоил идентификатор графику Volume и попытался получить ее значение через Lua-скрипт.
Получил Price
Вы проясните ситуацию с идентификатором: его-то присваиваю графику объема!
Почему обращаясь к нему я не получаю значение объема?
Lbot3D
 
Цитата
XXM написал:
Для графика цены, для графика объема и для графика скользящей средней - один источник информации, а не три.
Поэтому ...

Вы не правы, для скользящей средней источник информации это результат расчетов.
Результат расчетов, а не входные данные.
В случае цены и объема, нет никаких расчетов.
Поэтому там входные данные равны источнику информации.

Цитата
XXM написал:
Вы проясните ситуацию с идентификатором: его-то присваиваю графику объема!
Почему обращаясь к нему я не получаю значение объема?

Как так не получаете??
Не правда, через параметр volume все прекрасно выводится.
 
Цитата
Сергей написал:
"тайно" =)
Постановка вопроса претендует на раскрытие глобального коварного замысла, несомненно, вредоносного по своей сути :)
Я об этой фиче узнал из вопроса, адресованного мне в переписке.
Проверил - был в шоке  :lol:!
Поэтому слово "тайно" - это как бы эмоциональная реакция.
На самом деле - элементарная недоработка.
Получается, как к индикатору, значение объема не вытащить никак!
Ведь это же VOLUME, а не какой-то там параболик, или, простите, эмашка какая  :lol:!
Lbot3D
 
Цитата
Sergey Gorokhov написал:
Как так не получаете??
Могу, через getCandlesByIndex()
Но не с идентификатора графика.
Lbot3D
 
Цитата
XXM написал:
ЦитатаSergey Gorokhov написал:
Как так не получаете??
Могу, через getCandlesByIndex()
Но не с идентификатора графика.

Поясните на примере, что именно не получается.
 
Открываем график цен с объемами, присваиваем объему некоторый идентификатор , например "volumeSber".



Запускаем небольшой скрипт:
Код
-- УраганСкрипт.lua
lineVolume = 'volumeSber'
function main()
   number_of_candles=getNumCandles(lineVolume)
   t = getCandlesByIndex(lineVolume, 0, number_of_candles -1, 1)
   t = t[0]['close']
   message('LastVolume = '..t)
end

И вместо ожидаемого: LastVolume = 654 685 получим это:
Цитата
LastVolume = 107.05
Вот. Привел пример.
Даже рисунок приложил.
Вопрос тот же: как такое может быть?
Lbot3D
 
Вместо

t = t[0]['close']

нужно

t = t[0]['volume']
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Как вытащить Volume, я знаю, о чем уже писал тут.
Вопрос стоит так, как написано в первом сообщении темы.
Lbot3D
 
Цитата
XXM написал:
Вопрос стоит так, как написано в первом сообщении темы.
Вам уже два человека объяснило что получить данные с графика Volume через идентификатор можно.
Для этого нужно указать параметр "volume"
Вы же пишете close что является не правильным.

На наш взгляд тема раскрыта и не требует дальнейшего обсуждения.
Вопрос закрыт.
 
Цитата
Sergey Gorokhov написал:
Вам уже два человека объяснило что получить данные с графика Volume через идентификатор можно.
:lol:
Я на примере (сообщение #9) показал, что данные с графика Volume через идентификатор невозможно.
Через идентификатор с графика Volume можно получить значение цены инструмента, Close.
Вы, пожалуйста, не подменяйте понятия "параметр свечи"(4.22 Свечки графика, Интерпретатор языка Lua "Руководство пользователя",  Версия 2.3) со строковым идентификатором графика или индикатора в рамках пункта 3.10.3 getCandlesByIndex (оттуда же).
На мой взгляд, тема не раскрыта.
Вопрос закрыт.

Задаю другой вопрос:
Есть в QUIK индикатор "Fractals"
Код
-- УраганСкрипт.lua
line = 'Fractals'
function main()
   number_of_candles=getNumCandles(line)
   t = getCandlesByIndex(line, 0, number_of_candles-10, 10)
   for i=0,9 do
      t1 = t[i]['close']
      message(i..' '..line..' = '..t1)
   end
end


Есть ли возможность получить из него данные штатными способами, через идентификатор?
Lbot3D
 
Цитата
XXM написал:
На мой взгляд, тема не раскрыта.

На наш взгляд тема вполне себе раскрыта.
Как уже было не раз сказано, если Вы хотите по идентификатору получить значения объема с графика Volume, требуется указать в качестве параметра свечи "volume". Причины также уже были озвучены.

Цитата
XXM написал:
Есть ли возможность получить из него данные штатными способами, через идентификатор?

Индикатор Fractals пишет значения в параметры "low" или "high" в зависимости от направления.
 
Указанный в УраганСкрипт.lua подход я применял в отношении как штатных индикаторов, так и написанных на Lua - с применением 'close'.
Работало исправно, пока не наткнулся, что на Volume это не применимо. Спасибо за ответы : )
Код
-- УраганСкрипт.lua
line = 'Fractals'
function main()
   number_of_candles=getNumCandles(line)
   t = getCandlesByIndex(line, 0, number_of_candles-20, 20)
   for i=0,19 do
      t1 = t[i]['low']
      t2 = t[i]['high']
      if t1+t2>0 then
         message(i..' '..line..' low = '..t1..',  high = '..t2)
      end
   end
end

И второе спасибо - за Fractals. Работает.
Lbot3D
Страницы: 1
Читают тему
Наверх