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

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

Страницы: Пред. 1 ... 15 16 17 18 19 20 21 22 23 24 25 ... 80 След.
Преобразование времени в число
 
Цитата
Ziveleos написал:
Денис, добрый день.
Вот рабочий код:

Код
     local  t  =   string.gsub ( getInfoParam ( "SERVERTIME" ),"%:",  "" )
   local  time_pos  =   string.format ( "%06d" , tonumber(t))

  

nikolz, до 10 утра время сервера передается без начального нуля,  одной  цифрой.
Цитата
Ziveleos написал:
local time_pos =string.sub (x,1,2)..string.sub (x,4,5)..string.sub (x,7,8);
пардон, исправил:
Код
local time_pos=string.gsub(getInfoParam("SERVERTIME"), ":", "");
Преобразование времени в число
 
Цитата
Денис написал:
getInfoParam("SERVERTIME")
local x=getInfoParam("SERVERTIME");
local time_pos =string.sub (x,1,2)..string.sub (x,4,5)..string.sub (x,7,8);
Задержка при зачислении бумаг
 
возможно надо брокера сменить.
Задержка при зачислении бумаг
 
Цитата
Сергей С. написал:
Цитата
Владимир написал:
Сергей С. , Дались Вам эти несчастные 5 секунд. У меня тикеры держатся в портфеле месяцами и годами, а тут секунды. ЗАЧЕМ с этим что-то делать?
Была идея немного поарбитражить в квике... но, видимо, для этой цели квик не подходит.
QUIK Подходит для арбитража. На форуме выкладывал пример скрипта для арбитража.
Фризы и тормоза, Фризы терминала
 
Цитата
Виталий написал:
Добрый день. Подскажите, что сделать чтобы интерфейс не фризился и не тормозил? Я как бы все понимаю, но вот такое окно (приложил скрин) фризится, если программу разворачивать с панели или просто водить по графику курсором с перекрестием. При этом у меня железо как бы не микроволновка: AMD Ryzen 7 5800X 3.80 GHz, ОЗУ 64Гб DDR4 3200, NVME накопитель, пустой на половину. Видео RTX 3060. Ну неужели этого мало?! Ну елки-палки!
Что и где подкрутить, чтобы это прекратилось?!
покажите диспетчер задач.
картинки:
1)Производительность.
2)Процессы . Рабочее место ... QUIK
Проверка, что заявка выполнена
 
Цитата
Igor_User написал:
Цитата
nikolz написал:
 
Цитата
Igor_User  написал:
 nikolz  , попробовал X=(Order.flags>>3)&1.
То же самое - бит3 = true для рыночной заявки.
 На фьючерсах нет рыночных заявок, надо выставлять с ценой. Если хотите рыночную то цену выбирайте хуже лучшей цены.
Мне всегда казалось, что и на спотовом также.
Интерфейс выставления заявки в квике одинаковый что на спотовом рынке, что на срочном. И там и там присутствует галочка "Рыночная". Цену хуже можно не выставлять (точнее поле "Цена" становится вообще неактивным при выборе "Рыночная").

Возможно вы имеете в виду, что несмотря на это, заявки всё равно по-разному обрабатываются на спотовом и на срочном?
Я не правильно Вам объяснил.
На фьючерсах нет рыночной заявки потому, что вы покупаете не актив, а контракт на его покупку
А стоимость контракта не зависит от цены актива.
Поэтому Вы задаете число контрактов а их цена фиксированная.
Возможен экспорт через DDE в OpenOffice Calc? (Он аналог MS Excel)
 
В качестве информации
Так как использую своим DDE приложением, то QUIK нормально работает с моим сервером имя которого могу сделать любое.

По.тому полагаю, что проблема не в QUIK а в том, как Open Office реализует обработку.
Из документации OpenOffice  следует, что вызов DDE надо  прописывать специально в ячейке таблицы.  
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
На всякий случай ссылка на документацию
https://lua.org.ru/manual_ru.html
6.4 – Работа со строками

Эта библиотека предоставляет общие функции для работы со строками, такие как поиск, извлечение подстрок и сопоставление шаблонов. Когда индексируются строки в Lua, первый символ находится на позиции 1 (не на 0, как в C). Допускаются негативные индексы, они интерпретируются как индексирование обратно (задом наперед), с конца строки. Таким образом, последний символ находится на позиции -1 и так далее.

Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Строки в Lua индексируются с 1 (а не 0, как в C).
Индексы могут быть отрицательными и интерпретируются как индекс с конца строки.
Т.е. последний символ имеет позицию -1, и т.д.
Проверка, что заявка выполнена
 
т е при выставлении рыночной будет выставлена лимитная с  соответствующей ценой
Это связано с резервированием средств.
Проверка, что заявка выполнена
 
Цитата
Igor_User написал:
nikolz, попробовал X=(Order.flags>>3)&1.
То же самое - бит3 = true для рыночной заявки.
На фьючерсах нет рыночных заявок, надо выставлять с ценой. Если хотите рыночную то цену выбирайте хуже лучшей цены.
Проверка, что заявка выполнена
 
