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

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

Страницы: Пред. 1 ... 51 52 53 54 55 56 57 58 59 60 61 ... 80 След.
Индикатор работает, но выдает ошибку, Просьба поправить код, чтобы не было ошибок
 
Цитата
Денис Лихачев написал:
function OnCalculate(index)
local VolUp = nil
local VolDn = nil
if V(index)>V(index-1) then VolUp=V(index); else VolDn=V(index); end
 return VolUp,VolDn;
end
У вас выводится  V(index),   а оно есть.
-----------------
Получить в индикаторе значение цены ещё до OnCalculate()
 
можно так:
----------------
function oncalculate(indx)
if bar1 then
-- основное тело
else
bar1 = C(1)
end
--------------
Удаление элемента из массива, который прошёл проверку
 
...
         table.remove(sec_code,k)
...
Удаление элемента из массива, который прошёл проверку
 
примерно так:
...
     for k,bumaga in ipairs(sec_code) do
     LowDnya = getParamEx (class_code, bumaga, "LOW").param_value
     Last = getParamEx (class_code, bumaga, "LAST").param_value
     Raznica = math.abs(LowDnya - Last)
        if Raznica > 1 then
        message(tostring(bumaga .. " " .. Raznica ))
          table.remove((sec_code,k)
        sleep(3000)
        end
     end  
 
требуется скрипт, Нужно написать скрипт за вознаграждения. Посоветуйте специалиста
 
Цитата
Anton написал:
Цитата
Александр написал:
и должны быть к этому готовы
Тут лучшая готовность - работать с теми, кто не первый год замужем, там народ адекватный в основном и запросы у них адекватные, как в плане временные затраты vs бюджет, так и в плане самой постановки вопроса.

Цитата
новичок написал:
отсюда вывод, что не все понимают природу отрытых динамических систем
А можно и еще проще подойти. Пусть наш программист, хорошо понимающий в бирже, делает стабильные (учетная ставка + 10)% годовых за вычетом костов. Это уже как бы отметает вариант "ваще не шарит", да? Поскольку учетную ставку надо на депозите оставлять (иначе этот трейдинг вырождается просто в постепенное прожирание депозита), чистыми "на прожор" он получает 10% годовых. Ок, посчитаем, сколько ему надо держать на бирже, чтобы вынимать в месяц хотя бы зеленую штучку. Подсчет конкретных циферок оставляется в качестве упражнения заинтересованному читателю. Также ему оставляется решить, очень ли здорово торчать у компа с десяти до девятнадцати (а то и двадцати трех пятидесяти) пять дней в неделю за плюс-минус озвученный прайс, когда можно либо а) торчать восемь часов в день за куда более интересный прайс, либо б) вообще не торчать и заниматься тем, что интересно (например, написанием не совсем тривиального кода) в удобном для себя графике.
Часто в головах начинающих  наблюдается путаница в понимании кто и что знает
Знать что и как на бирже - это одно
А уметь написать по тех заданию скрипт для квика - это совершенно другое
Чтобы написать скрипт не надо ничего знать о бирже надо изучить луа и квик.
Как правило "гениальный" алгоритм торговли придумывает начинающий
Очень часто "гениальность" алгоритма  обратно пропорциональна знаниям  очередного "гения" торговли.
требуется скрипт, Нужно написать скрипт за вознаграждения. Посоветуйте специалиста
 
Знаю  по форуму www.bot4sale.ru давно
Появился он в первый раз в результате скандала.
Я за него заступился, о чем потом пожалел.
Скандал был связан с тем, что один его заказчик заказав скрипт на луа получил зашифрованный вариант.
Стал возмущаться, что он просил текст а ему код.
ну и так далее...
Полагаю что чел либо сам писать умеет либо ему кто-то пишет.
Об уровне его разработок ничего сказать не могу, не знаю.
---------------------------------------
В защиту писателей замечу,
что у потенциальных заказчиков часто очень низкий уровень понимания задачи и отсюда расплывчатое т з
типа - хочу все быстро и дешево.
Но дешевых роботов не бывает,
а прибыльных в интернете вы тем более не купите.
Но это уже другая история.
экспорт данных из скриптов
 
