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

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

Страницы: 1 2 3 4 5 След.
Если бы я был архитектором QUIK, Что стоило бы изменить в QUIK по-крупному
 
Цитата
nikolz написал:
- запуск коллбеков всех Lua-скриптов пользователя;Мое мнение:Колбеки не запускаются, а вызываются. Вызываются они в основном потоке, потому что иначе они не могут вызываться. Они и есть реакция на события в этом потоке.Вы знаете иной механизм вызова колбеков? Расскажите .
Как я понимаю человек предлагает вызывать колбеки в потоке Lua-скрипта.
Схема торговой программы
 
Цитата
nikolz написал:
Цитата Constantin  написал:Мне вот интересно - каждый пишет свою обвязку для роботов? Это не рационально. Нет общей?

Вы правы. Но бесплатных торговых систем для бирж не существует в мире.
Я тоже свою систему написал. Правда не торгую.
Схема торговой программы
 
Мне вот интересно - каждый пишет свою обвязку для роботов? Это не рационально. Нет общей?
Как запретить брокеру изменять настройки quik?, Обезличенные сделки
 
Цитата
И Г О Р Ь написал:
самое дебильное, что за пять лет что я трахаюсь с этими галками, добавили "умный заказ данных" при котором открывая стакан опциона весь квик виснет от 10 секунд до минуты. нельзя совершать сделки и т. п. Умный заказ - шляпа.
Вообще не понятно почему Quik так много качает данных с сервера. И лог у него большой.
Сравнение языков программирования
 
А для Lua без Jit'а какой результат?
Как правильно удалить элемент из массива со "сдвигом влево"
 
Можно перезаписать последним элементом массива, если порядок не важен.
Все индикаторы на Lua
 
У вас какая-то странная формула у скользящей средней SMMA. Не могли бы вы её расшифровать, а то я запутался в её смысле.
Take profit, Take profit
 
Цитата
Karina Dmitrieva написал:
Если же, со своей стороны, Вы хотите предложить изменения в работу данного алгоритма - просим Вас более подробно описать, как именно должна работать условная заявка типа "Тейк-профит" с Вашей точки зрения.Заранее благодарим.


ИМХО, надо чтобы цена выставлялась не ниже чем: цена тейк-профита минус отступ минус спред, при любом движении цены.

Ведь когда тейк-профит выставляется пользователем,  то он хочет дождаться этой цены и получить цену не сильно ниже тейк-профита. А это может случиться при одномоментном сильном движении цены против него.

Текущий алгоритм подходит для стоп-лосса, но не для тейк-профита. На мой взгляд.
Take profit, Take profit
 
Цитата
написал:
Алгоритм нормальный.
Не нормальный. Если я хочу продать от 18 100, то не надо продавать существенно ниже этой цены. А это произойдет, если сразу будет сделка на 40 пунтов ниже.
Take profit, Take profit
 
Установил тейк-профит 18 100, отступ 2, спред -2. На открытии был взлёт и падение цены. Заявка выставлена по 18 063 и исполнена по 18 084. Не лучший тут алгоритм.

ИМХО, надо чтобы цена выставлялась не ниже чем тейк-профит минус отступ минус спред.
Это в случае если цена резко скакнёт против. В остальном случае будет как сейчас.
Это еще блин че такое на графике Яндекса (YNDX) ???
 
Цитата
Quikos_1 написал:
Зачем ?
Может в вашем Quick данные сборные, скачаются от брокера по новой. Удалить только по этому инструменту.
Это еще блин че такое на графике Яндекса (YNDX) ???
 
Для начала надо у себя архив с данными по этому инструменту удалить в Quik в папке archive. Потом посмотреть график.
Это еще блин че такое на графике Яндекса (YNDX) ???
 
Ещё надо у себя архив с данными по этому инструменту удалить в Quik.
Это еще блин че такое на графике Яндекса (YNDX) ???
 
Цитата
Quikos_1 написал:
А как точно можно узнать на чьей стороне косяк ?
Обычный график вывести на экран и посмотреть свечи. Если есть проблемы, то данные у брокера испорчены.  
Это еще блин че такое на графике Яндекса (YNDX) ???
 
Скорее всего это проблемы с данным у брокера.
Потоки
 
И ещё вопрос: доступ к полям таблицы из разных потоков возможен?

Заранее спасибо за ответ.
Потоки
 
Цитата
nikolz написал:
Могу сообщить , что делаю запись в лог из колбеков, из main,и еще из 90 (краш-тест терминала)  потоковкоторые выбираются из  пула потоков (максимум 512 потоков)  и проблем нет  
Спасибо за информацию.
Потоки
 
Цитата
nikolz написал:
зачем? поясните  
Си библиотека буферезует запис в файл, по умолчанию.
Потоки
 
Пункт 3 важен, если делать запись в лог из коллбаков и из main.
Потоки
 