Например:   X - значение 3-го бита (1 или 0) вычисляем так:
X=(Order.flags>>3)&1;  
Быстрый ввод стоп-заявки
 
У меня в скриптах роботов делается так:
------------
Если стоп-заявки разрешены , то
На изменение портфеля по инструменту  проверяется наличие стоп-заявки и соответствие в ней количества.
Если равенства нет , то стоп-заявка снимается и устанавливается новая, если количество не ноль.
Ппри этом, выставление новой заявки должно быть выполнено после подтверждения снятия старой.
------------
Есть различные варианты сигналов, по которым выполняются эти действия. Например скользящий стоп.
----------
Так как умная стоп-заявка - это относительно большой и сложный скрипт, то сомневаюсь, что на форуме появится действительно подобный скрипт. Практически надо выкладывать скрипт автоматической торговли.
----------------
 
Индикаторы. Программное изменение Settings для инициирования OnChangeSettings
 
Цитата
Илья написал:
Хорошо, с передачей данных между скриптами разобрались.
Остается вопрос оптимизации частоты этой передачи.
Грубо говоря, в основном скрипте расчет происходит после совершения сделки. Частота расчета значительно ниже частоты срабатывания функции OnCalculate.
можно вычисления внутри onCalculate делать один раз в момент открытия новой свечи.
Индикаторы. Программное изменение Settings для инициирования OnChangeSettings
 
Цитата
Илья написал:
1. Основной скрипт и скрипты индикаторов работают внутри одного экземпляра Quik (на одном компьютере)
2. Разработка на отличном от Lua (Qlua) языке не предполагается. Все в рамках возможностей QUIK
Тогда единственный вариант это обмен через файлы, то , что Вы не хотите.
Все остальное требует использование сторонних dll , т.е. CИ.
Индикаторы. Программное изменение Settings для инициирования OnChangeSettings
 
Цитата
Илья написал:
Добрый день.


Посоветуйте, пожалуйста, как можно оптимизировать данный алгоритм:

1. передачу данных из основного скрипта в скрипт индикатора (без использования файлов)
2. Инициировать передачу данных в индикатор со стороны основного скрипта (уменьшить частоту обращения индикатора к основному скрипту)
3. Есть ли возможность из основного скрипта инициировать событие для функции OnChangeSettings ?
Уточните:
1) скрипты в разных приложениях, в одном или на разных компьютерах.
2) Предполагаете разрабатывать  функции на C или других языках или только на Lua.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
вот так можно проверять нужный бит (n), результат 1 или 0 - значение бита (n)  n>=0
Код
local function (flag,n)  return (flag>>n)&1;  end
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
Ziveleos написал:
nikolz, Вы мне объясняете?!
пардон, ошибся, не Вам.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Ziveleos,
Вы можете делать еще так, возможно будет проще понимать что и зачем:
-----------------
Например,  есть flag
-----------------
1) надо выделить бит 0
x=flag & 1  -- x равен значению бита
-----------------
2) надо выделить бит 1
z=flag>>1;  x=z & 1  -- x равен значению бита
-----------------
3) надо выделить бит 2
z=flag>>2;  x=z & 1  -- x равен значению бита
--------------------
4) надо выделить бит 3
z=flag>>3;  x=z & 1  -- x равен значению бита
------------------------
5) надо выделить бит 4
z=flag>>4;  x=z & 1  -- x равен значению бита
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
TGB написал:
.
<Поле таблицы (данные любого типа Lua кроме nil, при присвоении которого полю, соответствующая запись таблицы удаляется>.
---------------
Поправлю Вас..
nil - это такая же переменная как и другие. Отличается лишь тем, что ее тип =0, а тип строки =3.
проверка переменной на nil, это  равенство ее типа нулю.
---------------
Поэтому поле таблицы может быть любого типа, в том числе и типа nil.
==================
Команды в байт-коде луа - это просто целое число, которое всегда указывает на функцию  СИ.
Т е внутри VMLua нет никакого чистого луа, там лишь чистый СИ.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
nikolz, Я про надежность какой вариант надежней? Или все безопасно?
По надежности и безопасности все варианты одинаковые, полностью безопасные, надежные.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
так  order.flags & 1  
быстрее,
чем order.flags % 2,
примерно в 3 раза
Сохранение стакана, Описание эксперимента с сохранением стакана
 
Цитата
Delv написал:
Цитата
nikolz написал:
 
Цитата
Delv  написал:
Решил сохранить историческую информацию о стаканах по отдельно взятому инструменту.
Есть 2 обработчика: OnQuote и OnAllTrades. В обоих стоит фильтрация по инструменту. События из них кладутся в некий общий список(std::list<std::any>),
 Забыл сказать Вам ранее.
1) Существуют сделки, которых нет в стакане.
2) Для эксперимента можно сделать так.
Синхронизируйте часы компьютера от сервера точного времени. При этом проверьте на сколько будет уходить время на Вашем компьютере.
Реально получить 2-5 ms .
Потом пишите стакан и сделки с метками компьютерного времени.
Потом обработайте файл с оценкой разницы компьютерного времени и времени сделок.
В итоге Вы получите, что сделки приходят к Вам с запозданием
Сделки и срезы стаканов могут приходит в одном пакете.
Количество изменений стакана  в действительности всегда больше чем число совершенных сделок.
Но выбор среза стакана очевидно определяется не моментом совершения сделок, либо не только.
-----------------
В любом случае, если так сделаете, то узнаете много нового.
===============
Прим: Когда-то давно привозили данные с биржи по сделкам для экспертизы в рамках одного уголовного дела.
Там много чего есть интересного.
Спасибо, надо будет поинтересоваться. Пока же я буду просто использовать очередность сделок и кадров стакана. Разница по времени там небольшая будет. Те же 2-5 мс для меня не имеют особого значения, так как на сделку(отправка заявки на биржу и получение ответа по транзакции) уходит куда больше. До 250 мс.
2-5 ms - это  не задержка прихода, а ошибка синхронизации времени компьютера относительно времени биржи.
Эта величина погрешности. Вы же не используете градусник у которого погрешность измерения 10 градусов.
-----------------------------
На форуме я выкладывал результаты измерения запаздывания прихода сделок и свечей. Получались даже секунды, а для свечей десятки секунд.
----------------
Но если Вам все равно, но какой смысл вообще смотреть вчерашний день.
Сохранение стакана, Описание эксперимента с сохранением стакана
 
