метки в скрипте индикатора, применение функций работы с метками в скрипте индикатора
Пользователь
Сообщений: Регистрация: 30.01.2015
25.06.2015 11:36:16
Например, решение может быть следующим: самое простое: 1) Если Таблица Settings содержит параметр Settings.chart_tag, то это и будет идентификатором окна. чуть сложнее: 2) когда скрипт индикатора помещаем в окно,то VMLUA присваивает данному окну chart_tag из своего внутреннего списка. функция getDataSourceInfo может нам вернуть параметр chart_tag для пользования.
Встроенные индикаторы в скриптах индикаторов, Встроенные индикаторы в скриптах индикаторов
Пользователь
Сообщений: Регистрация: 30.01.2015
25.06.2015 09:12:34
Добрый день, Если данный вопрос уже решен, то просьба дать ссылку. ------------------------------- Хотелось бы не тратить время на повторное программирование уже имеющихся индикаторов, а иметь возможность: 1) вызвать в скрипте расчет встроенного индикатора 2) Прочитать значения встроенного индикатора, размещенного в окне скрипта-индикатора, без создания руками или ногами идентификатора графика chart_tag. 3) Если такой возможности нет, то прошу зарегистрировать пожелание. Спасибо
метки в скрипте индикатора, применение функций работы с метками в скрипте индикатора
Пользователь
Сообщений: Регистрация: 30.01.2015
25.06.2015 09:02:19
Добрый день, возможно вопрос уже решен. Тогда просьба дать ссылку. ------------------------------------------------- Чтобы использовать функции работы с метками необходимо изначально метить руками или ногами окно графика идентификатором chart_tag. ----------------------------------- ВопросЫ: 1) Есть ли возможность сделать это автоматом в скрипте индикатора? 2) Если есть значение chart_tag по умолчанию, то как его взять? 3) Если нет такой возможности, то просьба сделать. ----------- Спасибо
доступ к строкам таблицы изменений параметров, почему его нет?
Пользователь
Сообщений: Регистрация: 30.01.2015
25.06.2015 08:21:15
Цитата
Sergey Gorokhov пишет: Дмитрий, Отсутствие функционала не является ошибкой. Ошибкой, можно считать любое девиантное поведение софта.
Вики пиет: Девиа́нтное поведе́ние (также социальная девиация) — это поведение, отклоняющееся от общепринятых, наиболее распространённых и устоявшихся норм в определённых сообществах в определённый период их развития --------------------- вопрос: Если софт имеет поведение, то может это диагноз?
Несколько мониторов и getposition
Пользователь
Сообщений: Регистрация: 30.01.2015
25.06.2015 08:09:41
Увы, по Булгакову не получится (век не тот, страна другая, юристов больше, чем программистов ну и т д). --------------------------------- Мужайтесь! Импортозамещение нам поможет!
Расчёт индекса РТС
Пользователь
Сообщений: Регистрация: 30.01.2015
25.06.2015 08:00:05
Индекс РТС либо считается точно, либо в действительности считаете не индекс РТС, а какой-то свой индекс. Поэтому "почти точно" - почти тоже самое, что "почти беременная"
luasql (проблема с cursor:fetch)
Пользователь
Сообщений: Регистрация: 30.01.2015
25.06.2015 07:55:44
Цитата
Дмитрий Сазонов пишет: "Unknown error. Possible external module error."
Сообщение "Unknown error. Possible external module error." говорит о том что луа не смогла поймать и распознать ошибку. Это значит, что ошибка может быть абсолютно любой.
QLua + C#, вызов методов с# из QLua
Пользователь
Сообщений: Регистрация: 30.01.2015
21.06.2015 18:10:22
пардон, ошибся хотел написать, что исполнение колбеков переместить в майн.
Дмитрий Сазонов пишет: Здравствуйте. У меня такой вопрос: есть потребность вызывать методы c# класса из QLua. В какой-то степени удалось что-то сделать с помощью LuaInterface.dll и luanet.dll, которые как раз и предназначены для этого. Однако возникла такая проблема: почему-то методы вызываются, если они применяются в main функции. Если же я вызываю экспортируемые методы из обработчиков событий, то ничего не происходит, как будто куска кода нет. Кто-то может сказать, в чем причина кроется? Насколько я знаю, обработчики и main функция крутятся в разных потоках, может это связано с этим? Вообще у кого-то есть успешный опыт использования c#, или подобные вещи стоит делать только через с api lua ?
Верно. Проблема в двухпоточности. Эти библиотеки можно использовать только из того потока, в котором они созданы.
api lua, без вариантов
Если михаил прав, то можно библиотеки C# открыть в потоке main. Так как предпочитаю С и С++ вместо С#, то так не делал, это лишь предположение.
Николай Камынин пишет: Но вот простой пример, который дает на правильный ответ
Звучит, как "А сейчас я расскажу вам всю правду..." Ну, ну, ага.
Цитата
Николай Камынин пишет: Но делать вывод что onParam быстрее, когда вызов OnQuote в 2 раза чаще - это прикольно.
Это тем более забавно, когда вы делаете выводы на основе данных с игрового сервера.
Ну вот скажите, зачем желаемое выдавать за действительное? У Вас слишком богатая фантазия. Вам это надо? Ну, Врать? ---------------------------- Я никогда не делаю тесты на игровых. Но Вы можете, я не против. --------------------------- Это результаты на моем реальном счете и соответственно рабочем сервере в реальном времени.
Скорость получения данных OnParam OnQuote
Пользователь
Сообщений: Регистрация: 30.01.2015
18.06.2015 18:19:41
Как много написано. Но вот простой пример, который дает на правильный ответ: .... ------------------------------ function OnQuote(cl,se) if se~=set or mstart==false then return end; nqute=nqute+1; Log(nqute,"qut"); end
function OnParam(cl,se) if se~=set or mstart==false then return end; npar= npar+1; Log(npar,"par") end ... А вот результат для сбербанка: 06/18/15 19:15:06 par=230 -- это число вызовов колбека оnParam в том числе и по изменению стакана 06/18/15 19:15:06 qut=415 -- это число вызовов OnQuote при изменении стакана Т е если следить за изменением очереди котировок не нужно, а надо лишь какую-нибудь цену, которая была лучшей когда-то то можно работать по onParam. Но делать вывод что onParam быстрее, когда вызов OnQuote в 2 раза чаще - это прикольно.
Скорость получения данных OnParam OnQuote
Пользователь
Сообщений: Регистрация: 30.01.2015
14.06.2015 15:11:43
2)
Узнать таймфрейм графика
Пользователь
Сообщений: Регистрация: 30.01.2015
13.06.2015 15:55:52
если рынок ликвидный,то можно определить разность времени двух соседних закрытых свечей
Узнать таймфрейм графика
Пользователь
Сообщений: Регистрация: 30.01.2015
13.06.2015 15:52:40
Цитата
Старатель пишет: Оба графика имеют разные таймфреймы.
Вообще-то , свечи - это нелинейное сжатие исходных данных. Поэтому непонятна сама постановка задачи обработки двух свечных графиков разного тайма. Какую задачу решаете? -------------------------------------- Можно, например, взять оба графика одного тайма(наименьшего) и далее вычислять нужные параметры на любом тайме больше исходного.
Компель LUA
Пользователь
Сообщений: Регистрация: 30.01.2015
13.06.2015 15:45:35
3 – This section describes the C API for Lua, that is, the set of C functions available to the host program to communicate with Lua. All API functions and related types and constants are declared in the header file .
так сказать, закрывая тему - на форуме forum.qlua.org - есть вся информация, чтоб создать такого робота "с нуля" и не платя никому деньги. Задумайтесь над этим. Мы все когда-то, что-то не умели.
Так сказать, продолжая тему, на свалке можно найти даже слиток золота, но проблема лишь в умении его найти, в потраченном времени и в отсутствии уверенности в успешном поиске. ------------------------------------------- Поэтому самому сделать можно Все или почти все, но чтобы сделанное Вами работало, как мечталось, надо Либо быть в этом деле спецом, Либо бросить занятие, в котором Вы спец, и обучиться новой специальности. ------------------------------------------- Вам выбирать - либо процесс познания, либо результат мечтаний.
Узнать таймфрейм графика
Пользователь
Сообщений: Регистрация: 30.01.2015
11.06.2015 14:32:48
задача легко решается размещением графиков в одном окне но разных подокнах
ещё много много раз - потокобезопасные операции, Потокобезопасность.
Пользователь
Сообщений: Регистрация: 30.01.2015
11.06.2015 14:21:54
Цитата
Michael Bulychev пишет: Нет, просто нет такого механизма в Lua. за конкретным объектом должен следить сам пользователь.
Но в луа нет ни функций QLUA, ни возможности создания функции main в отдельном потоке. - Это все сугубо ноу-хау QUIK. Может быть,продолжая развитие данного направления, сделать необходимые механизмы синхронизации потоков для всех пользователей? Я для себя кое-что сделал. Но некоторые вопросы удобнее решить на стороне терминала .
Разработка торговых роботов, Разработка торговых роботов
Пользователь
Сообщений: Регистрация: 30.01.2015
05.06.2015 20:16:04
Цитата
sam063rus пишет: а можно сам Amibroker - бесплатно? (почему нет такого варианта?) и тогда алгоритм будет интересным и удачным)))))))))
Берите демо(бесплатно) - он работает с одним инструментом и вполне может работать с квиком
Примеры классов на основе метатаблиц и closure на QLUA
Пользователь
Сообщений: Регистрация: 30.01.2015
05.06.2015 20:12:53
вообще-то тема классов на луа в инете известная Я не вижу смысла городить классы на скриптах - это для любителей ООП в обмен на скорость. Вообще-то, если уж надо что ускорить или спрятать в компактный вид то есть API C плюс C++ про метатаблицы:
Сколько стоит робот на LUA?
Пользователь
Сообщений: Регистрация: 30.01.2015
05.06.2015 20:05:41
Цитата
Александр Кудрев пишет: Робот на основе пересечений 2 ЕМА с трейлингом. Надо чтобы период МА можно менять.
Если робот должен реально торговать то его стоимость определяется примерно так: Время разработки(в часах)*ЗарплатуРазработчикаВмесяц(можно найти в инете) /200. Да и еще надо написать правильное тех задание. То,что написал Александр Кудрев - это лишь название мечты, а не задание для разработки робота ( типа - хочу велосипед) ------------------------------------------------ Но если будет делать то у него - 100 руб.(а нет это я ошибся - это он труд других так оценивает)
Но вроде как выставлен тип - рыночная цена, и цена соответственно 0. Т.е. квик или сервер брокера или кто то там наверху должен съэмулировать рыночную заявку и продать\купить по текущей рыночной цене. или нет?
Полагаю, что это Ваше желание. квик или сервер брокера или кто то там наверху - Не должен.
CreateDataSource
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2015 10:06:29
Цитата
Старатель пишет: Не знаю, что вы подразумеваете под словом "текущие", но основываясь на том, что очередь находится на сервере (блин, ну почему нельзя было сразу об этом сказать?!), я делаю вывод, что данные (1), (2) и (3) будут обработаны функцией-колбеком GetPrice()
По-моему мнение, есть непонимание общих принципов взаимодействия сервера и клиента и колбеков в терминале. -------------------------------------------- Фактически мы имеем две очереди, а вернее сказать - три: --------------------------------- 1) очередь заявок брокеров на сервере биржи 2) очередь поручений клиентов на сервере брокера 3) очередь колбеков скриптов VMLUA в терминале QUIK на компе клиента, так как все колбеки в одном потоке терминала. -------------------------------- Надеюсь, что объяснил понятно.
Кто как решил вопрос уведомления о сделках?
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2015 09:57:49
от мобильных торговых систем такой способ отличается тем, что торгует мощная система QUIK а не ее обрезанный клон на смартфон Загрузка трафика для смартфона нулевая
Кто как решил вопрос уведомления о сделках?
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2015 09:56:13
Расскажу как я это делаю.
------------------------------ Объясняю упрощенно: ------------------------------------------ Основная идея в том, что Вы сажаете скрипт клиент-сервера с динамическим адресом на КВИК на компе дома. и скрипт клиент-сервера - на смартфон или планшет или нотебук --------------------- В результате КВИК сообщит Вам о любых событиях со скоростью передачи информации по интернет. -------------------------- Вы можете тоже послать команду КВИКУ. Все работает быстро и практически бесплатно. ----------------------
Лимитированная, рыночная заявка
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2015 09:41:27
Цитата
Валентин пишет: Здравствуйте. Работаю на фьючах на московской бирже. 1.Параметр type - принимает параметр лимитированная или рыночная. Я так понял рыночной заявки какбы не существует? параметр type не обязателен, Все заявки всегда лимитированные и надо всегда указывать price? Если да, то к чему тогда существует параметр type? 2. Предположим мне необходимо сейчас открыть позицию, выставить стоп и тейкпрофит. Это нормально считать стоп, тейкпрофит на основе параметра close из функции getCandlesByIndex последней свечи (5минутка) или есть какие то лучшие варианты?
1) этот параметр появился еще до того, как стали торговать фьючерсами. ----------------------------------------- 2) Стоп и тайк профит - это условное выставление лимитированных заявок. ----------------------- Что это означает? ----------------- Означает это следующее. Мы открываем позицию и желаем застраховать ее от наступления двух событий: Во-первых - чтобы наши убытки по-возможности не превысили терпимый для нас уровень - это stop-limit Во-вторых - чтобы наша оценочная прибыль превратилась в реальную с терпимым для нас убытком - это take profit ----------------------------- А теперь попробуйте ответить сами на Ваш вопрос. А именно - разве наши желания страховки связаны с close последней свечи на 5 минутках? Очевидно, что, нет, они связаны с затратами на открытие позиции, с величиной допустимых для нас рисков(потерь) и что ВАЖНО - с нашим прогнозом возможного движения рынка. -------------------- А вот при расчете прогноза возможно использование и последней свечи и еще ...надцати предыдущих и движение солнца, цены нефти, выступления президента и т д ------------------------------------------- Надеюсь, что пояснил понятно.
sendTransaction
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2015 09:29:02
пардон опечатка: вот такой конструкцией local res=sendTransaction(trans); if res~="" then Log(trans,res);end
sendTransaction
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2015 09:28:15
у меня работает и выводит сообщение об ошибках если они есть Но сообщения лучше выводить в лог файл вот такой конструкцией:
local res="";sendTransaction(trans); if res~="" then Log(trans,res);end
Счётчик числа сделок в секунду по одному тикеру
Пользователь
Сообщений: Регистрация: 30.01.2015
30.05.2015 09:22:30
, Я попробую дать Вам ответы на Ваши вопросы, хотя ранее я уже это написал, но повторение... ------------------------------------------- Подобные исследования я проводил лет 5 назад. тогда и дискуссия подобная была на форуме. В результате получилось следующее: ---------------------- 1) ТТП - это актуальные значения параметров инструментов ----------------------- Что это означает для Вашей задачи? --------------------- Означает следующее: Если в какую-то секунду произошло 100 сделок , а в результате каких-то задержек(очередь на сервере, задержки каналов связи и т д) мы получаем ТТП в конце этой секунды (пусть даже несколько одновременно поступивших срезов) то в ТТП т е в onParam мы увидим лишь последнюю сделку. -------------------------- Это первая причина, по которой вашу задачу НЕВОЗМОЖНО корректно решить через ТТП --------------------------------------- Вторая причина в том, что ТТП реагирует на любые актуальные изменения параметров инструментов, а не только на совершение сделок. Это приводит к большим нагрузкам на комп при обработке колбека оnParam. И в Вашей задаче к ненужным тратам мощности компа ------------------------------------- третья причина - это то, что в onParam не приходит информация о том, какой именно параметр изменился. Для того, чтобы узнать надо ходить в хранилище. А это очень затратный процесс. ----------------------------------------------- Резюме: Есть лишь одно корректное решение Вашей задачи. - использовать onAllTrade. Основные идеи, как это сделать, я вам написал ранее. ------------------------ Успехов
Счётчик числа сделок в секунду по одному тикеру
Пользователь
Сообщений: Регистрация: 30.01.2015
28.05.2015 18:50:11
Ну вот я написал Вам черновик вашего счетчика: он будет считать для всех инструментов Сразу скажу, что это черновик и в нем изложены основные идеи, но детально не отлаживал Дерзайте. ------------------- is_run = true local Count={}
function OnAllTrade(t) local cl,se=t.class_code,t.sec_code; local t1=Count[cl] if t1==nil then t1={}; Count[cl]=t1; end local t2=t1[se] if t2==nil then t2={0;0}; t1[se]=t2; end local d=t.datetime; if d.sec==t2[1] then t2[2]=t[2]+1; t2[1]=d.sec else t2[2]=0; t2[1]=d.sec; end end
function main() while is_run do sleep(100) -- здесь я в своих программах использую Event OS но можно и так оставить end end
function OnStop() is_run = false return 1000 end --------------------
Счётчик числа сделок в секунду по одному тикеру
Пользователь
Сообщений: Регистрация: 30.01.2015
28.05.2015 18:34:42
код увидел. Мне читать все топики лень, поэтому я выскажусь, возможно что кто-то уже это сказал. 1) Работа через onParam - самый плохой вариант. Там и хранилище очень тяжелое и данный колбек на каждый чих срабатывает при этом если срез не пришел и не актуальный то он вообще потеряется. Т е через этот колбек Вы обязательно недосчитаетесь сделок когда-нибудь --------------------------------- 2) Поэтому данную задачу полагаю надо решать через onAllTrade По крайней мере решение через onAllTrade будет полным, но возможно что есть и более быстрое но не полное. Поэтому решение через onAllTrade должно быть базовым а остальные, если они будут быстрее надо сравнивать с базовым.
-------------------------------- Поэтому предлагаю написать вариант через onAllTrade и изложить претензии к такому решению (желательно с примерами)
получение параметров индикатора, обращение к line
Пользователь
Сообщений: Регистрация: 30.01.2015
28.05.2015 15:11:22
Цитата
Michael Bulychev пишет: Да, обратно возвращаются только те параметры, которые отображаются в диалоге настроек индикатора.
Вроде бы Ваше утверждение не верно. Так как параметры line в диалоге отображается а обратно не возвращаются. Т е не возращаются любые параметры которые таблицы. ВО КАК!
Не работает getParamEx и(или) OnQuote
Пользователь
Сообщений: Регистрация: 30.01.2015
28.05.2015 15:06:00
function OnQuote(class_code, sec_code) поставьте здесь вывод в файл class_code, sec_code, p_classcode,p_seccode_eurrubtom и все будет ясно if class_code==p_classcode and sec_code==p_seccode_eurrubtom then
Счётчик числа сделок в секунду по одному тикеру
Пользователь
Сообщений: Регистрация: 30.01.2015
28.05.2015 15:01:36
хорошо бы увидеть код(алгоритм), а то с нуля как-то лень начинать. А вот покритиковать чужой код ( то бишь дать идею) -это пожалуйста.
Разработка торговых роботов, Разработка торговых роботов
Пользователь
Сообщений: Регистрация: 30.01.2015
28.05.2015 14:57:05
Если у Вас интересный алгоритм , то протестирую его в Амиброкере бесплатно Если алгоритм удачный, то отдам скрипт для амиброкера бесплатно
Settings.line[1].Name в функции OnCalculate не поддерживается.
У меня получается, что в функции OnCalculate не поддерживаются в Settings любые параметры типа таблицы, а не только line.
Как быстрее войти в сделку, Как быстрее получить нужно значение цены или графика для выполнения условия
Пользователь
Сообщений: Регистрация: 30.01.2015
28.05.2015 07:47:13
Цитата
swerg пишет: Если же надо просуммировать 1000 свечей, да еще дифур решить для вычисления значения индикатора - лучше взять готовое значение из квика, если там есть такой индикатор, это и проще и надёжнее, ибо в своём алгоритме мы еще и наошибаться можем, а квиковый индикатор - хотя бы глазами видишь что он на самом деле считает.
Вот тут у Вас ошибочка Чтобы сложить 1000 свечей надо столько же время сколько для сложения двух. --------------------------------------- Вопрос же поставленный в начале вообще то не имеет однозначного решения Он из разряда "Как стать счастливым"
getCandlesByIndex, doesExist что показывает
Пользователь
Сообщений: Регистрация: 30.01.2015
28.05.2015 07:41:15
Цитата
Валентин пишет: 2. Параметр close показывает цену закрытия свечи (в случае если свечка старая). Если свечка еще активна, параметр показывает текущую цену спроса?
Вроде бы это цена последней сделки, а не спроса.
Стоплосс и тейкпрофит заявки
Пользователь
Сообщений: Регистрация: 30.01.2015
27.05.2015 14:23:22
увы,просто это не сделать. ------------------------- у меня алгоритм примерно такой: --------------------- создаю таблицы активных: заявок, стопов, заявок по стопам. Далее в колбеках реализуется обработка этих событий для каждого своя. При этом реализуется обработка заявок по частям а также зависших заявок по стопам Кроме того, исполнение заявки контролирую по изменениям депозитов в соответствующих колбеках. -------------------
CreateDataSource
Пользователь
Сообщений: Регистрация: 30.01.2015
27.05.2015 14:13:54
если график не открыт то у Вас ничего и нет без вызова CreateDataSource
Вопросы по OnAllTrade
Пользователь
Сообщений: Регистрация: 30.01.2015
27.05.2015 14:11:27
все эти галочки появились давным давно, когда актуальным было экономить трафик или(и) память компа. ------------------------ скрипты появились гораздо позже.
получение параметров индикатора, обращение к line
Пользователь
Сообщений: Регистрация: 30.01.2015
27.05.2015 14:02:52
действительно в setting в OnCalculate исчезают параметры, которые определены как таблицы.
получение параметров индикатора, обращение к line
Пользователь
Сообщений: Регистрация: 30.01.2015
27.05.2015 12:19:54
вот тест :
Settings= { Name = "AAAA", Smooth=10, line = { { Name = "Hi", -- Color = RGB(255, 0, 0), Type = TYPE_LINE, Width = 2 } }
sam063rus пишет: ударение на слове: "почти" бо как у каждой сделки на то и есть поле "время" - и скрипты могут на него полагаться На деле же, получается так, что "время можно повернуть вспять". Понятное дело, что "всё можно учесть, отфильтровать, подпилить под собственные нужды" но, когда размер постоянных "допиливаний" и недосказанностей в штатной документации переваливает размер критической массы - не остаётся ничего друго, как давить на "арку", прекрасно понимая, что ничего кроме очередного троллинга от tech support, некоторых разработчиков и банальных троллей-роботорговцев - ждать не приходится.
Не совсем так. ---------------------- Как говорит народная мудрость "После драки кулаками не машут" Работа с ТВС - это прогнозирование по прошлому Т е "махание руками после драки" Но прошлое никогда не повторяется абсолютно точно. Поэтому и для прогноза нет смысла учитывать каждый чих в прошлом. ------------------------ Можно конечно (вернее бесконечно) давить на "арку" или обвинять всех в троллинге , а можно сначала определить решаемую прикладную задачу, а потом выпиливать недостающие детали. ---------------------------------------------------- Предполагаю ( исходя из своего опыта решения задач искусственного интеллекта и прогнозирования), что Вы подменяете задачу прогноза рынков созданием технических средств, полагая, что они, каким-то таинственным образом, позволят Вам решить задачу прогноза. А это еще надо доказать. возможно то, что Вы так упорно пытаетесь запрограммировать - очередной танк для первой мировой. ---------------------------- Романтично, но не практично.
Стоплосс и тейкпрофит заявки
Пользователь
Сообщений: Регистрация: 30.01.2015
25.05.2015 17:10:12
Цитата
Александр Евстратенко пишет: Вопрос заключался можно ли с помощью каких либо флагов или параметров сделки просто и точно определить условие по которому исполнилось стоплосс и тейкпрофит заявка. Алгоритм, рассматриваемый мной, предполагает различные действия в каждом случае.
Анализ по цене сделки понятен, но усложняет программу и может быть не всегда однозначен при малых таймфреймах (например минутки - стопы относительно близки к тейкпрофиту) и малой ликвидности (это почти все на этих таймфреймах, за исключением RI и Si).
Но если нет простой возможности - значит придется анализировать цену сделки ( и,естественно, срабатывание стоплосс и тейкпрофит заявки должно предполагать контроль и доведение позиции до сделки если этого не произошло).
конечно можно проверить таблицу стоп заявок. Но как я написал ранее, исполнение стоп-заявки может создать активную заявку, которая никогда не исполнится. возможна другая ситуация, когда заявки исполнилась, то сервер брокера не учел еще изменение Ваших лимитов Поэтому полагаю, что проблема не в том , чтобы узнать какое из двух условий верно, а в том чтобы узнать как эти условия отразились на вашей позиции. ------------------------------------ А вот играть в зоне предела быстродействия КВИКА да еще на неликвидных рынках - это конечно создает дополнительно адреналин, но чревато лишь сливом депозита.
Вопросы по OnAllTrade
Пользователь
Сообщений: Регистрация: 30.01.2015
25.05.2015 17:00:25
Цитата
Старатель пишет: Если все сделки заказаны до начала торговой сесссии, то в рамках класса (точнее, торговой площадки) сделки поступают в хронологическом порядке. Либо, если один или несколько бумаг одного класса дозаказаны в течение торговой сессии, то после докачки старых данных новые сделки также поступают в хронологическом порядке.
Цитата
sam063rus пишет: синхронизация соблюдается только в рамках одного тикера.
Можете привести примеры конкретных ситуаций, когда в рамках одного класса синхронизация не соблюдается?
Мне думается, что наблюдается некоторая путаница ---------------------------- Есть два принципиально разных режима работы с ТВС. ---------------------------- 1) Так "Если все сделки заказаны до начала торговой сессии," то эти сделки придут одним пакетом или двумя так как они все есть на сервере и он вам их пришлет. Т е это случай работы не в реальном времени. ---------------------------------- 2) Реальное время, когда сделки уходят с биржи на сервер , а потом с сервера на терминал. В этом случае никто ни за что не отвечает. Все идет асинхронно и кто придет первым никто не знает. ( Почти как на ипподроме ) -------------------- Поэтому надо принять как аксиому , что момент прихода информации о сделках не может быть определен до их прихода в терминал. И этот момент прихода не должен нас интересовать как недоступный для прогнозирования параметр. Если строить свои программы исходя из этой аксиомы, то все будет просто и понятно.
Стоплосс и тейкпрофит заявки
Пользователь
Сообщений: Регистрация: 30.01.2015
23.05.2015 10:14:54
Цитата
s_mike@rambler.ru пишет: стоп лосс 99 тейкпрофит 101 / 2 Выставляется, когда цена равна 100
движение цены:100 -> 101 -> 99
Ваш пример - доказательство моего утверждения: прочитайте еще раз внимательно: ---------------------------- "1) если выставление стопов соответствует их названию, то можно определить 2) по расположению цены сделки предшествующей срабатыванию стопа по отношению к расположению позиции относительно рынка." ------------------------
Теперь разбираем Ваш пример Условие 1) выполнено. -------------------------------- переходим к анализу ситуации. ------------------------- 2) по расположению цены сделки предшествующей срабатыванию стопа по отношению к расположению позиции относительно рынка. ------------------------- Условия Вашего примера не полные. Чтобы принять решение, надо определится еще в некоторых характеристиках рынка. ----------------------------- Сначала пару слов без протокола... Во-первых, предполагается, что чел, который пытается применить данный метод немного понимает в рынке. так как "нет защиты от дурака" ----------------------------- Поэтому считаем, что рынок ликвидный. В этом случае переход от 101 к 99 не может произойти за одну сделку. Поэтому после срабатывания стопа ниже 101 смотрим где была сделка перед срабатыванием Она была выше нашей позиции - т е это тайк профит. ------------------------------------ P.S: Хочу обратить внимание автора топика на следующее. Срабатывание стопа не означает совершение сделки по этому стопу. поэтому сама постановка вопроса изначальна не полная.
Вопросы по OnAllTrade
Пользователь
Сообщений: Регистрация: 30.01.2015
23.05.2015 09:37:01
Цитата
sam063rus пишет: квик не предназначен для стабильной роботорговли по определению. бо как любое его обновление может в одночасье угробить весь депозит, за что разработчики только в очередной раз мило извиняться и пообещают исправить прискорбную ситуацию в новых своих версиях, а брокер тем временем скажет, что, цитирую дословно: "... надо учитывать риски". Ну, а биржа, весело назовёт техническим сбоем и забудет об этом, в отличии от всяких SEC - так и не анулировав сделки.
формально Вы правы, но по-существу нет. ------------------------------------------ Правы в том, что "квик не предназначен для стабильной роботорговли по определению" Потому что QUIK - это программа для подачи поручений брокеру (по определению) Хочу обратить внимание на то, что НЕ для подачи заявок на биржу, а лишь поручений брокеру. Это две большие разницы. ----------------------------- Неправы потому что, разработчики никогда (поправьте если я ошибаюсь) не говорили, что делают бесплатный инструмент для создания торговых роботов. Наоборот, периодически подчеркивалось, что VM LUA встроена без изменений, что библиотека QLUA сделана как копия купала. а КУПАЙЛ сделан не для торговли я для отображения бесплатной информации клиентам. т е это некоторе подобие кубиков в детском саду, чтобы было чем заниматься детям. Ну а если из этих кубиков начинают делать что-то большое, то проблема тех, кто это делает, а не тех , кто сделал кубики. ----------------------------------------------------------------------------------------------------------- Ну не умеет трактор летать. Но если очень хочется, то надо осваивать ЧПУ и проектирование самолетов и из трактора делать самолет.