Цитата
nikolz написал:
3) ошибаетесь, запись в файлы синхронизирована на уровне ОС.  Но с этим к Майкрософт.
Но там же должен быть буфер на уровне си библиотеки, ещё до ОС.
Потоки
 
Несколько вопросов по потокам.

1. В main можно обращаться к методам DataSource?

2. В main можно вызвать функцию getQuoteLevel2()?

3. Полагаю, что запись в файл не синхронизирован между потоками? Как?

OnTransReply
 
Цитата
Михаил написал:
Так в OnTransReply() я и ловлю успешность выполнения заявки отправленной с помощью sendTransaction(). sendTransaction() исполняется, а ответа в OnTransReply() нет.
OnTransReply() - это ответ на транзакцию. OnOrder() - для заявки.
main()
 
Цитата
nikolz написал:
Мой оппонент привел пример локальной переменной вне функций, т е это тоже не по теме, но эти локальные переменные являются копией глобальных
Не являются копией глобальных. Объясняю, что chank оформляется как как функция, после чего выполняться. То есть мой предыдущий пример "компилируется" по смыслу в следующий код:
Код
function init_chank()
  local Stopped = false

  _G["main"] = function()
    while not Stopped do

    end
  end

  _G["OnStop"] = function()
    Stopped = true
  end

end

init_chank()

Ema lua
 
Цитата
Дмитрий Бланк написал:
Благодарю.Оставлю эту формулу себе под этим правильным названием, раз уж сравнивал их.
EMA и MMA (SMMA) вообще то разные функции.

EMA(i) = a * P(i) + (1 - a) * EMA(i-1)
или эквивалент
EMA = (P(i) - EMA(i-1)) * a + EMA(i-1)
где a = 2 / (N - 1)


SMMA (i) = (PREVSUM - SMMA (i - 1) + CLOSE (i)) / N
или эквивалент
SMMA (i) = (SMMA (i - 1) * (N - 1) + CLOSE (i)) / N
main()
 
Цитата
nikolz написал:
Замыкание связывает код функции с её лексическим окружением (местом, в котором она определена в коде). Лексические переменные замыкания отличаются от глобальных переменных тем, что они не занимают глобальное пространство имён. От переменных в объектах они отличаются тем, что привязаны к функциям, а не объектам.
Правильно. Всё тело файла кода, в луа, считается chunk. Переменные, помечены как local внутри chunk, захватываются функциями, когда эти функции определяются в chunk, и эти переменные разделяются между ними.

На этом все.
main()
 
Цитата
nikolz написал:
это вообще не о том.

Да нет. На примере, Stopped.

Вариант 1
Код
Stopped = false

function main()
  while not Stopped do

  end
end

function OnStop()
  Stopped = true
end
Здесь переменная глобальная и обе функции к ней обращаются через _G.

Вариант 2
Код
local Stopped = false

function main()
  while not Stopped do

  end
end

function OnStop()
 Stopped = true
end
Здесь переменная захвачена обеими функциями и доступ к ней идёт через другой механизм. Вот он учитывает, что функции выполняются в разных потоках?
main()
 
nikolz

Так захват переменной, он же closure.
main()
 
Цитата
nikolz написал:
так как вы не сможете обратиться к локальным переменным майн из колбека и наоборот.
Так "глобальная" переменная, объявленная с local вне функций, захватывается разными функциями и становится для них "локальной".  
main()
 
Подскажите:

1. В main() можно использовать функции получения данных от Квика, которые обычно используются в колбаках? Такие как getParamEx(), getLevel2Quotes() и т.д.

2. QLua нормально синхронизирует обращение к переменным, помеченным как local, если к ним идет доступ и из потока колбаков, и из потока main?
Android X
 
1) Может в выставлении заявки на вкадке "Лимитная заявка" как-то разделить Лимитную заявку и Тейк-профит? А то они сейчас одновременно болтаются и сразу не понятно, что мы отсылаем на выполнение - очень много полей ввода.

2) И глюк программы - из графика бумаги (там отображаются активные заявки) снял пару тейк-профит заявок. После этого невозможно было зайти на владку "Заявки" со списком заявок - показывало информацию по снятой заявке.
Тейк-профит и стоп-лимит по заявке Quik Android X, Сделать тейк-профит и стоп-лимит по активной лимитированной заявке, используя смартфон
 
Этот функционал уже лет 10 как регистрируют.
QUIK 7.16, Таблица котировок
 
Евгений, в СБЕРЕ на срочке опционы доступны? Включая их продажу?
Пожелания по развитию моб. приложения
 
1. Добавить Lua и возможность писать роботов, как в дескоп-версии. (Под вопросом, нужно ли это пользователям в телефоне/планшете).


2. Доска опционов по инстументу. (Это необходимо).
Грядущие изменения на срочном рынке МБ: поддержка работы с 19-значными номерами заявок и сделок
 
А как быть с 32-разрядной версией Квика?
Подскажите по использованию функции getParamEx и её параметру param_name
 