Цитата
Delv написал:
Решил сохранить историческую информацию о стаканах по отдельно взятому инструменту.
Есть 2 обработчика: OnQuote и OnAllTrades. В обоих стоит фильтрация по инструменту. События из них кладутся в некий общий список(std::list<std::any>),
Забыл сказать Вам ранее.
1) Существуют сделки, которых нет в стакане.
2) Для эксперимента можно сделать так.
Синхронизируйте часы компьютера от сервера точного времени. При этом проверьте на сколько будет уходить время на Вашем компьютере.
Реально получить 2-5 ms .
Потом пишите стакан и сделки с метками компьютерного времени.
Потом обработайте файл с оценкой разницы компьютерного времени и времени сделок.
В итоге Вы получите, что сделки приходят к Вам с запозданием
Сделки и срезы стаканов могут приходит в одном пакете.
Количество изменений стакана  в действительности всегда больше чем число совершенных сделок.
Но выбор среза стакана очевидно определяется не моментом совершения сделок, либо не только.
-----------------
В любом случае, если так сделаете, то узнаете много нового.
===============
Прим: Когда-то давно привозили данные с биржи по сделкам для экспертизы в рамках одного уголовного дела.
Там много чего есть интересного.
getParamEx
 
Цитата
Alexander написал:
GAZP, фьючерсы идут GAZR
Я вроде бы изначально объяснил - возьмите таблицу с биржи и формируйте по ней код фьючерса
Для тех, кто в танке, объясняю на пальцах:
Код
базисного
актива
(поле "C")
Код
базисного актива
на срочном рынке
Название базисного актива
GZGAZRПАО "Газпром" (о.а.)
SPSBPRПАО Сбербанк (п.а.)
SRSBRFПАО Сбербанк (о.а.)
Делайте , как говорю, и будет Вам счастье.
Когда лучше getParamEx, а когда getParamEx2 ?, Что предпочесть ?
 
Цитата
BVladimir написал:
Цитата
nikolz написал:
Динамические данные надо брать через  getParamEx., а getParamEx вызывать при срабатывании onParam.При этом, чтобы не читать ненужное, надо в onParam поставить фильтр на торгуемые инструменты.
При срабатывании onParam вызывать именно getParamEx или всетаки getParamEx2 ?
В документации OnParam написано:
При вызове данной функции пользователь может вызвать функцию getParamEx() и получить значение нужного параметра.  
------------------
getParamEx2
Функция предназначена для получения значений всех параметров биржевой информации
из Таблицы текущих торгов с возможностью в дальнейшем отказаться от получения
определенных параметров, заказанных с помощью функции ParamRequest. Для отказа от получения какого-либо
параметра воспользуйтесь функцией CancelParamRequest.
---------------
getParamEx
Функция предназначена для получения значений всех параметров биржевой информации
из таблицы «Текущие торги». С помощью этой функции можно получить любое из
значений Таблицы текущих торгов для заданных кодов класса и инструмента.
====================
полагаю, что если нет надобности использовать ParamReques,
то проще getParamEx.
Формат orders.dat и trades.dat
 
Нигде.
Все форматы файлов данных QUIK закрыты разработчикам.  Этой хотелки уже более 20 лет.
getParamEx
 
Цитата
paluke написал:
Ну почти... Посмотрите на сбербанк или газпром. Код базового актива для фьючерса может не совпадать с кодом акций.
покажите, где для фьючерса сбербанка и газпрома код не совпадает.
Код базового актива у сбербанка SR и SP, а у газпрома GZ.
У какого фьючерса этих акций иначе?
Когда лучше getParamEx, а когда getParamEx2 ?, Что предпочесть ?
 