Добрый день,
Собрал новую версию своей библиотеки для QLUA экспорта данных (числа, строки , элементы таблицы) из скриптов.
Отличается от известных тем, что экспорт осуществляется через ссылки .
Пока вариант для 32 бит.
Если есть желающие и умеющие тестить , стучитесь.
GetInfoParam("SERVERTIME"), не всегда срабатывает
 
для информации
из своего опыта.
1) синхронизируйте комп с сервером точного времени (атомными часами) в итоге время сервера биржи будет совпадать с временем компа и как правило с сервером брокера с погрешностью не более 100 мс (можно получить и 10)
2) сверните  окна в квике, которые не используете . Открытые графические окна могут сильно тормозить
3) по возможности закройте все приложения особенно браузер ( я для браузера и прочего использую второй комп)
Успехов
Получение данных из Доски опционов
 
если пишите на СИ,
то через DDE и API C для  LUA
Торгуемые классы
 
Из своего опыта.
Определял по нулевым параметрам.
делал давно,
поэтому конкретный параметр уже не помню, а в свалке искать лень.
При получении цены с графика иногда приходит ноль.
 
Цитата
новичок написал:
Цитата
Николай  Камынин написал:
это же система реального времени
это  ВООБЩЕ  не система реального времени.
даже приблизительно.
не путайте людей.
я вас не путаю,
Полагаю Вы просто не понимаете
чем отличается система обработки данных реального времени
от ОС РВ.
А это две большие разницы.
-----------------
Поясняю кратко:
система обработки данных реального времени -
это аппаратно-программный комплекс , который должен обработать поступивший квант  данных до прихода следующего.
в противном случае происходит как минимум накопление необработанных данных и  потеря актуальности результатов.
--------------------
Про ОС РВ вы полагаю знаете, поэтому пояснять нет смысла.
===============
торговый робот - это система обработки данных в реальном времени
т е для прогноза на тик надо успеть обработать результат сделки до поступления следующего
иначе результат будет не актуальным
Примером таких систем являются HFT роботы.
Линии тренда
 
Цитата
Александр написал:
Николай  Камынин, Мне нет) Хочу наклонную.  
на картинке  160403_000.jpg  есть наклонные линии
они вычисляются по экстремумам и строятся на графике.
можно вычислить и построить  любые наклонные линии
Торговый робот forex, Поделитесь опытом
 
На форексе игроков всегда имеет торговый робот брокера,
так как форекс - это внебиржевой рынок
Теханализ фьючерса на ртс имеет ли смысл, это же усредненные данные по многим инструментам?
 
На самом деле если вы не используете  
гадание по кофейной гуще или подбрасывание монеты для совершение сделок,
то вы используете технический анализ.
---------------------------
Просто большинство игроков этого не понимают,
так как для них тех- анализ ограничивается чтением популярных книжек про то, как стать ...
--------------------
В итоге - если Вы не знаете что такое тех анализ и зачем его применяют, то смысла нет,
но вы от него не избавитесь..
=================
Чтобы было понятнее
Пример тех анализа:
Вы берете цену последней сделки и предыдущей и
делаете ПРОГНОЗ изменения цен в следующий момент
вычисляя разницу цен.
Ваш мозг это делаете всегда,
когда  Вы смотрите на график и пытаетесь угадать движение рынка.
--------------------------
Обращение к данным таблицы из индюка, Что-то наподобие БД через AllocTable
 
Цитата
AndyJOKER написал:
Цитата
Sergey Gorokhov написал:
 
Цитата
AndyJOKER  написал:
Весело.
Я правильно понимаю, что фактически в индикаторах можно использовать только данные    O, H, L, C, V, T    ,    Size   ?
 
Нет, категорически не верно, можно и другие данные, зависит от того что Вам нужно.
Если Вам нужно получить данные в индикаторе из другого скрипта, то почему бы не воспользоваться обменом через файлы? Один сприпт пишет в файл, другой читает.
Эммм, несколько странно слышать это от Вас, как от разработчика.    Разумеется, у меня большая часть подобного "обмена" реализована. Не не через файлы, а через mysql. Но это же костыль... Некошерно такое делать. Согласитесь, что намного быстрее и удобнее обращаться к таблицам внутри памяти квика (не важно "стандартные" или созданные юзером) через getcell или getitem, чем вешать индикатор ожидая обращения к файлу или запроса от БД?
Интересно, в чем проблема в реализации? Много обработчиков писать?
проблема в том, что надо синхронизировать потоки.
так как  написание скриптов игрушка сугубо для клиентов брокеров,
то разработчикам нет смысла с этим заморачиваться.
Если очень надо -пишите сами.
Я именно так и делал.
В итоге у вас не будет дублирование одной и той же информации в различных скриптах
и ускорится работа скриптов так как не надо будет много раз вызывать одни и те же колбеки.
Несколько вопросов по оптимизации производительности
 