Давно уже можно было бы указать в документации QLua GetParamEx сноску, где смотреть названия параметров! А то люди не находят и здесь спрашивают постоянно.
Таблица с использованием getParamEx. Не подтягивает цену открытия., В таблице расчетов использую цену открытия, последнюю, HIGH/LOW. По акциям всё идёт хорошо, но по фьючерсам в цене открытия стоит 0
 
Евгений, в другом руководстве, в секции про QPILE.
Запись в файл из разных потоков скрипта
 
s_mike@rambler.ru, спасибо. Имеется в виду нельзя одновременно писать из нескольких потоков? А не одновременно можно?

Еще один вопрос, теоретический. Где-то было написано, что в QLua доступ к глобальным переменным синхронизирован для потоков. Я не ошибаюсь? А вот если глобальная переменная объявлена как local, то этот случай тоже правильно отработается или лучше такие переменные как local не помечать?
Запись в файл из разных потоков скрипта
 
В QLua main выполняется в своем потоке, а callback-функции в основном потоке Квика.

Вопрос. Если я буду открывать лог-файл (io.open()) в одном потоке, а писать в него буду в другом потоке и там же его закрывать, то все будет нормально работать? Так можно делать?
помогите чайнику
 
Николай,

1) Надо ставить стоп-лосс заявку на покупку при цене 20 300.
2) Сейчас в Квике это никак не сделаешь. Люди давно просят сделать стоп-заявку на другую стоп-заявку, но разработчики не делают это.
Что не так с функцией message??, проблемы с вызовом message из глобальной таблицы
 
Цитата
Павел Валин написал:
message("message test: "..sz(ds)) -- отрабатываем
message("message test: "..sz()) -- тут падаем))))
Ну там у вас строки команд отличаются - во втором случае не передается нужный параметр.
Снятие всех заявок в Lua, Какой брать параметр trans_id?
 
Цитата
Sergey Gorokhov написал:
TRANS_ID - это произвольный номер Вашей транзакции, "снятие заявки" - это тоже транзакция и ей надо придумать номер. Номер может быть любым в диапазоне от «1» до «2 147 483 647»
А номер транзакции должен быть уникальным или не обязательно? Если, например, запускаются несколько роботов и они нумеруют свои транзакции с единицы.
Как получить текущие BID и ASK, Как получить текущие BID и ASK
 
В ТТП, где выводятся данные по этой бумаге, добавлены эти параметры?
работа с фьючерсами
 
Цитата
алексей ратов написал:
если я правильно все понял валютные фьючерсы можно торговать среднесрочно, прибыль идет в пунктах шага цены. При выходе из позиции доход просто может уменьшиться из-за укрепления рубля.
Среднесрочно, конечно, можно торговать. Только надо понимать, что доход/убыток будет начисляться каждый день в клиринг, а не только при выходе из позиции.
Установка в C:\Program Files\, Сделайте нормальную установку в стандартное место
 
Цитата
A.T. написал:
Флажок  «Хранить рабочие файлы в папке пользователя», и чтоб по умолчанию  стоял, и пользователи даже о нём и не знали, и всё работало без танцев с  бубнами.
Лучше в каком-либо файле настроек можно было бы прописать путь к папке, где хранятся данные. Если не прописано, то в текущей папке, как это сделано сейчас.
Зачем нужен PrintDbgStr
 
Цитата
Let_it_go написал:
пользуюсь переменной step до того как ей присвоено значение (частая ошибка у кодеров-самоучек, а я самоучка)
Жду от этой функции что она мне что то покажет, но она молчит.
Выполнение до этой функции не доходит, т.к. происходит ошибка в предыдущей строке кода.

Тут явное не понимание, что такое ошибки в программе и что происходит когда они случаются.
Помогите с математикой
 
Только ещё "d" забыл объявить как local.
Помогите с математикой
 
Полная оптимизация:
Код
d = sd[sec]
if d>200 then otklonenie=5 
elseif d>50 then otklonenie=4 
else otklonenie=3 end

Вот здесь точно всё происходит "за 1 квант времени". :)
Помогите с математикой
 
Надо конструкцию else освоить.
работа с фьючерсами
 
Цитата
Василий Веселов написал:
Вариационная маржа = прибыль составит (12010 руб - 12000)*1/1 = 10 руб или Вариационная маржа = убыток составит (11990 руб - 12000)*1/1 = -10 руб.
Если отвечать точно как считается на бирже, то будет так: 1 * (11990 - 12000) + -1 * (11990 - 12010) = 10 руб. Что, если провести математические преобразования, дает: 12010 - 1200 = 10 руб.
работа с фьючерсами
 
Цитата
Василий Веселов написал:
РЦ2 – текущая (последняя) Расчетная цена Контракта будет равна цене продажи контракта?
Можно считать что да.

На самом деле по каждой покупке/продаже контракта прибыль/убыток считаются по отдельности - от совершения сделки и до окончания сессии. После чего взаимоскладываются.
Страницы: 1 2 3 4 5 След.
Наверх