Dr Wed (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
EMA, Расчет средней скользящей
 
function F_EMA()
local tmp = {pp=nil, p=nil}
local it = {p=0, l=0}

return function(I, P, VT, ds)
if I == 1 then
tmp = {pp=nil, p=nil}
it = {p=0, l=0}
end
if CandleExist(I,ds) then
if I~=it.p then
it = {p=I, l=it.l+1}
tmp.pp = tmp.p
end
...
EMA, Расчет средней скользящей
 
Цитата

Цитата
Dr Wed написал:
Что такое it в коде индикаторов от arqa?
Это итератор, судя по всему.
Я тоже прихожу  к такому заключению. При этом не очень понятно что в нем есть p и что l. По факту и в одно и в другое поле попадает номер свечи.
М.б. это для обработки ситуаций, когда в источнике есть пропуски в свечах?
EMA, Расчет средней скользящей
 
Люди, привет

Что такое it в коде индикаторов от arqa?

Например, EMA

---
function F_EMA()
local tmp = {pp=nil, p=nil}
local it = {p=0, l=0}

return function(I, P, VT, ds)
if I == 1 then
tmp = {pp=nil, p=nil}
it = {p=0, l=0}
end

......
библиотека для sqlite
 
Буду признателен за проверенную библиотеку для работы с sqlite и краткую инструкцию как ее прицепить к квику.
Ни один из рецептов, нарытых на просторах нета и данного уважаемого форума пока воплотить в жизнь не удается.
изменить стоп-заявку
 
Как можно из LUA изменить параметры существующей стоп-заявки, например, подвинуть цену активации?
Смотрю на инструкцию ARQA, не нахожу ничего похожего.
Работа с БД
 
Цитата
s_mike@rambler.ru написал:
Sqlite - прекрасно работает с qlua
Благодарю за подсказку.
Библиотека существует какая-то стандартная для работы с Sqlite? Посоветуйте где ее искать.
Работа с БД
 
Всем доброго дня

Есть ли проверенные, простые и надежные варианты работы с БД из QLUA?
Какие библиотеки и какие СУБД лучше всего использовать?
Не хочется изобретать велосипед.

Нашел вот такой пост, но он довольно древний. Возможно, жизнь уже ушла вперед.

https://forum.quik.ru/messages/forum10/message21257/topic2394/#message21257
Текущая цена из дневной свечки
 
Цитата
s_mike@rambler.ru написал:
Цитата
Dr Wed написал:
Всем доброго дня
Можно ли из дневной свечи получить текущую цену инструмента?
Какую цену даст функция ds:C(<свечка текущего еще незакрытого дня>)?
она и даст цену последней сделки инструмента.
премного благодарен
Текущая цена из дневной свечки
 
Всем доброго дня
Можно ли из дневной свечи получить текущую цену инструмента?
Какую цену даст функция ds:C(<свечка текущего еще незакрытого дня>)?
CreateDataSourse при разорванном соединении
 
Ну, буду тогда проверять статус isConnected() и доверять только тем данным, в момент получения которых, он был равен 1.
Мерси
CreateDataSourse при разорванном соединении
 
Всем доброго дня. У меня есть некий сканер, который раз в день проходит по всем бумагам заданного класса и смотрит ряд индикаторов.
По каждой бумаге вызывается CreateDataSourse.
Довольно часто бывает что в процессе обхода рвется соединение. При этом скрипт продолжает работать.
Помогите пож. понять как CreateDataSourse работает при разорванном соединении?
Как отделить данные, которым можно доверять от тех, которым доверять нельзя, чтобы после восстановления соединения не делать весь обход заново?
копирование datasource и манипулирование его данными, моделирование "что если" с техническими индикаторами
 
Придумал как делать.
Копируем datasource в таблицу.
При расчете индикаторов по таблице используем VType= ANY
копирование datasource и манипулирование его данными, моделирование "что если" с техническими индикаторами
 
Приветствую

Есть datasource (ds), по нему построен некий индикатор.
Хочется понять насколько должна измениться цена инструмента, чтобы индикатор достиг заданного порога.

Например, инструмент движется в сторону перекупленнности. RSI приближается к 0.9, но еще не достиг этого значения.Нужно определить х = сколько еще осталось расти в цене, чтобы RSI коснулся/пересек порог = 0.9.

Буду благодарен за подсказки и идеи?
Есть какая-то структура данных, для которой одновременно можно:
- самому устанавливать цену последней свечи, добавлять новую свечу;
- рассчитывать значения стандартных индикаторов, не меняя их код?
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
вроде разобрался, спасибо за участие
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
Вот это условие никогда не выполняется ( it.l >= P), и, соответственно, tmp.p функция не отдает.

if it.l >= P then
 return tmp.p
end
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
--[[Exponential Moving Average (EMA)
EMAi = (EMAi-1*(n-1)+2*Pi) / (n+1)]]
function F_EMA()
local tmp = {pp=nil, p=nil}
local it = {p=0, l=0}
return function(I, P, VT, ds)
if I == 1 then
tmp = {pp=nil, p=nil}
it = {p=0, l=0}
end
if CandleExist(I,ds) then
if I~=it.p then
it = {p=I, l=it.l+1}
tmp.pp = tmp.p
end
if it.l == 1 then
tmp.p = GetValueEX(it.p,VT,ds)
else
tmp.p = (tmp.pp*(P-1) + 2*GetValueEX(it.p,VT,ds)) / (P+1)
end
if it.l >= P then
return tmp.p
end
end
return nil
end
end
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
ппц, не могу картинку вставить :(
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
[img]file:///C:/TEMP/08/EMA.png[/img]
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
Вот здесь:


[img]data:image/png;base64,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[/img]
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
Цитата
BlaZed написал:
Dr Wed, у вас источник данных не успевает загрузиться.
Добавьте после
Код
   ds  =   CreateDataSource ( "TQBR" ,  "LKOH" , INTERVAL_M1)  
ожидание загрузки источника данных
Код
     local  n =  0 
   while (ds: Size () =  =  0 ) and (n <  100 ) do   sleep ( 100 ) n = n +  1   end   
должно помочь
Этот вариант я рассматривал, код усовершенствовал, но не в этом дело. Источник я проверяю, он есть, ds:Size() > 0.

Почему-то nil возвращает сама функция расчета EMA.
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
Цитата
BlaZed написал:
Цитата
Dr Wed написал:
Hola

Можно ли в скриптах вызывать индикаторы теханализа для использования их значений при обработке свечей?
Естественно, хочется обойтись без открытого графика по инструменту.
Легко, в скрипте рассчитываем самостоятельно нужный индикатор.
Благо арка даже выложила архив с индикаторами написанными на lua  https://arqatech.com/upload/iblock/398/INDICATORS.zip
@BlaZed, спасибо за наводку.
Пытаюсь использовать пример из этого архива https://arqatech.com/upload/iblock/398/INDICATORS.zip. Тот, что есть в readme_LuaIndicators.
MA() возвращает nill. Никак не удается сдвинуться с места.
Буду признателен за идеи, подсказки..



--Пример расчета индикатора Moving Average по источнику данных созданному через CreateDataSource:
dofile(getWorkingFolder().."\\LuaIndicators\\MA.lua")
function main()
 func = MA()
 t_id = AllocTable()
 AddColumn(t_id,1,"Price",true,QTABLE_INT_TYPE,10)
 AddColumn(t_id,2,"MA",true,QTABLE_INT_TYPE,10)
 CreateWindow(t_id)
 SetWindowCaption(t_id,"MA")
 ds = CreateDataSource("TQBR", "LKOH", INTERVAL_M1)
 sleep(100)
 for i=1,ds:Size() do
  ma_out=func(i, {Period=9, Metod = EMA, VType=CLOSE}, ds)
  tmp=InsertRow(t_id,-1)
  SetCell(t_id,tmp,1,tostring(ds:C(i)),ds:C(i))
  SetCell(t_id,tmp,2,tostring(ma_out),ma_out)
 end
end
Дневные свечи SPBXM, В какую свечку попадают вечерние данные
 
В кривых ответах во вчерашней D свече не учтены данные, начиная с 14:00 ти до конца сессии.
На более мелких таймфреймах работает нормально.
Дневные свечи SPBXM, В какую свечку попадают вечерние данные
 
Если кому интересно, то накопал, что разные брокеры выдают разные данные.
Например, от ВТБ идут кривые дневные свечи. От Открытия - нормальные.
Дневные свечи SPBXM, В какую свечку попадают вечерние данные
 
Или все, что с 14:00 это уже свеча следующего дня?
Дневные свечи SPBXM, В какую свечку попадают вечерние данные
 
Hola
Не могу понять где проходит граница между дневными свечами SPBXM.
Сегодня 28.05, Америка еще спит.
Последняя свеча D1 включает данные только за сегодня, т.е. 28.05?
Или же сюда попадает то, что наторговалось вчера вечером (29.05 после 16:30)?
Вызов индикатора в скрипте, Использование значений индикаторов при работе со свечками
 
Hola

Можно ли в скриптах вызывать индикаторы теханализа для использования их значений при обработке свечей?
Естественно, хочется обойтись без открытого графика по инструменту.
Выгрузить в файл / вычитать из файла, Выгрузить в файл / вычитать из файла
 
Что-то в нете есть, вот, например https://quikluacsharp.ru/qlua-osnovy/primer-raboty-s-fajlami-v-qlua-lua/

Как можно в таблицу текущих торгов из файла затолкать пока не ищется.
Выгрузить в файл / вычитать из файла, Выгрузить в файл / вычитать из файла
 
Подскажите где искать функции для работы с фалами?
Как, например, выгрузить в файл результаты работы скрипта?
Как из файла вычитать коды инструментов и загнать их в таблицу текущих торгов?
CreateDataSource в цикле по большому списку, Анализ свечей по большому количеству инструментов
 
А где еще можно взять свечи, кроме как через CreateDataSource?
Научите, с удовольствием попробую.
CreateDataSource в цикле по большому списку, Анализ свечей по большому количеству инструментов
 
Вытащил запросом GetClassSecurities все акции SPB (около 1400 шт.).
Теперь хочу по ним пройтись и по каждому инструменту посмотреть свечи, т.е. CreateDataSource в цикле по большому списку.
Это допустимо с т.з. нагрузки на quik?
Надо учитывать какие-нибудь тонкости?
Список инструментов из табл. текущих торгов, Список инструментов из табл. текущих торгов
 
Если точнее - для каждого из заданного списка инструментов вытащить Low за последние N дней/часов
Список инструментов из табл. текущих торгов, Список инструментов из табл. текущих торгов
 
Благодарю за подсказку.
Буду благодарен еще за такую наводку - как тащить свечки по интересующему инструменту? Например, нужен Low за последние N дней или часов.
Список инструментов из табл. текущих торгов, Список инструментов из табл. текущих торгов
 
Приветствую

Создал табл. текущих торгов. Добавил в нее несколько инструментов.
Какой функцией можно вытащить весь список инструментов из этой таблицы, чтобы можно было пройтись в цикле по каждому из них и выполнить какие-то действия (например, проверить значения индикаторов)?
Страницы: 1
Наверх