Рекомендую отключить опцию  "Исходя из настроек открытых  пользователем таблиц" навсегда
и настроить квик  вручную
так как нет надобности каждый день  перестраивать все заново.
------------------
В итоге будете точно знать что у вас приходит.
Линии тренда
 
Примеры рисования в QUIK на луа.
Мне этого достаточно,
а Вам?
При получении цены с графика иногда приходит ноль.
 
скорее всего причина - ошибка в алгоритме получения
это же система реального времени с асинхронным приходом данных.
Вы это учитываете?
Индикатор с линиями заданной длины, Индикатор с линиями заданной длины
 
если надо чтобы правый конец линии был прижат, то на каждой новой свече надо добавить справа и удалить слева одын значения.
Индикатор с линиями заданной длины, Индикатор с линиями заданной длины
 
это сделать просто
надо задать условие границ
и при выходе за них выводить  значение NIL
callback OnParam(args) and getParamEx2(args), Тип данных параметра (param_type) отсутствует в описании QLUA.chm
 
просто false означает, что все остальное -ложь. и 0 и 1 и 2 и 3
Какая разница что там записано 0 или 99999 если это false.
Исключение незавершенных свеч
 
Цитата
eSKon2 написал:
Добрый день.
Подскажите как в индикаторе проверить что свеча незавершенная.
Иначе получается, что значения сохраняемые через замыкания, постоянно обновляются во время изменения последней свечи, как результат весь индикатор считается правильно только при перерисовке с нуля, динамически он уже нормально не работает.
очень просто, если время свечи текущего отсчета равно времени предыдущего, то свеча не завершена.
еще есть флаг закрытой свечи (см док на QLUA)
Доска опцинов из QLUA
 
Цитата
Андрей написал:
Всем привет!

А как получить доступ к данным доски опционов из QLUA?
Не нашел эту таблицы в списке доступных....  
можно через DDE, но халявы нет .
ODBC-экспорт. Мониторинг, Проверка флагов ODBC-экспорта.
 
Цитата
Anton написал:
Цитата
   s_mike@rambler.ru написал:
Как показывает практика, ODBC и DDE вряд ли получится заставить работать стабильно и надежно.
За ODBC не знаю, а DDE вполне себе надежно работает, если аккуратно серверную часть сделать. Другое дело, что чуть какая предобработка нужна и все равно придется подпиливать костылики на луа, и тут появляется фактор "ой, я DDE стартанул, а скрипт забыл запустить", так что в итоге все верно сказано, луа как луа или луа как интерфейс к сям-плюсам - единственный удобный вариант.
стартуйте DDE  в скрипте LUA внешним скриптом например на AutoiT
ODBC-экспорт. Мониторинг, Проверка флагов ODBC-экспорта.
 
Цитата
danich написал:
На форме ' Вывод по ODBC ' есть флаги ' Чистить таблицу ', ' Формальные имена ' и кнопки ' Н  ачать ' и ' Прекратить '.
Как в lua-скрипте пров  ерить значения флагов и состояние кнопок ?
написать внешний скрипт c hook
OnOrder, снятие заявки
 
и главное зачем скрипту знать, что сняли по заявке пользователя или другого бота?
------------------------------
какой любопытный скрипт вы написали.
OnOrder, снятие заявки
 
Цитата
Старатель написал:
Скрипт отправляет транзакцию на снятие заявки.
Допустим, OnOrder получен раньше или OnTransReply вообще не пришел.
Есть возможность установить инициатора снятия: сам скрипт, пользователь (вручную) или, может, другой бот?
если скрипт отправил заявку, то он знает это
если заявку сняли но он не отправлял то тоже знает.
кому надо устанавливать инициатора?
Вопрос по скрипту индикатора Bollinger Bands
 