Цитата
BVladimir написал:
Цитата
nikolz написал:
Функция getParamEx берет параметры из архива терминала. Это сравнительно медленно.У инструментов много неизменяемых  параметров. Их лучше выбрать один раз и сохранить в таблице. Потом брать из этой таблице не используя getParamEx.
Т.е. "более" актуальные данные нужно брать через getParamEx2 во всех случаях, когда открыта ТТТ ? Или могут быть другие ситуации ?
Динамические данные надо брать через  getParamEx., а getParamEx вызывать при срабатывании onParam.
При этом, чтобы не читать ненужное, надо в onParam поставить фильтр на торгуемые инструменты.
Таблица с измемениями открытого интереса
 
Цитата
Mariana написал:
Здравствуйте,

Я хотела бы научиться писать небольшие вспомогательные програмки на QLUA, опыт програмирования у меня очень небольшой, когда-то давно был курс в университете. Я смогла написать следующую программу, которая выполняет следующее:
при запуске формируется таблица с фьючерсами, запоминается в отдельной колонке открытый интересе в момент создания таблицы.
Далее, каждые несколько секунд берется текущий открытый интерес и вычисляется изменение открытого интереса. Эти данные выводятся в отдельную колонку.

На текущий момент, больше всего я не понимаю, как работать с типами данных, почему-то чтобы выводились данные в колонку - их нужно преобразовывать в строки, иначе у меня выводятся нули.
К сожалению, мне очень не хватает рабочих примеров, чтобы быстрее обучиться.

Хотя код рабочий, я буду признательна, если кто-то сможет подправить код с точки зрения приведения типов. Хочется чтобы в столбцах OI, OIINIT, OICHG, OICHG% были не строки, а числа.

И еще один вопрос, можно ли добавить столбы
- которые брали бы открытый интерес на начало дня (на 10 утра по Москве, либо на 19:00 предыдущего дня - любой вариант подходит)
- которые брали открытый интерес который был 15 минут назад (получается, это поле должно динамически обновлятьс, достаточно раз в минуту например)
Ликбез.
Скрипты пишем не на QLUA, а на Lua. QLua- это библиотека функций для Lua. Эти функции позволяют скрипту обмениваться данными с терминалом QUIK.
Поэтому про типы и как писать скрипты на луа надо читать в литературе по программированию на луа.
https://jevico.github.io/
https://eligovision.ru/media/upload/lua.pdf
https://chenweixiang.github.io/docs/Programming_in_Lua_4th_Edition.pdf
-----------------------
Относительно типа выводимых данных в таблицу.
Чем Вам мешает сохранение чисел в формате строк?
В данной реализации отображения таблицы используется формат строки для  хранения отображаемых данных,
поэтому надо явно делать из чисел строки. Так сделали разработчики, поэтому надо делать именно так.
----------------------
Изучите библиотеку QLUA и делайте так, как написано в документации. Примите это как догму и не пытайтесь угадать "почему" так сделали разработчики библиотеки.
-----------------
QUIK - это программа для подачи поручений брокеру в текущий торговый день.
Поэтому в ней отображается текущая информация. Если Вам надо информацию прошлых дней то ее надо сохранять в файлах и потом считывать и отображать.
Т е вам надо сделать запись в файл  OI, OIINIT, OICHG, OICHG%  и считывать значения при запуске QUIK.
Хранить данные Вы можете и в двоичном виде как числа, преобразовывать в строку надо лишь для  отображения на экране.
Когда лучше getParamEx, а когда getParamEx2 ?, Что предпочесть ?
 
Цитата
BVladimir написал:
Приветствую, всезнающий All !

1. У меня открыта таблица тек.торгов с нужными инструментами. Как правильно получать данные из нее getParamEx или getParamEx2 ?
2. Сработал колбэк OnParam. Также- как правильно - getParamEx или getParamEx2 ?
Функция getParamEx берет параметры из архива терминала. Это сравнительно медленно.
У инструментов много неизменяемых  параметров.
Их лучше выбрать один раз и сохранить в таблице.
Потом брать из этой таблице не используя getParamEx.
getParamEx
 
Цитата
Alexander написал:
Цитата
nikolz написал:
У Вас есть список акций, которые Вас интересуют.
1. У меня нет списка акций. Я его хотел получить именно из списка фьючерсов на акции, которые есть на Мосбирже. Зная список акций я без проблем получаю нужный мне список фьючерсов на акции.
Можно сделать так:
1) получить этот список из списка открытых инструментов.
2)сформировать списку фьючерсов по этому списку.
3) выбрать те фьючерсы, на которые подписан
4) оставить только те акции для которых есть фьючерсы.
-------------------
относительно "быстро"
Вы  делаете это один раз при старте КВИК поэтому время вычислений не имеет значения. в любом случае не превысит нескольких секунд.
getParamEx
 
