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

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

Страницы: Пред. 1 ... 66 67 68 69 70 71 72 73 74 75 76 ... 81 След.
Баг приводит к закрытию Quik - код индикатора прилагается, Баг-репорт
 
Код
local t_ind2={}
local len2;
  function   OnCalculate (index)
    if  index ==  1   then
      t_ind2={};
      len2=0;
   elseif   getNumCandles (Settings.ID) >=index  then
        local t,n,l =  getCandlesByIndex (Settings.ID,len2 ,index -  1 , 1 )
      if  n>0   then
         local i=0; while n>i do t_ind2[#t_ind2+1]=t[i] i=i+1; end
         return t_ind2[#t_ind2].close
        end
    end
 end

Баг приводит к закрытию Quik - код индикатора прилагается, Баг-репорт
 
и еще
Вы на каждый тик  читаете весь массив свечей с другого графика а это 3000 штук.
в результате большой тормоз.
Вот примерный код, как надо сделать (не отлаживал ошибки исправьте сами)
Код
local t_ind2={}
local len2;
  function   OnCalculate (index)
    if  index ==  1   then
      t_ind2={};
      len2=0;
   elseif   getNumCandles (Settings.ID) >=index  then
        local t,n,l =  getCandlesByIndex (Settings.ID,len2 ,index -  1 , 1 )
      if  n>0   then   
         local i=0; while n>i do t_ind2[#t_ind2+1]=t[i] i=i+1; end
         return t_ind2[#t_ind2]
        end
    end
 end

:
Баг приводит к закрытию Quik - код индикатора прилагается, Баг-репорт
 
попробуйте так:
Скрытый текст
Баг приводит к закрытию Quik - код индикатора прилагается, Баг-репорт
 
Возможно проблема возникает в операторе
t,n,l =  getCandlesByIndex (Settings.ID, 0 ,index -  1 , 1 )
если index-1 ,больше, чем число свечей на первом графике?
Баг приводит к закрытию Quik - код индикатора прилагается, Баг-репорт
 
Цитата
s_mike@rambler.ru написал:
почему бы просто не использовать
Функции O, H, L, C, V, T -


Потому что читается не родной график, а другой.
Понял, спасибо.
Баг приводит к закрытию Quik - код индикатора прилагается, Баг-репорт
 
Цитата
Максим написал:
Здравствуйте, уважаемые разработчики!

Я использую простой самописный индикатор "A" для отрисовки линии на графике. Значения для отрисовки этой линии индикатор берет из другого индикатора "Б" по его идентификатору. Оба индикатора расположены на разных графиках. Эти графики имеют разный таймфрейм и расположены  в разных окнах  одной вкладки.

Первый индикатор "A" копирует значения второго индикатора. Для отрисовки текущей свечки индикатор "A" берёт значение  предыдущей  свечки индикатора "Б".

В торговое время после запуска индикатора "A" может пройти от 20 минут до 4 часов и Quik стабильно зависает (в заголовке Quik появляется "программа не отвечает"). Приходится завершать процесс info.exe (не отвечает более 30 минут), размер потребляемой опер. памяти не увеличивается от нормы. Зависание происходит только когда включен индикатор "A". Баг проявляется, если в качестве индикатора "Б" использовать любой индикатор (например, встроенный индикатор простой скользящей средней).

Код индикатора "А" с комментариями:
Код
   local  t = {}
 local  n =  0 
 local  l =  0 
 local  value =  0 

 function   OnCalculate (index)
    if  index =  =  1   then   return   end              --проверяем если первая свечка, расcчёт не ведется 
    if   getNumCandles (Settings.ID) =  =  0   then           --Settings.ID содержит название идентификатора, которое задаёт пользователь 
       return                    --проверяем если индикатор "Б" не содержит свечек, рассчёт не ведется 
    else 
      t,n,l =  getCandlesByIndex (Settings.ID, 0 ,index -  1 , 1 )
       if  t[ 0 ].doesExist =  =  1   then           --проверяем если свечки нет, рассчет не ведется 
          if  t[ 0 ].close~ =  1e10   then        --проверяем если новое значение свечки не получено, рассчет не ведется 
             if  t[ 0 ].close~ = value  then  value = t[ 0 ].close  end 
            t[ 0 ].close =  1e10 
             return  value
          end 
       end 
    end 
 end 
  
Помогите определить почему после запуска индикатор "A" может работать от 20 минут до 4 часов в торговую сессию, а потом Quik зависает. Никаких ошибок в окне сообщений нет. Торгуемый инструмент USDRUB_TOM.

Версия Quik: 7.0.4.10 (англ. интерфейс)
Версия OS: Windows 7 SP1 (англ. интерфейс)
Ужасный пример индикатора!!!!
-------------------------
getNumCandles (Settings.ID) =  =  0   then           --Settings.ID содержит название идентификатора, которое задаёт пользователь
NUMBER getNumCandles (STRING tag) -Возвращает число – количество свечек по выбранному идентификатору
а Settings.ID содержит название идентификатора - что за ....?
----------------------------------------
t,n,l =  getCandlesByIndex (Settings.ID, 0 ,index -  1 , 1 ) - зачем читать набор свечей через ЭТО.
--------------------------------
почему бы просто не использовать
Функции O, H, L, C, V, T -
Функции в качестве параметра принимают индекс свечи и возвращают  соответствующее значение. Время свечи возвращается с точностью до миллисекунд в  виде таблицы с полями:
-----------------------------------------
.
LUA C++
 
Пользуюсь всеми механизмами совместного использования памяти
 
LUA C++
 
Цитата
seltor написал:
Для начала - да. Добавьте к этому работу с разделяемой памятью, ну и с заявками.
Я все это пользую в  луа.
LUA C++
 
попробую объяснить
dll -это библиотека и не важно на чем она написана.
Lua позволяет подключать dll.
Поэтому подключайте и работайте.
удивительное рядом!!!
 
полагаю, что это был глюк сервера брокера при формировании свечей.
свечи формирует сервер и обновил на открытие утренней сессии,
а таблица сделок осталась без изменений.
Вот и получили сделки там, где нет цен.
работа с фьючерсами
 
Ну тогда надо почитать что-нибудь.
И узнать,
что клиринг пересчитывает позиции и  суммирует Вам в Лимиты вар маржу.
Получается, что считать маржу надо лишь от клиринга до клиринга.
Т е всего за полдня , даже если Вы в позиции 3 месяца.
 
Будет ли работать КВИК (рабочее место пользователя)на дешевых Windows планшетах, Quik на windows планшете
 
Цитата
Grasp Grasp написал:
в описании рабочего места квика сказано, что он работает с более 2 ГБ оперативки
Я Вам написал из собственного опыта и указал,
что требуется оптимизация винды и настройка квика.
------------------------------------
А в описании сказано, что если 2 есть,
то и валенок сможет работать.
QLUA опционы
 
Цитата
Михаил Филимонов написал:
Сертифицированный наставник QUIK
Михаил,
а где Вы взяли такое название "Сертифицированный наставник QUIK" ?
Сами придумали?
или Вы проводите сертификацию?
Но Ваш уровень я понял.
-------------------------
Лучше быть, чем казаться.
Будет ли работать КВИК (рабочее место пользователя)на дешевых Windows планшетах, Quik на windows планшете
 
А какая винда?
----------------------
например на XP
можно работать с 1 гб ,
если  правильно настраивать винду
и квик.
работа с фьючерсами
 
Надо играть здесь и сейчас, а не вспоминать былые победы и поражения.
Как Вы думаете, зачем на фьючерсах клиринг устраивают в 14 и в 19?
-------------------------
не правильный у Вас бутерброт.


 
проверка статуса стопзаявки по битовым флагам, доступ к таблице "stop_orders"
 
немного поправим:
------------------
for Index = 0,getNumberOf("stop_orders") - 1 do  
local any = getItem("stop_orders",Index)
if any and bit.band(any.flags, 1) > 0  then
local OrderNumber =  any.order_num
message("Стопзаявка  № = "..tostring(OrderNumber).."  активна",1)
end
end
Вопрос по синтаксису Lua на пару строчек, Встретил в справочнике такое вот:
 
error message
Вопрос по синтаксису Lua на пару строчек, Встретил в справочнике такое вот:
 
читаем документацию:
It returns a new file handle, or, in case of errors, nil plus an error message.
ДемоКвик радует неожиданностями, Перестала работать функция
 
поставьте в месседже вывод кода инструмента при входе в колбек
ДемоКвик радует неожиданностями, Перестала работать функция
 
а где присваиваются значения
p_classcode и p_seccode
Индикатор
 
пардон, опечатка:
почта на сайте www.kamynin.ru
Индикатор
 
могу,
присылайте на почту тех задание и свою цену,
если приемлемая, то обсудим детали.
почта на сайте www.kamynyn.ru
видимо баг в getNumCandles и getCandlesByIndex
 
1) а это что за библилотека?require ('math')
2) поставьте slep больше от 200
удивительное рядом!!!
 
Цитата
Imersio Arrigo написал:
А на сайте биржи какие цены за этот период?
плиз, ткните, где их можно увидеть?
удивительное рядом!!!
 
Добрый день,
Последнее время  получаю вот такие фокусы.
Вчера на вечерней сессии совершены сделки. А сегодня я вижу, что таких цен вчера не было, а сделки по таким ценам есть.
т е цены были 10730, а мне впапродали по 10830.
брокер  меня разводит или биржа химичит или КВИК портачит?
Ваше мнение?
Звуки, Вопрос
 
еще добавить синтезатор речи с регулировкой интенсивности
и голосовое управление.
Например, ты ему говоришь:  QUIK -деньги!!!
А он тебе  в ответ: Размечтался!!!
MOVE_ORDERS
 
http://forum.moex.com/viewtopic.asp?p=59971
Операция в таблице всех сделок, покупка или продажа - это как?
 
пояснение рыночной заявка называется потому, ее цена будет заведомо самой лучшей и она совершит сделку с первой в противоположной очереди.
Операция в таблице всех сделок, покупка или продажа - это как?
 
поправка к пред ответу:
не хуже, а лучше.
QUIK версия 7.1 (вопросы)
 
все иконки на рабочем столе дрожат.
Наверное чувствуют, что надвигается что-то ...
QUIK версия 7.1 (вопросы)
 
при запуске квика (перед открытием окна квик)  дергается изображение на двух мониторах.
QUIK версия 7.1 (вопросы)
 
пардон alt/L закрепить , alt+B - убрать.  Но блокировка выскакивает нажимаешь alt+B заголовок не появляется нажимаешь alt+L - происходит блокировка с запросом пароля нажимаешь alt+B - появляется заголовок окна.
примерно так
QUIK версия 7.1 (вопросы)
 
При попытке включить заголовок окна Alt/L  иногда включается блокировка компьютера.
Прикольно.
Ошибка "Неверный код клиента" при выставлении заявок, Не проходят заявки выпадает ошибка
 
брокер забыл Вас подключить.
потом вы напомнили о себе.  
бывает и круче.
QUIK версия 7.1 (вопросы)
 
Добрый день,
Поставил для тестирования версию 7.1.0.381 (юниор)
Вопрос 1:
При открытии окна меню сначала мелькает окно цветное,
потом становится черно-белое (настройки цветов в дистрибутиве)
----------------------
Вот это мелькание так и будет? или это баг, который уберут?
----------------------
При этом заметил следующий прикол
Если окно терминала на первом мониторе,
то мелькает пустое белое окно,
а если на втором то мелькает окно,
в котором виден рабочий стол.
---------------------------------
std::recursive_mutex и cинхронизация потоков в Lua
 
Цитата
тот самый написал:
Цитата
Николай  Камынин   написал:
почему LUA-поток - сродни корутинам.
это и есть корутины других луа потоков я не знаю а Вы?
сумничал, что ль?
т е сам не знаешь что сказал? Бывает, не переживайте.
std::recursive_mutex и cинхронизация потоков в Lua
 
Цитата
тот самый написал:
Цитата
Вячеслав   написал:
Да, создаются 2 системных потока, да, в каждом из них выполняется lua_pcall
Всегда, при разговоре на эту тему - разделяйте понятия:
системный поток - это НЕ LUA-поток, а поток ОС
LUA-поток - это не поток ОС. LUA-поток - сродни корутинам.

В самой LUA - никакие системные потоки - не создаются
почему LUA-поток - сродни корутинам.
это и есть корутины других луа потоков я не знаю а Вы?
std::recursive_mutex и cинхронизация потоков в Lua
 
все решается с помощью одного event,
функций sinsert  и sremove
и использованием глобальных переменных.
std::recursive_mutex и cинхронизация потоков в Lua
 
причем лишь запись данных.
std::recursive_mutex и cинхронизация потоков в Lua
 
Цитата
Вячеслав написал:
Цитата
которые как раз и вызывают функции из lapi.c
имеется ввиду, что функции из lapi.c вызывают внутренние функции в библиотеке Lua, и их же вызывает luaV_execute напрямую. Например,  lua_settable  вызывает  luaV_settable , которую напрямую (через макрос) вызывает luaV_execute.
Причем здесь вызов функций?
Синхронизировать надо обращение к данным, а не к коду функций.
Вы что-то путаете.
ТВС
 
работаю на 6.17.3.6
ТВС
 
Цитата
Sergey Gorokhov написал:
Цитата
Николай  Камынин   написал:
но это же не тоже самое,
Тиковый график строится по таблице обезличенных сделок самим терминалом а не сервером.
Поэтому заказав тиковый график Вы тем самым заказываете таблицу обезличенных сделок
Так как это одно и тоже.
Данное утверждение Sergey Gorokhov оказалось не соответствует реальности.
Открытие источников тиков не привело к работе OnAllTrade, пока не отрыл таблицу ТВС.
Прошу уточнить, как заставить работать OnAllTrade из QLUA на тиках без открытия ТВС
Спасибо
ошибка в изображении сделок
 
Уточняю
Торговая сессия на фьючерсах сегодня начинается вечером вчера
У меня всегда, сделки,
совершенные вчера после 19-00,
отображаются сегодня.
Т е вчера в 23-50 закончили торговать комп выключили
сегодня в 9-55 -комп включили запустили квик и торгуем
Сделки от вчера вижу и сейчас.
ошибка в изображении сделок
 
Добрый день,
на представленной картинке стрелки вверх и вниз - это отображение сделок вечером вчера.
Вчера они были на графике цены , а сегодня вне его.
Это не мой скрипт, а отображение терминалом совершенных сделок.
Кто может объяснить?
Спасибо
не выгружается info.exe
 
приведен код функции
вставьте ее в скрипт и вызовите с указанием кода инструмента класса
(полагаю вы знаете как это сделать, я то же)
У меня все работает, лишь при закрытии надо убивать процесс
не выгружается info.exe
 
знаю что спасение утопающих - дело рук самих утопающих.
Но тонущим хочется верить,
что на берегу появится герой или трезвые спасатели.
не выгружается info.exe
 
это полный код
версия 6.17.3.6
Я помню раньше нельзя было открывать источники в потоке колбеков, Приходилось их лепить в майн
Если эта проблема осталась, то я опять наступил на теже грабли в сарае.
Когда имеет смысл использовать .bin файл ? И как их использовать ?
 
Цитата
Ярослав С написал:
Столкнулся с проблемой с хранением данных.
  Не могу понять где лучше хранить обработанные роботом данные: в памяти компа, в файле .txt, .bin или еще где.  
Для моего визуального просмотра мне эти данные не нужны, поэтому думаю их всунуть в файл в .bin файл так как они есть, то есть в двоичном коде. Плюс скорость записи в файл будет выше (поправьте, пжлста, если я не прав).
Но я столкнулся с еще проблемой - я не нашел описания записи в файл и чтения чисел(или массивов) из файл в виде числа, а не в виде строки.
(Помню, в Delphi запись массивов в файл делалась в касание)

У меня робот будет обрабатывать все ликвидные эмитенты по ММВБ и FORTS, определяя их ключевые точки (условные точки разворота, поддержки и сопротивления).
Итого получится около 50 эмитентов.
Каждый эмитент будет иметь до 30 ключевых точек с 3мя стринговыми переменными и с 4мя вещественными переменными.
Обработка всех эмитентов займет предположительно до 1 часа.
Процессор компа - Intel Core i5 4200H CPU 2,8 GHz
ОЗУ - 8 ГБ
Места на жестком диске - дохера
Я когда-то выкладывал в свободном доступе библиотеку для луа записи в произвольном формате. Преимущество - скорость
Но вообще-то хранить в файлах нет большого  смысла, так как все есть либо в квике либо в отчетах
-----------------------------------
Как говорил классик " Вопрос, а Не женится ли мне, уже содержит ответ"
Зачем Вам это надо?
Для переворота надо чтоли два ГО?, Ошибка создания заявки. [GW][332] "Нехватка средств по лимитам клиента."
 
У вас есть обязательство купить в будущем и под эти обязательства биржа блокирует обеспечение
Теперь Вы хотите еще взять обязательства - продать в будущем и под эти обязательства биржа блокирует средства
Т е В результате у Вас три обязательства 1 - купить и 2 -продать.
Когда у Вас появятся встречные обязательства 2, то будет сделано сальдо и останется одно.
Но до сальдо Вы должны обеспечить деньги под все ваши обязательства.
Если кто-то даст в долг то тогда возьмете 2 а так пока один но за свои.
Поэтому нужны свои деньги еще на два  и того надо на три.
Для переворота надо чтоли два ГО?, Ошибка создания заявки. [GW][332] "Нехватка средств по лимитам клиента."
 
пардон, опечатка
Во-втором случае вы тоже покупаете контракт но на продажу
Т е всегда для покупки контракта и его держания на руках биржа берет залог.
Страницы: Пред. 1 ... 66 67 68 69 70 71 72 73 74 75 76 ... 81 След.
Наверх