поясню откуда что берется.
Данная формула берется из следующей гипотезы.
Полагаем что цена отклоняется от оценки среднего значения случайным образом по гауссовскому закону плотности вероятности отклонения
тогда с вероятностью 0.95 имеем 1.96*ср.квадр
-----------------
Но это гипотеза не верна (доказано в прошлом веке)
так как закон распределения цены не нормальный
следовательно центр тяжести нельзя считать как среднее
следовательно закон двух сигма не работает
------------------
Резюме:
алгоритм этого индикатора такой:
Берете любой  фильтр например скользящее среднее
вычитает его из цены
сглаживаете фильтром модуль ошибки
и прикручиваете к первой линии еще две
никакой существенной разницы нет какие формулы вы применяете.
так как особого тайного смысла как и ценности в них тоже нет.
======================
Вообще-то  зачем городить расчет индикатора когда он есть в КВИКЕ
поставьте метку и читайте значения в своем скрипте
Зачем изобретать дырку от бублика.
Локальность переменной
 
Вы же не сказали сколько "быстро" и сколько у Вас сейчас.
Если серьезно, то все познается в сравнении.
возьмите время пинга да сервера брокера
прибавьте время реакции сервера на ваше послание
добавьте время проверки ваших лимитов
прибавьте время кванта ваших задач на компе.
добавьте время вычисления вашего скрипта луа
Получите примерно от 0.2 сек до 10 сек и более
то что Вы пытаетесь сделать даст Вам примерно 0.01 сек.
Вам это надо?
Локальность переменной
 
добавлю
строка
row=getItem("orders",i)
означает
присвоить переменной row, которая определена в локальной таблице скрипта,
значение функции getltem которая определена в локальной таблицы библиотеки QLUA
которая определена в глобальной таблице VMLua
Ну как быстрый вызов получается?
Ema lua
 
Цитата
Sergey написал:
Здравствуйте, подскажите пожалуйста код функции EMA, или подробный алгоритм, в нэте туча подобных алгоритмов
EMA (t) = EMA (t-1) + 2 *(P(t) – EMA (t-1))

EM=Price(t)×k+EMA(y×(−k)

хоть они и разные и во всех их не могу одного понять!
EMA (t) =   EMA (t-1)   + 2 *(P(t) –   EMA (t-1))  

EM=Price(t)×k+  EMA(y×(−k)
 
откуда мне знать чему будет равен EMA (t-1) и тд, если я его только хочу вычислить, просто для меня это звучит так, подходит ко мне человек с потерей памяти и спрашивает меня, сколько ему лет, а я ему говорю, ЛЕТ=(Лет-1) + 1 О_о так он же не знает сколько ему было лет, и сколько есть.
Кратко примерно так:
это простейший фильтр
EMA - это сигнал на его выходе
P - это сигнал на его входе
В начальный момент вы его включаете.
Как телевизор
EMA(t-1) - это то что было на его выходе до включения (как телевизор) - ничего т е ноль
ноль был и в момент t-миллион
-----------------
В программах любых фильтров делается блок инициализации, в котором вы должны задать начальные значения всех переменных
В простейшем случае они равны нулю
Но лучше задавать их равными сигналу в начальный момент это уменьшает переходной процесс в фильтре
примерно так
подробнее читайте в учебниках по теории цифровой фильтрации сигналов
биржа или брокер?
 
Цитата
Let_it_go написал:

биржа штрафует за ошибочные транзакции.
хочу уточнить - если я вижу такое сообщение, значит моя транзакция не долетела до биржи и отбита сервером брокера?
никто вас не штрафует.
либо нет денег либо нет заявки и она уже исполнена
иногда такое сообщение появляется при снятии заявок
хотя заявка успешно снимается.
Индикатор фрактал
 
выкиньте этот код и напишите новый.
индикатор фрактал имеет  очень простой алгоритм
примерно так:
если максимум текущей свечи меньше максимума предыдущей то ищем вершину в прошлом
аналогично для минимума
Подумайте над этим
Отладчик, статистика для теста робота и непонятный висяк, C++ интеграция
 
Вы в одну кучу свалили множество самостоятельных задачи и пытаетесь их разом решить.
их надо решать последовательно и независимо друг от друга.
Тогда решите за обозримое будущее и с меньшими потерями.
==========
QLUA  -это лишь библиотека  для VM Lua
----------------------
В  своем посте вы обозначили следующие задачи:
1) Изучение языка луа
2) изучение API С для lua
3) оболочка API C для C++
4) изучение функций библиотеки QLua
5) методы исследования рынков
6)  методы построения систем реального времени  обработки сигналов
------------
Подумайте над этим
2-x кратный расчет индикатора
 