Цитата
Alexander написал:
Цитата
nikolz написал:
Сейчас уже точно не помню, но вроде бы делал какой-то листинг и по нему формировал фьючерсы . При этом учитываешь какой квартал, так как для разных кварталов разные правила. Все делается автоматом.
У меня есть строка, полученная так: sec_list = getClassSecurities("SPBFUT") и впринципе её раскидать на фьючерсы разные проблем нет никаких, хоть по кварталам используя "Спецификации коротких кодов фьючерсных и опционных контрактов на срочном рынке" c Мосбиржи:  https://www.moex.com/s205
Но в любом случае для отсева из всей этой общей кучи, чтобы отделить только фьючерсы на акции, придётся задавать что-то, связанное с акциями. Я для этого использую шаблон на каждую акцию и ищу через string.gmatch(longStr, Str .. "(%u)(%d)"), где longStr = sec_list, Str = шаблон((AF) например для Аэрофлота). Но вот сформировать тоже самое не задавая шаблон(не привязываясь к акции) никак не получится, нет такой возможности.
может что-то забыл, но в указанной Вами ссылке вроде все есть:

Спецификации коротких кодов фьючерсных и опционных контрактов на срочном рынке

Коды срочных контрактов состоят из следующих частей:

Коды фьючерсов
CMY


Коды опционов

CPKMY
                                                           
W
     

C – краткий код базисного актива,
P – цена страйк (максимум 6 символов),
К – тип расчетов,
M – месяц исполнения (а также тип для опциона),
Y – год исполнения,
W – признак недельного опциона.


Кодирование базового актива (поле "C")

Группа
контрактов
Код
базисного
актива
(поле "C")
Код
базисного актива
на срочном рынке
Название базисного актива
Я же написал как делал
У Вас есть список акций, которые Вас интересуют.
Из таблицы Кодирование базового актива находим код базового актива на срочном рынке
-------------------
После этого записываем код фьючерса:
---------------
кода базового актива, месяц, год.
------------------
В итоге получите список фьючерсов для акций.
=============
Если используете колбек onParam, то те коды фьючерсов на которые вы не подписаны никогда не получите.
В результате у вас будут коды фьючерсов на акции, на которые вы подписались
------------------
Аналогично опционы.
------------------
Что не так?
getParamEx
 
Цитата
Alexander написал:
Цитата
nikolz написал:
 
Цитата
Alexander  написал:
Подскажите кто знает если. С помощью getParamEx есть ли параметры в ТТТ такие, чтобы отсортировать фьючерсы на акции от остальных фьючерсов. В квике по названию вроде ничего не подходит. Или как-то такое сделать по другому. Т.е. я получаю: sec_list = getClassSecurities("SPBFUT") и потом мне из всей этой кучи надо выделить только фьючерсы на акции. По класскоду у всех "SPBFUT", что у индексных, что у товарных, что у акционных. Пока вижу только вариант через string.gmatch и шаблон, но тогда для каждого варианта(смотрим на мосбирже все фьючи на акции) надо указать шаблон. Так пока делаю, но это длинно, для каждой акции свой шаблон. И спиок на бирже могут поменять и придётся менять код. Типа бы какого-нибудь не только класскоде, а ещё бы и подкласса иметь на фьючерсы на акции.
 Когда-то давно делал так. На бирже находим правила формирования названия фьючерса. Далее по имени нужных нам акций формируем имена фьючерсов. При этом еще учитываем правило формирования даты фьючерса. Все вроде бы работало правильно.
Ну я типа так и делаю. Только даже проще. Мне так же приходиться как и у Вас написано "по имени нужных нам акций" определять шаблон и по нему мне из всей кучи находит СРАЗУ ВСЕ доступные на данный момент фьючерсы на эти акции, без всякого " правило формирования даты фьючерса". Думал может можно как-то упростить, так как на каждую акцию приходится задавать свой шаблон(Аэрофлот - AF, Газпром - GZ, и т.д).Но список может меняться и приходится постоянно следить и корректировать код, а этого хотелось бы избежать. Это можно было бы легко делать если бы например Мосбиржа помимо кода на фьючерсы "SBPFUT", например ввела бы подкоды. Для фьючерсов на акции свой подкод, для валюты свой, для товаров свой, для процентных свой и для индексных свой. Но такого видимо нет.
Сейчас уже точно не помню, но вроде бы делал какой-то листинг и по нему формировал фьючерсы .
При этом учитываешь какой квартал, так как для разных кварталов разные правила. Все делается автоматом.  
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
Цитата
Как же не имеет можно норм. распределение считать вероятности получать!
Ликбез.
--------------------
А кто Вам сказал, что Вы имеете нормальный закон распределения.
По-секрету Вам скажу, что еще в прошлом веке было доказано что нормальный закон встречается редко.
--------------------------
Если закон не нормальный, то арифметическое среднее не является состоятельной оценкой первого момента плотности вероятности, т е средней величиной.
----------------------------------------
В результате появились методы  робастного оценивания.
--------------------------------------------------------
Ученье -свет, а неучей-тьма.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
существует правило:  Рынок двигают рыночные заявки.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Ликбез.
Если игрок ставит лимитную заявку , которая теперь называется пассивной, то он делает ровно тоже самое что и маркетмейкер,
т е играет против рынка и тем самым сжимает спред.
----------------------
Именно поэтому биржа за такие ставки не берет комиссию у простых игроков,
а маркетмейкеру она еще за это приплачивает.
-------------------
Так что все лимитчики становятся маркетмейкерами,хотя сами этого и не знают.
квик полностью недоступен, даже не могу запустить
 