исправил так:
...
function onCalculate(m)
if countX==0 and Size()>m then return end
countX=m;
...
end
2-x кратный расчет индикатора
 
Проблема расчета решается, но на втором проходе удаляются юзер индикаторы, рисуемые на первом проходе.
2-x кратный расчет индикатора
 
проблему решил следующим образом:
-----------------
local  countX;
...
function Init()
countX=0;
....
end
...
function onCalculate(m)
if countX>m then return else countX=m end
...
end
-----------
Стакан или Текущая таблица
 
Цитата
Let_it_go написал:
Записываю лучшие биды и аски по акциям средней ликвидности, например Распадская RASP.
Что лучше выбрать: OnParam или OnQuote?
Сомнения связаны с тем, что текущая таблица транслируется срезами раз в 50 миллисекунда, то есть будут пропущенные данные.
А стакан? Он транслируется срезами или безостановочно?
таблица проще.
хрен редьки не слаще.
на результат торговли никак не влияет, если Вы не "в яме"
Кто не согласен, попробуйте доказать результатом.  
FFi libary, ffi помощь
 
на форуме телепатов нет.
покажите скрипт, что делаете и какие ошибки получаете.  
Сократить запись
 
поставьте редактор текста SciTE
Он написан на луа и содержит компилятор луа.
И в нем наберите свой пример и нажмите кнопку Go.
И получите ответ.
Индикатор(написанный мной) не передает данные на экран в текущем времени, Проблемс
 
Цитата
Atom написал:
Точнее на миллисекунду появляется и исчезает  и если не подождать одну свечку, то и при удалении индикатора  и снова добавлении не показывает, т.е. нужно подождать хотя бы свечу одну и потом перезапустить, чтобы отобразился знак, вот что за хрень?
вам виднее, на форуме все телепаты в отпуске.
2-x кратный расчет индикатора
 
Спасибо.
вспомнил.  
2-x кратный расчет индикатора
 
Добрый день,
Если вопрос уже обсуждался,просьба дать ссылку.
Почему скрипт индикатора при его установке в окно рассчитывается два раза
Т е если поставить вывод индекса
то получим его изменение от 1 до мах два раза.
------------
Спасибо
перехват ошибки
 
Добрый день,
возможно проблема решена, тогда просьба дать ссылку.
Писал об этой проблема лет надцать назад, но воз и ныне там.
--------------
Прошу разработчиков решить следующую проблему.
Если в скрипте индикатора есть  сравнение с nil, то выводится окно ошибки ,
которое фактически блокирует возможность снять скрипт особенно в период сессии на боевом квике.
если это не торговый режим,  то хрен редьки не слаще. Приходится ждать всю историю данных..
--------------
Поэтому просьба сделать одно из двух
1) автоматическое снятие скрипта при возникновении подобной ошибки исполнения
2) возможность перехватить ошибку и сделать аварийный выход из скрипта
--------------
Спасибо  
Получение данных таблицы котировок
 
Цитата
Дмитрий написал:
Sergey Gorokhov,спасибо, понятно. В общем связать обезличенные (стакан) и личные (свои заявки) данные можно только по косвенным признакам, то есть цене и объёму, что и явствует из природы этих данных
попробую пояснить основы, которые дают ответ на ваш вопрос.
На бирже вас вообще нет, там есть лишь брокер.
Поэтому ваша заявка фиксируется брокером в своих внутренних записях и фактически возвращается в строку стакана вне зависимоcти от информации с биржи.
Это Вам только кажется что Вы видите свою заявку на бирже. в действительности она даже может и не дойти до биржи,
так называемый механизм встречных заявок в основном использовался на форексе, не факт что используется в КВИКЕ.Но нет проблем его реализовать.
Индикатор Стохастик + Открытые Позиции, Помогите привязать Стохастик к значениям Открытых Позиций
 