переустановите полностью или откатите назад. Возможно что-то не из той версии или что-то удалили
GetParamEx2(). А что, так можно?
 
Цитата
Kolossi написал:
Признаться даже в голову не пришло проверить param_type. Боюсь даже спрашивать нахрена это придумано.
Спасибо за подсказку.
могу предположить для корректности преобразования. Т е чтобы строки не пытались смотреть как числа.
У них в таблицах очевидно не поддерживается формат луа.
Возможно, чтобы компактно хранить или быстрее вытаскивать из архива терминала.
У них еще много особенностей в форматах данных библиотеки QLUA,
поэтому лучше делать как в документации и тогда не будет сюрпризов.
GetParamEx2(). А что, так можно?
 
Цитата
Kolossi написал:
local aaa=getParamEx(p_classcode,"GMKN","EV_SESS_ALLOWED").param_value local bbb=getParamEx(p_classcode,"LSRG","EV_SESS_ALLOWED").param_value message(aaa.."/"..bbb)- aaa=getParamEx(p_classcode,"GMKN","EV_SESS_ALLOWED").param_image local bbb=getParamEx(p_classcode,"LSRG","EV_SESS_ALLOWED").param_image message(aaa.."/"..bbb)
Все правильно.
Данное поле имеет тип 3 .
И если прочитаете документацию, то там черным по белому на русском написано:
param_valueSTRINGЗначение параметра. Для param_type = 3 значение параметра равно «0», в  остальных случаях – числовое представление. Для перечислимых типов значение  равно порядковому значению перечисления
Вы это и получили
getParamEx
 
Цитата
Alexander написал:
Подскажите кто знает если. С помощью getParamEx есть ли параметры в ТТТ такие, чтобы отсортировать фьючерсы на акции от остальных фьючерсов. В квике по названию вроде ничего не подходит. Или как-то такое сделать по другому. Т.е. я получаю: sec_list = getClassSecurities("SPBFUT") и потом мне из всей этой кучи надо выделить только фьючерсы на акции. По класскоду у всех "SPBFUT", что у индексных, что у товарных, что у акционных. Пока вижу только вариант через string.gmatch и шаблон, но тогда для каждого варианта(смотрим на мосбирже все фьючи на акции) надо указать шаблон. Так пока делаю, но это длинно, для каждой акции свой шаблон. И спиок на бирже могут поменять и придётся менять код. Типа бы какого-нибудь не только класскоде, а ещё бы и подкласса иметь на фьючерсы на акции.
Когда-то давно делал так. На бирже находим правила формирования названия фьючерса. Далее по имени нужных нам акций формируем имена фьючерсов. При этом еще учитываем правило формирования даты фьючерса. Все вроде бы работало правильно.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:они как раз у тех у кого миллионные обороты.
Включите таблицу "всех сделок" и посмотрите на исполнение, когда пройдут пройдут 100 млн $ посчитайте сколько на берется сделок.
HFT роботы - это скорее инструмент маркетмейкера и тех кого он привлекает для подержания определенной ликвидности, есть конечно и частники как же без них.00 лет назад на современном рынке уже как телега с кобылой на шоссе.
Вы про айсберг -заявки знаете?
Я вам вообще-то про мировые рынки, которые подобно океану,  говорю, а не про российский рынок, подобный небольшому озерку.
Рекомендую почитать про обвалы на биржах США и кто их создал.  
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
Цитата
Хотелось бы увидеть картину как трейдер с миллионными оборотами сидит и рассматривает минутки а лучше тики.
Это называется HFT роботы, они как раз у тех у кого миллионные обороты.
---------------------
Трейдер не сидит и не смотрит, так как это высокочастотный робот.
---------------------
Таких роботов сейчас на биржах из всей массы торгующих процентов 70.
-----------------
В инете, правда на английском, можно встретить статьи реальных крупных трейдеров,  которые торгуют сами . Они рассказывают как было до прихода HFT и как теперь стало трудно торговать и как они теперь меняют свои стратегии.
В итоге, то что в популярных книжках и сделано 100 лет назад на современном рынке уже как телега с кобылой на шоссе.
--------------------------------
Безусловно HFT не для частных инвесторов - это инструмент крупных банков, инвест. фондов, короче монстров фондового рынка.
move_orders, move_orders
 
Цитата
krabykraby написал:
GetParamEx?
эта функция получения параметра из архива терминала QUIK, а не сервера QUIK.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
Цитата
nikolz написал:
из предполагаемой модели движения цены.
Сейчас расскажу с начала:
1) "Где деньги Зин"?
2) Чем цену двигают на рынке?
3) кто может поволить, безопасно для себя двинуть цену?

Вот Вам модель:
накопление позиции,  когда с рынка выбрано предложение, цена летит до уровня где встретит сопротивление.
Если сопротивление серьезное, буде распределение актива. И все сначала.

Вы поймите никто на рынке не устраивает игрушки с моделями и распределениями,
все рулит конъектура подчиненая закону Спроса и Предложения.  
Опять Вы ошибаетесь.
Закон Спроса и Предложения - это и есть модель рынка.
Модель - это упрощенное представление действительности.
Мозг всегда явно или неявно на основе опыта и знаний создает модели действительности и прогнозирует реальные события на основе этих моделей.
-------------------
Человек в своей деятельности всегда создает модели , прежде чем реализует что-то в будущем.
Закон - это формулировка некоторой закономерности на основе упрощенной модели действительности.
 
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
nikolz,
Цитата
nikolz написал:
Вероятностные события, это события которые могут произойти, но не обязательно. А прогноз - это и есть Ваше ожидание каких-то событий.
Индикаторы в основном отвечают на два постулата:
1) Определить направление тенденции;
2) Определить зоны Перекупленности / Перепродонасти.
Чтоб они стали статистически значимы нужна серьезная выборка.
А это значит и серьезное отставание от события.

Мы ищем приемлемое между сглаженностью и отставанием.
Так прогностический у нас взгляд или вероятностный?

При составлении рыночных прогнозов надо учитывать главное (фундаментальное)

Цены меняются согласно закона "спроса и предложения".
Когда спрос превышает предложение, то цены растут;  
Когда предложение превышает спрос, то цены падают.

Опытные трейдеры не торгуют против рынка!

управления через прогнозируемое, правильнее наверно подбор целей,
как и сам технически анализ основывается на ряде аксиом.
Одна из них "Если мы определили тенденцию то она будет какое то время продолжаться"

Ну к примеру делаем прогноз:

посчитали что измененни цены за прошлый год в среднем 0.5% роста в день.
   252р.д * 0.5% = 126% годовых нас устраевает.
Допустим есть отличный алгаритм определения точки входа.
Входим цель соответсвует нашему прогнозу,
но тут событие 02.22г. все рухнуло.
Пересчитываем теперь у нас измененни цены за прошлый год в среднем -0.5% снижения в день. Меняем цель.

Тут операторы заметили что рынок ушел сильно в зону перепроданости цены интересны и начинают накпление.

Это Вам не чего не на поминает?

подбор целей посмотрите Т.Демарка у него хотябы структурировано.
Возражая, Вы лишь подтверждаете то, что я сказал.
Попробую Вам это показать на Ваших ответах.

Вы возражаете против того, что всегда используете прогнозирование, но пишите

Индикаторы в основном отвечают на два постулата:
1) Определить направление тенденции;
2) Определить зоны Перекупленности / Перепродонасти.