Цитата
Imersio Arrigo написал:
Цитата
Николай  Камынин написал:
вообще-то Стохастик - это примитивный полосовой фильтр
Совершенно верно. Что абсолютно не противоречит следующему
не возражаю,
просто не понял, что означает
"надо, чтобы Стохастик брал необходимые данные по Открытым Позициям "
Кто такой стохастик в этом случае?
Возможно Вы хотите отфильтровать значения данных "Открытые позиции" этим фильтром.
В чем проблема?
Возьмите эти данные и вычислите по формуле стохастика. или Вы хотите, чтобы это кто-то для вас сделал?
Индикатор Стохастик + Открытые Позиции, Помогите привязать Стохастик к значениям Открытых Позиций
 
Цитата
Самвел написал:
Приветствую всех! Помогите пожалуйста. Суть вот в чем:
Необходимо с помощью Стохастика, рассчитанного за период в один год, получить данные Открытых Позиций.(Срочный рынок).
Как я понимаю, Стохастик  показывает текущее положение цены закрытия в диапазоне максимальных и минимальных цен за указанный период усреднения.
А  нужно, что бы Стохастик брал необходимые данные по Открытым Позициям.  
вообще-то Стохастик - это примитивный полосовой фильтр, с придуманной байкой о его связи с финансами на бирже.
Вы в это верите? А какие-нибудь доказательства этой галиматье вы видели?
Меньше верьте популярным книжкам И рекламе в интернете.
Где найти описание языка Lua. И другую полезную информацию.
 
Цитата
zv78 написал:
Цитата
Николай  Камынин написал:
 
Цитата
zv78  написал:
Здравствуйте. Где взять какое либо описание языка, и прочую информацию для написания скриптов в Quik. Посмотрел форум. Вижу вопросы на форуме задают. А где взять FAQ и информацию для первых шагов? И не только для первых..
 изучайте луа без привязки к КВИК
QLUA - это библиотека функций для работы с квиком.
----------------------------
начните с этого
 http://ilovelua.narod.ru  
и еще удобно использовать SCITE - редактор текста который написан на луа. В нем можно отлаживать и исполнить скрипты луа.
Спасибо. Ну как бы без привязки он мне не особо нужен)  
попробую объяснить второй раз.
QLUA  -это библиотека функций.
Вы знаете как вызывать функции в луа, какие есть переменные, что такое библиотека, как ее подключать , как работать с фалами, с таблицами и т д?
Нет, потому, что это все - включает в себя язык LUA.
------------------
А чтобы создавать торговых роботов,
кроме языка программирования надо еще знать еще много чего и не первым в этом списке QLUA.
Что же касается изучения QLUA ( если Вы знает язык LUA) то для этого достаточно описание QLUA, которое написали разработчики КВИК и еще описание КВИКА.
------------------
Вы же спросили про изучение луа.
Я Вам про это и сказал.
Уведомление, когда скрипт перестал работать/не запустился
 
наиболее надежно будет если поставить специальное приложение либо настроить службу винды на контроль за состоянием квика.
кроме того, не все ошибки библиотеки QLUA перехватываются квиком. Именно эти ошибки и приводят к полному зависанию либо закрытию квика.
Если надо решить эту проблему то надо ставить свой перехватчик ошибок (это на СИ с использованием API).
------------------
что же касается синтаксических ошибок то их надо отлаживать не на боевом КВИКЕ а в тестовых режимах и например в трансляторе редактора текстов SCITE.
Где найти описание языка Lua. И другую полезную информацию.
 
Цитата
zv78 написал:
Здравствуйте. Где взять какое либо описание языка, и прочую информацию для написания скриптов в Quik. Посмотрел форум. Вижу вопросы на форуме задают. А где взять FAQ и информацию для первых шагов? И не только для первых..
изучайте луа без привязки к КВИК
QLUA - это библиотека функций для работы с квиком.
----------------------------
начните с этого
http://ilovelua.narod.ru
и еще удобно использовать SCITE - редактор текста который написан на луа. В нем можно отлаживать и исполнить скрипты луа.
Страницы: Пред. 1 ... 51 52 53 54 55 56 57 58 59 60 61 ... 80 След.
Наверх