1) и 2) - это и есть прогноз поведения цены и состояние рынка в будущем. Вы называете прогноз поcтулатом, но термин Постулат в данном случае не применим.
ПОСТУЛА́Т, - Исходное положение, принимаемое без доказательств.  
Т е постулат - это некие исходные предположения (аксиома)  но 1) и 2) - не содержат предположений, а определяют лишь Ваши желания.
---------------------------
Ваше утверждение: При составлении рыночных прогнозов надо учитывать главное (фундаментальное)
является  вашим ПОСТУЛАТОМ.
-------------
На самом деле что и как учитывает игрок на рынке зависит от его знаний и опыта, но любой игрок, делает прогноз перед тем как сделает ставку.
--------------------
Относительно Т.Демарка
Любой автор книжки или лектор на курсах всегда выстраивает некоторую логику в своих интересах, подбирает только те примеры из бесконечного множества, которые наглядно показывают, что он прав.
-----------------
Проблема в том, что на рынке будут обязательно ситуации, когда Ваш прогноз  по правилам Демарка будет ошибочным. Если бы было не так, то не было бы ни кризисов, ни постоянного притока буратин и оттока проигравших.  
Уверен< что Вы не читали, поэтому рекомендую почитать книгу Джорджа Сороса «Новая парадигма финансовых рынков», он ее написал после кризиса 2008 года.
Она сложнее, чем популярные книжки Демарка и других "прославленных"  брокерами гуру.  
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
Цитата
nikolz написал:
является прогностическим и это не зависит от выбранных вами индикаторов.
А с чего  вдруг, в лучшем случае вероятным, если умеете ее считать.
Вы путаете понятия.
--------------------
Вероятностные события, это события которые могут произойти, но не обязательно.
А прогноз - это и есть Ваше ожидание каких-то событий.
Все решение о покупке или продаже Вы примите в будущем, так как в прошлом вы их уже приняли.
-----------------------
Вы принимаете решения на основе Вашего убеждения, что это решение правильное.
Если Вы покупаете, то Вы ожидаете,что цена пойдет вверх т е Ваш мозг прогнозирует.
Если Вы берете правила из книжки, то Вы используете чей-то алгоритм, который по мнению автора позволяет прогнозировать движение цены в ожидаемом направлении.
======================
В основе любого прогноза лежит статистика или иначе сказать накопленный опыт.
В итоге любое наше действие по жизни всегда связано с прогнозом его последствий.
-----------------------
То каким образом мы формируем свои ожидания определяется методом, который используем для прогноза.
--------------------------------
Если используете монте-карло, цепи Маркова или максимального правдоподобия , то это будет вероятностный прогноз т. е. решение  принимаем на основе вычисления оценки вероятности наступления данного события.
---------------------
Если используете индикаторы, а решения принимаете на основе их пересечения между собой или с уровнями, то Вы прогнозируете на основе статистических наблюдений в прошлом, но и в этом случае Вы используете априорную вероятность наступления событий.
-------------------
Т.е. Вы сознательно или нет всегда прогнозируете последствия своих действий и прогноз этот строите на основе статистики (опыта) связывая это с вероятности успешного решения.
 
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
и еще...
Относительно индикаторов в том числе RSI Вы немного заблуждаетесь.
Любое решение на рынке, кроме решений методом монте-крало, является прогностическим и это не зависит от выбранных вами индикаторов.
А вот индикаторы должны выбираться исходя из предполагаемой модели движения цены.
-------------------
Если Вы списываете индикаторы из книжки , то Вы должны быть уверены что рынок сейчас соответствует  модели рынка, которую взял автор этой книги.
----------------------
Самое прикольное, что все авторы этих бестселлеров на самом деле рассказывают одно и тоже и берут одни и те же индикаторы - самые простейшие цифровые фильтры как правило не выше 2-го порядка.
Поэтому с точки зрения цифровой обработки сигналов все эти гуру жонглируют примитивной арифметикой, при этом показывают специально подобранные эффективные картинки движения цены.
===============
В интернете Вы можете найти объемные статистические исследования практически всех книжных алгоритмов и доказательство что на большом интервале времени эти алгоритмы ничего существенного вам не дадут.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
Цитата
Nikolay написал:
Уже давно были проведены количественные эксперименты по случайным методикам входа в позицию. Элементарно монеткой, кубиком. Все сводится к управлению рисками.
Про вход в позицию каждый день каждый из нас случайным образом, кому то удается вероятность подтянуть на свою сторону.
Знания арифметики в этом случае полезны, можно прикинуть сколько средств нужно чтоб двинуть рынок.
Цитата
Nikolay написал:
Впрочем, тем, кто не гадает, а изучает компании в которые собирается инвестировать, монетка не нужна, как и скользящие средние и т.д.
Плюс есть но не более. см мой пример с нефтью.
Рынки живут по закону Спроса и Предложения!
Не зная этих основ, тяжело рассчитывать на стабильность  и учитывать с кем имеешь дело.
Вы заблуждаетесь. Маркет -мейкер - это игрок на бирже, задача которого  сжимать спред. Т е у него просто стратеги играть против движения рынка. Ему за это биржа платит.
Но на рынке есть и обычные игроки которые играют против рынка. Поэтому маркет-мейкер ни при чем.
Очереди и двойные очереди в луа, Пример из книги Р.Е.
 
Цитата
VPM написал:
На мой взгляд важней здесь математика. Вот пример.

Если считать простую среднею и использовать при определении тренда то и получишь что насчитал,
а данном случае отставание результата составляет Period/2+1, то есть заметил тренд после половины периода этой средней.
И что с этим делать я не знаю,
я использую фильтры, ведь космические корабли стыкуют в автоматическом режиме в заданный момент времени.
Ну отставание 1 - 2 бара при выявленной тенденции можно себе позволить.

Мне вот  в начале работы над скриптом казалось, что торговать нужно НА ВСЕХ таймфреймах одновременно.
Это все описано и опубликовано и есть подходы, к примеру 3 окна Эльдера.
Попробую высказать свое мнение.
------------
Интересно, как Вы ответите на такие вопросы:
1) Почему известные в книгах методы торговли встречаются в литературе как успешные лишь единожды.
Например метод черепах. Никто не похвалился, что он повторил то, что прочитал и стал миллионером положив изначально на депозит 1000 руб?
2) Почему победители различных трейдерских соревнований выигрывают лишь один раз.
----------------
Кратко мой ответ состоит в том, что все перечисленные выше события являются случайными.
=============
Относительно методов, например Эльдера или еще каких-то известных гуру, которые никогда не были не то что математиками, но и не изучали ее. Все их методы - это арифметика.
--------------------------------------
В таких  книгах примеры эффективности этих методов всегда подобраны именно так, чтобы доказать то, о чем пишет автор.
Никто из них не привел доказательство работы этих методов тогда, когда рынок не движется так, как думает автор,
=================
Когда человек торгует на рынке сам или пишет некоторую программу торговли, то он сознательно или нет использует некоторую модель (картинку) будущего движения цены.  Если Вы используете какие либо индикаторы - свечи, скользящее среднее, RSI и т д, то успешность торговли зависит от того позволяют ли эти индикаторы, которые являются фильтрами, сформировать из движения цены нужное Вам решение
купить/ продать.
=================
К сожалению, большинство частных инвесторов опираясь на знания полученные на курсах, на которых пересказывают книжки этих гуру строят стратегию торговли методом "рекле"  - режу-клею.
Т е нарезали индикаторов и рекомендаций из разных книжек и склеили их в один скрипт  не получилось снова рекле.
--------------------------
Страницы: Пред. 1 ... 15 16 17 18 19 20 21 22 23 24 25 ... 80 След.
Наверх