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

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

Страницы: Пред. 1 ... 36 37 38 39 40 41 42 43 44 45 46 ... 78 След.
QLua поддерживает работу с метатаблицами?, QLua полностью по функционалу соответствует Lua ?
 
Цитата
Alexandr написал:
Реализована ли в QLua работа с метатаблицами в полном объеме?

setmetatable ( u, mt )  
QLua ничего для работы с мета таблицами не реализует ни в каком объеме.
Она не про это.
--------------------------
Все реализовано в VM (виртуальной машине) Lua, которую разработчики КВИК просто  взяли и ничего даже не изучая и не изменяя,
просто вставили в свою сборку терминала КВИК .
----------------------------------------
Поэтому вам и говорят, что это Lua версии 5.3 или 5.4.
Т е идете на сайт разработчиков LUA и там смотрите на сишные функции виртуальной машины Lua
и изучаете в каком объеме в VM Lua реализована работа с мета таблицами.
Потом читаете документацию по луа, а не по QLUA, чтобы понять в каком объеме и что реализовано в VM LUA.
------------------------------
QLua - это библиотека функций написанных на си.
Эти функции описаны в документации на QLUA.
Эти функции позволяют вам (Нам) из скриптов написанных на луа или из функций написанных на СИ
обращаться к возможностям терминала QUIK  
Меняю Вашу торговую идею на мою автоматизированную торговую систему., Обмен опытом и знаниями
 
Цитата
Константин написал:
В моем случае доверительный интервал это все данные в системе сколько удалось накопить. (3 года)
Вы заблуждаетесь.
Доверительный интервал это совершенно другое.
-----------------
Если забыли статистику, то хотя бы в Вики посмотрели там сказано:
-------------------------
Довери́тельный интерва́л — термин, используемый в математической статистике при интервальной оценке статистических параметров, более предпочтительной при небольшом объёме выборки, чем точечная. Доверительным называют интервал, который покрывает неизвестный параметр с заданной надёжностью.

Доверительным называется интервал, в который попадают измеренные в эксперименте значения, соответствующие доверительной вероятности[1].

Метод доверительных интервалов разработал американский статистик Ежи Нейман, исходя из идей английского статистика Рональда Фишера[ссылка 1].

-------------------------------------------

Если Вы действительно горшок называете "горшком", а вероятность "вероятностью", а не наоборот,
то вы должны  были  в своей статье  сделать вывод иначе, чем этот (цитата из Вашей статьи).
"... поступило всего 10 сигналов на покупку от разных стратегий. У каждого из них вероятность колебалась от 0.4 до 0.6 (40-60%).
Средняя вероятность например получилась 0,59 (59%). Следовательно поступившие сегодня сигналы на покупку с вероятностью 59 % сработают."
------------
Пусть "... поступило всего 10 сигналов на покупку от разных стратегий.
У каждого из них вероятность колебалась от 0.4 до 0.6 (40-60%).  - - непонятно, чтобы это значило -   "вероятность колебалась"
Средняя вероятность например получилась 0,59 (59%). --если вы считаете среднее состоятельной оценкой,
то откуда вы взяли, что плотность вероятностей для этих сигналов симметрична.
как минимум она несимметричная, а следовательно оценка ваша смещенная.
В действительности Вы понятия не имеете какой закон распределения ваших сигналов, тогда среднее вообще ни о чем.
-------------------------------
Следовательно поступившие сегодня сигналы на покупку с вероятностью 59 % сработают."
---------------------
Но даже, если предположить что закон симметричный и среднее реально указывает на центр тяжести,
и разброс 40 -60, то среднее 50%
Допустим что разброс от среднего в 10% - это сигма, то с вероятностью 0.997,
доверительный интервал будет 3 сигма.
--------------------
В результате получился такой вывод:
При разбросе 40-60  среднее значение успешности сделки по этому сигналу составляет 50% с доверительным интервалом от 20% до 80%.
--------------------------------
Т е результат успеха такой же ,
как , если бы Вы просто подбрасывали монету и
"Орешка" - купил.
" Орел" - продал,
а если  на ребро -  то пьем кофе.
----------------------
Примерно так.
bshl / bshr metamethods
 
Скажу Вам по секрету,
лучше читать не на заборе, особенно , если там написано русскими словами,
как правило, те кто пишет на русском списывают это с англоязычных сайтов и с ошибками,
а начинать читать с первоисточника.
-------------------
Например , в Вашем случае, смотрим документацию на Lua 5.3 (5.4)
Скрытый текст
что в переводе гугла означает:
Скрытый текст
Примерно так.
Метки в индикаторе, При перезапуске Квика получается наслоение меток
 
Цитата
Старатель написал:
Индикатор:
Код
   local  Labels  =  {}
 function   OnCalculate (index)
   if  index  =  =   1   then 
    OnDestroy()
   end 
   .. .

   local  Label  =   AddLabel (Settings.tag, Param)
   if  Label  and  Label  >   0   then 
    Labels[ # Labels +  1 ]  =  Label
   end 

   .. .
 end 

 function   OnDestroy ()
     for  i  =   1 ,  # Labels  do 
       PrintDbgStr ( 'DelLabel('   ..  Labels[i]  ..   '): '   ..  tostring( DelLabel (Settings.tag, Labels[i])))
     end 
    Labels  =  {}
 end   

При закрытии Квика срабатывает OnDestroy, но метки с графиков не удаляются. И при следующем запуске индикатор ставит новые метки поверх старых, что есть не хорошо.
Так и было задумано или же ошибка?
Да, это у Вас ошибка в алгоритме.
---------------------------
Если хотите удалить все метки при срабатывании OnDestroy
то напишите так:
Код
function OnDestroy ()
DelAllLabels(tag);
end
Меняю Вашу торговую идею на мою автоматизированную торговую систему., Обмен опытом и знаниями
 
Цитата
Константин написал:
Немного картинок того что реализовано для тех кому лень читать документацию

https://disk.yandex.ru/d/FLEk1XSE-V3vLw
https://disk.yandex.ru/d/vrBj0kdmpF4vgg
интересное решение, но сложно понять достоверность результата.
------------------  
Дело в том, что на истории очень легко получить хороший результат ,
часто это происходит по тому, что строители стратегий
используют индикаторы, которые заглядывают в будущее. например те же свечи.
В итоге можно получить прибыль на истории и гарантированные убытки в реале.
------------------------
Вы легко используете понятие "вероятность успешной сделки" при малом числе сигналов.
Но это не вероятность, а ее оценка.
И эта оценка имеет случайную составляющую.
Следовательно надо указывать доверительный интервал,
а у вас его нет, а оценка - точечная.
А закон распределения плотности вероятности Вашей случайной оценки Вами не установлен.
следовательно надежность оценки не доказана, а получаемые Вами % вероятности - случайная величина.
------------
Примерно так.  
На чем основана Ваша торговая стратегия?
 
Ну а можно так:
С 30 мая 2022 по настоящее время  170 сделок, результат long  +100% .,short +93%



 
bshl / bshr metamethods
 
Цитата
s_mike@rambler.ru написал:
> t=setmetatable({},{ __div = function(x,y) print(x,y) end})> print (t/2)table: 0000000000620d10 2nilЭто работаетА это не работает. что в 5.3 что в 5.4> t=setmetatable({},{ __bshl = function(x,y) print(x,y) end})> print (t<<2)
"Он кричал: «Ошибка тут, —"
t=setmetatable({},{ __shl = function(x,y) print(x,y) end})
print (t<<2)
----------------
table: 0000000000db9ef0 2
nil
тормоза после обновления/июнь 2022, тормоза после обновления/июнь 2022
 
Цитата
Евгений написал:
версия какая у вас после обновления ?
на картинке видно 9.4.2
---------------
Я ее уже снес и вернул 8.7.
----------------------------------
«Всё хорошо, прекрасная маркиза...»
Баг? Глюк? Фича?, При открытии 40+ графика QUIK умирает
 
Цитата
zip3n написал:
Цитата
nikolz написал:
на прошлой неделе поставил со сбербанка боевой квик 9.4
-----------------
Сегодня после очередного зависания снес его нафиг и вернул 8.7.
-----------------------
Как прекрасен этот мир.
довольно радикально) самое смешное что на сервере сбера как раз таки стоит 9.4.2, а вот у другого брокера, который только брокерской деятельностью и занимается с самого своего основания стоит версия 9.2.3.
сервер и клиент - это две большие разницы.
------------------------
клиент ставите на своей машине, где куча разного и различные версии OC.
В итоге может быть все что угодно.
---------------
поэтому я всегда делаю так.
Если новая версия по каким-то причинам начинает сбоить,
а старая работает без нареканий, то я просто возвращаюсь к старой и жду, когда новая отлежится.
-------------
Кривые шибки в QLua
 
Цитата
TGB написал:
3. Существует вариант построения архитектуры встраивания Lua в QUIK, в которой можно использовать однопоточный (нативный) Lua :
1)    вместо регистрации функций обратного вызова, регистрация соответствующих очередей событий (возможно, с теми же именами);  
2)    вместо sleep, использование служебной функции ожидания либо истечения интервала времени (как в sleep), либо появления данных в очередях событий (с выдачей списка непустых очередей);
3) добавление функции чтения очередей событий (их параметров);
4) реализация функций интерфейса c QUIK в виде отдельного пакета dll, подключаемого в Lua.
      Подключение новых версий Lua станет в описанной выше архитектуре рутинной задачей. Исчезнут все проблемы, вызванные текущей многопоточностью QLua.
Что такое (нативный) Lua ? Это Ваше изобретение?
---------------------------
Один тут "чистый" луа придумал, второй "нативный"
-------------------
Для изобретателей мусора :
================

Обратимся к Wiki

Машинный код (также употребляются термины собственный код, или платформенно-ориентированный код, или родной код, или нативный код — от англ. native code) — система команд (язык) конкретной вычислительной машины (машинный язык), который интерпретируется непосредственно микропроцессором или микропрограммами данной вычислительной машины.

==================

еще раз повторю для особо тупых:

нет ни чистого ни нативного Луа,

каждая команда байт-кода луа - это функция, написанная на языке C.

----------------------

Кривые шибки в QLua
 
TGB,
вообще-то синхронизация потоков требуется лишь в том случае,
если оба потока будут писать в одну и туже область памяти.
----------------------------
В приведенных Вами рассуждениях о проблеме функции
LUA_API size_t lua_stringtonumber (lua_State *L, const char *s)
нет доказательства, что эта функция изменяет параметры стека луа.
Явно лишь,  что она их читает, т е конфликта эта функция явно не создает.
----------------------
Тот  факт,
что Вы не умеете работать с потоками,
еще не повод давать советы разработчикам
как замедлять работу программ на многоядерных процессорах
используя лишь последовательное их исполнение.
----------------------
Медленно ездить на телеге, не всегда безопаснее , чем быстро на автомобиле.
Меняю Вашу торговую идею на мою автоматизированную торговую систему., Обмен опытом и знаниями
 
Цитата
Константин написал:
Если Вы имеете в наличии классную прибыльную торговую идею, но не обладаете навыками программирования предлагаю обмен.
Вы озвучиваете свою идею.
Я взамен программирую Вашу идею в своей торговой системе и даю Вам программу бесплатно.
Моя система реализована на платформе 1С Предприятие 8+ Pyhton.
Торгует на Московской бирже через терминал QUIK от Сбербанк брокер.
От Вас потребуется только наличие лицензионной версии 1с Предприятие 8 (~от 13 000 за файловый вариант)
Есть торговая рабочая идея  на основе логической (бинарной)  нейронной сети.
Не могу найти алгоритм оптимизации набора наилучших признаков (сеть логическая!!!).
Нет такого алгоритма для логической сети даже в принципе.
Надо реализация  такого алгоритма на любом языке программирования.
Баг? Глюк? Фича?, При открытии 40+ графика QUIK умирает
 
на прошлой неделе поставил со сбербанка боевой квик 9.4
-----------------
Сегодня после очередного зависания снес его нафиг и вернул 8.7.
-----------------------
Как прекрасен этот мир.
Баг? Глюк? Фича?, При открытии 40+ графика QUIK умирает
 
видел это на 8.7
на 9.4  вижу мелькание окна перед его обновлением
Агрегированные сделки
 
Цитата
Владимир А. написал:
Цитата
nikolz написал:
фондовый и валютный - две большие разницы.
это понятно, я про то, считаются ли 2 сделки по валюте одной заявкой? порядковый номер отличается от предыдущей на 1 и время с точностью в мкс одинаковое
если выставляли одной - то одна, но исполнять ее могут множеством сделок.
Агрегированные сделки
 
фондовый и валютный - две большие разницы.
Уничтожаем фейки
 
Добрый день, Всем.
----------------------
На форуме очень много  буратин и чайников,
жизнь которых на рынке только начинается.
Поэтому попробую, по мере сил и желания,  снять с их ушей лапшу,
которую им упорно развешивают некоторые словообильные посетители.
--------------------
Начнем с определений:
чайник - чел,начинающий программировать робота в QUIK.
буратино - чел,начинающий гений торговли и уверенный в быстром обогащении на бирже, мечтающий о халяве.
Тики - данные отображающиеся на графике с интервалом -"тиковый"
================
Фейк №1
===============
Есть тики , а есть обезличенные сделки и это разные данные, тики -няка, а обезличенные сделки -бяка.
Тики обрабатываются быстрее, чем обезличенные сделки.
--------------  
Такая тема неоднократно появлялась на форуме.
Как правило это связано с самопальными свечами с интервалом меньше 1 минуты.
================
Так вот , противопоставление тиков и обезличенных сделок - это ложь.
Тики и обезличенные сделки - это одни и те же данные.
===========  
Получить эти данные можно тремя способами:
1) подписаться на обезличенные сделки на LUA;
2) заказать обезличенные сделки через меню терминала
3) открыть график с интервалом "тиковые"
-----------------------
Во всех трех случаях данные будут поступать в таблицу обезличенных сделок,в колбек скрипта и на график.
==============
Доказательство :
1) см документацию:
функция CreateDataSource
param – Если параметр не задан, то заказываются данные
на основании таблицы обезличенных сделок.
--------------
2) без заказа через терминал, откройте тиковый график. А потом откройте таблицу обезличенных сделок.
Вы увидите в таблице инструмент с тикового графика.
------------------
3) сделаем следующий тест.
На тиковый график разместим индикатор, который пишет текущую цену инструмента (ТИК) в лог файл.
В этот же лог файл пишем параметры обезличенных сделок данного инструмента, полученные скриптом onAllTrade.
И дополнительно проверим, что же мы получим по данному инструменту через колбек onParam, т е из ТТП.
-----------
Вот результат данного теста:
Код
onAllTrade QJSIM;SMLT;2738.000000,1,0,20220626,131036,0,101420,36
interval=0,QJSIM,SMLT;2738.000000
onAllTrade QJSIM;SMLT;2738.000000,1,0,20220626,131037,0,221,17
interval=0,QJSIM,SMLT;2738.000000
onParam QJSIM;SMLT;2738.000000
onParam QJSIM;SMLT;2737.400000
onAllTrade QJSIM;SMLT;2737.400000,1,0,20220626,131047,0,79827,33
interval=0,QJSIM,SMLT;2737.400000
onParam QJSIM;SMLT;2737.400000
onParam QJSIM;SMLT;2739.000000
onAllTrade QJSIM;SMLT;2737.400000,9,0,20220626,131057,0,98496,32
interval=0,QJSIM,SMLT;2737.400000
onAllTrade QJSIM;SMLT;2737.400000,1,0,20220626,131057,0,202,15
interval=0,QJSIM,SMLT;2737.400000
onAllTrade QJSIM;SMLT;2737.500000,40,0,20220626,131057,0,142,14
interval=0,QJSIM,SMLT;2737.500000
onAllTrade QJSIM;SMLT;2737.500000,1,0,20220626,131057,0,209,16
interval=0,QJSIM,SMLT;2737.500000
onAllTrade QJSIM;SMLT;2738.000000,10,0,20220626,131057,0,165,20
interval=0,QJSIM,SMLT;2738.000000
onAllTrade QJSIM;SMLT;2738.000000,1,0,20220626,131057,0,160,16
interval=0,QJSIM,SMLT;2738.000000
onAllTrade QJSIM;SMLT;2738.000000,2,0,20220626,131057,0,158,12
interval=0,QJSIM,SMLT;2738.000000
onAllTrade QJSIM;SMLT;2738.000000,1,0,20220626,131057,0,149,11
interval=0,QJSIM,SMLT;2738.000000
onAllTrade QJSIM;SMLT;2738.500000,22,0,20220626,131057,0,129,11
interval=0,QJSIM,SMLT;2738.500000
onAllTrade QJSIM;SMLT;2738.500000,1,0,20220626,131057,0,126,11
interval=0,QJSIM,SMLT;2738.500000
onAllTrade QJSIM;SMLT;2738.500000,48,0,20220626,131057,0,122,11
interval=0,QJSIM,SMLT;2738.500000
onAllTrade QJSIM;SMLT;2739.000000,8,0,20220626,131057,0,131,11
interval=0,QJSIM,SMLT;2739.000000
onAllTrade QJSIM;SMLT;2739.000000,1,0,20220626,131057,0,134,19
interval=0,QJSIM,SMLT;2739.000000
onAllTrade QJSIM;SMLT;2739.000000,44,0,20220626,131057,0,125,12
interval=0,QJSIM,SMLT;2739.000000
onParam QJSIM;SMLT;2739.500000
Резюме:
Первым ВСЕГДА отрабатывает колбек onAllTrade, после него данные приходят в индикатор графика.
---------------
Колбек onParam , как и ожидалось принимает лишь некоторые тики,
которые попадают в текущий срез данных, передаваемых в таблицу текущих параметров.
------------------------
Беспрерывная робота робота, Как сделать так, чтобы робот был постоянно в работе и обрабатывал каждый тик?
 
Владимир,
Ну вот опять у вас кроме словесного поноса ничего конкретного.
-------------------
Если Вы все уже рассказали на форуме, так дайте ссылку,
а не трындите про говно и собственную значимость.
--------------------
Или вы не можете написать конкретно с числовыми данными ваших достижений, а опять будете соплями по экрану?
Беспрерывная робота робота, Как сделать так, чтобы робот был постоянно в работе и обрабатывал каждый тик?
 
Если надо вычислять свечи на интервалах меньше 1 минуты можно использовать два источника
----------------------------
1) точное вычисление свечей -  тиковый график или таблицу обезличенных сделок.
2) приближенное вычисление свечей - колбек onParam.
-------------------------
но если решение о сделке принимается резе , чем 1 раз в 10 минут,
то делать свечи с интервалом менее 1 минуты практического смысла не имеет.
---------------------
Беспрерывная робота робота, Как сделать так, чтобы робот был постоянно в работе и обрабатывал каждый тик?
 
Владимир ,
Вы сами себе противоречите.
Вы говорите, что робот не должен обрабатывать каждый тик,
------------------
а свечи секундные Вы из чего собираете и очевидно вручную?
----------------------------
Беспрерывная робота робота, Как сделать так, чтобы робот был постоянно в работе и обрабатывал каждый тик?
 
Цитата
Владимир написал:
nikolz, Может, хватит безграмотные глупости писать?

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

А вот "чтобы робот обрабатывал каждый тик" делать не нужно (если, конечно, Вашей задачей не является испортить его до уровня полной неработоспособности). Тиковых массивов полно в Инете, но для отладки они практически бесполезны, поскольку не привязаны ко времени: может быть сотня тиков в секунду, а могут быть и перерывы между ними в десятки минут и более. Когда я отлаживал скрипт по историческим данным, я специально переводил тиковый массив в свечной, усредняя цену сделок, если их было несколько за секунду. В результате массив на 2 миллиона тиков превратился в массив на 6 миллионов секундных свечей. Вот с ним уже можно работать, ибо время, в отличие от тиков, течёт равномерно. То же самое в боевом режиме: тики не нужны никому и никогда, в т.ч. HFT роботам. Точно так же для торговли в Квике нафиг не нужны ни язык программирования CИ, ни интерфейсы FIX/FAST, ни размещение своего компа в дата-центре. Наконец, нынешний софт Квика вовек не позволит Вам получать все эти тики. По крайней мере, вовремя и без глюков. Да и слава богу! ::
Увы, Владимир, это вы пишите чушь.
-----------------
Вот пример Вашей глупости.
Цитата:  "Тиковых массивов полно в Инете, но для отладки они практически бесполезны, поскольку не привязаны ко времени"
----------------------------
Глупость Ваша в том, что тики -это конкретные контракты и они точно привязаны к конкретному времени их заключения на бирже.
а вот свечи - это средний объем по интервалу и два плавающих экстремума внутри интервала с неопределенным моментом  возникновения.
------------------------------
Более того, свеча это  индикатор, который  по определению физически не реализуем, так как начало свечи всегда меньше времени первого тика  (контракта).
-----------------------
В свече лишь объем является усредненным значением.
===================
по тикам (т е по обезличенным сделкам ) играют крупные игроки.
=================
Если у Вас телега , то это не основание,
чтобы считать самолет бесполезным.
Беспрерывная робота робота, Как сделать так, чтобы робот был постоянно в работе и обрабатывал каждый тик?
 
Цитата
Никита написал:
Друзья, я только начинаю программировать на языке Lua. Начал разбираться и писать бота, но возник затык. Я запускаю 1 раз программу и хочу обрабатывать каждый тик после этого. Если новый тик соответствует заданным мной условиям, то бот совершает определённые действия (покупка-продажа). Как сделать так, чтобы робот был постоянно в работе и обрабатывал каждый тик? Если возможно, то с примером куска кода

Заранее спасибо всем неравнодушным!  
Ну если действительно желаете работать по тикам,
то Вам надо
----------------
1) изучить:
 язык программирования CИ,
 интерфейсы FIX/FAST
https://habr.com/ru/company/iticapital/blog/243657/
2) написать"
собственное ПО для торговли
3) разместить:
свой комп в дата-центре.
------------------------
В итоге у Вас получится HFT робот.
 
Ошибка в коде справки?
 
Цитата
Diver написал:
В Справке в примере к методу OnParam в условии If ругается и пишет , что attempt to compare number with string.
Я так понял, число(130000 в примере) надо в кавычки брать
либо число X в строку tostring(X),
либо строку S  в число tonumber(S)
Беспрерывная робота робота, Как сделать так, чтобы робот был постоянно в работе и обрабатывал каждый тик?
 
Цитата
Никита написал:
Друзья, я только начинаю программировать на языке Lua. Начал разбираться и писать бота, но возник затык. Я запускаю 1 раз программу и хочу обрабатывать каждый тик после этого. Если новый тик соответствует заданным мной условиям, то бот совершает определённые действия (покупка-продажа). Как сделать так, чтобы робот был постоянно в работе и обрабатывал каждый тик? Если возможно, то с примером куска кода

Заранее спасибо всем неравнодушным!  
1) изучите программирование на Lua  
https://russianblogs.com/article/84611423964/
----------------------------
2)  Изучите документацию по QLUA.и примеры в документации.
------------------------------------
3) Если останутся вопросы, то спросите.
Автомасштаб графика сужается иногда, Автомасштаб графика сужается иногда
 
Цитата
Радик написал:
Доброе время суток!
Квик 9.5.0.42
Подскажите пожалуйста, как с этим бороться?
Со временем график начинает отображаться не на всей площади окна. Слева - только что созданное окно, справа - старое.
В старом окн  е прощелкал все настройки, не меняется. Выход удалять старое, создавать новое окно не очень радует(.
У вас графики отличаются.
На левом есть горизонтальная желтая линия, а на правом нет.
Установка Quik 8.5...9.5 в Ubuntu 20.04,..21.10
 
источник: https://athunder.livejournal.com/763507.html
============================================================­=========
  1. Устанавливаем Wine и Winetricks, выполнив в терминале
    sudo dpkg --add-architecture i386
    wget -O - https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add -

    Добавляем репозиторий для Ubuntu 20.04
    sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main'

    Для Ubuntu 20.10 менем focal на groovy:
    sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ groovy main'

    И завершаем установку следующими строчками:
    sudo apt update
    sudo apt install --install-recommends winehq-stable winetricks

    Добавлять поддержку архитектуры win32 (первая команда выше) нужно только если ваша система 64-разрядная.

    Проблему рано или поздно исправят, так что можно будет пользоваться WINE и без дополнительного репозитория:
    sudo dpkg --add-architecture i386
    sudo apt install wine winetricks
  2. Устанавливаем VC6RedistSetup. Можно его скачать с сайта Майкрософт и запустить при помощи Wine. А можно просто выполнить в терминале
    winetricks vcrun6

    Гораздо проще воспользоваться winetricks, т.к. перед установкой VC6RedistSetup он предложит установить необходимые нам "Wine Mono Installer" и "Wine Gecko Installer". На предложения скачать и установить нужно соглашаться и нажимать на кнопку Install.
  3. Скачиваем Quik с сайта брокера. Если приложение находится в архиве (zip, rar), то его нужно предаварительно распаковать. WINE будем запускать с .exe файлом.
  4. Для установки Quik используйте команду в терминале:
    LC_ALL=ru_RU.UTF-8 wine64 quik_inst.exe

    Где вместо quik_inst.exe нужно подставить имя вашего установщика quik (например, это может быть "quik_8.7.exe"). Обратите внимание, что запускать эту команду нужно из папки, в которой находится этот установщик (installer). Если вы скачали его в папку пользователя Downloads, распаковали ZIP архив именно в эту папку, то переходите в неё при помощи команды cd в терминале:
    cd ~/Downloads
  5. Копируем ключи secring.txk и pubring.txk в папку /home/USER/.wine/dosdevices/c:/Program Files/BROKER/Keys, где USER - ваше имя пользователя, а BROKER - подпапка в "Program Files (x86)", в которую установлен торговый терминал Quik (Возможно, вы захотите установить Quik не в Program Files, а в корень, например, в C:\SBERBANK. Тогда и ключи копируем в соответствующую папку). Ключи конечно же можно хранить и в другой папке, при этом в "Система" -> "Настройки" -> "Основные настройки" -> "Программа" -> "Шифрование" -> "Шифровать с помощью СКЗИ" -> Qrypto32 -> "Настроить" нужно указать путь к ключам.
  6. Создаем ярлык для запуска. В моем случае это shell скрипт (текстовый файл с расширением sh) на рабочем столе.
    cd "~/.wine/dosdevices/c:/Program Files/BROKER/"
    LC_ALL=ru_RU.UTF-8 wine64 "c:/Program Files/BROKER/info.exe"
    Если опустить параметр "LC_ALL=ru_RU.UTF-8", то часть текста может отображаться некорректно (вместо текста появляются вопросы или кракозябры).
    Если не перейти в папку с установленной программой перед запуском, то возникают проблемы с настройками.
    Вместе же две команды решают проблемы с запуском Quik в Ubuntu (Linux).
  7. После создания shell скрипта quik.sh можно открыть свойства этого текстового файла и на вкладке Permissions разрешить выполнение в качестве программы. Но можно переходить в папку с этим скриптом в терминале и запускать его, добавляя "./" перед именем файла:
    cd ~/Desktop
    ./quik.sh
  8. После запуска Quik нужно изменить в настройках шрифты. Если этого не сделать, то в некоторых диалогах будут появляться кракозябры, хотя большая часть информации всё же отображается корректно. Для этого в меню выбираем "Система" -> "Настройки" -> "Основные настройки...(F9)" -> "Программа" -> "Шрифты", после чего изменяем шрифты, например, на Arial (или любой другой шрифт, который вам нравится, но который будет корректно отображать русские буквы в Quik).


  9. Если нужно сгенерировать ключи для Quik, то запускаем keygen.exe из под WINE:
    cd ~/.wine/dosdevices/c:/Program Files (x86)/BROKER/KeyGen
    LC_ALL=ru_RU.UTF-8 wine64 keygen.exe
  10. Профит!
Данный способ запуска Quik в Linux прекрасно работает для брокеров ВТБ, Открытие, БКС, Финам, Сбербанк, Промсвязьбанк и прочих. В том числе не возникает и проблем, если для входа требуется SMS подтверждение.

Если при запуске через некоторое время возникает ошибка "Не хватило памяти под объекты, без которых приложение работать не может", то первым делом нужно проверить наличие свободной памяти. .
Обмен сообщениями приложений , скриптов на Lua, Python ,С
 
Цитата
TGB написал:
Цитата
nikolz написал:
  1. Я вынужден согласиться с позицией Владимира, со следующими уточнениями:
1) С его рекомендациями начинающим разрабатывать робота, я, почти полностью, согласен.
2) Если же у кого то есть наработки на языках отличных от QLua, то ему, наверное, следует оценить затраты на перенос своих разработок на QLua и на реализацию интерфейса своих программ с QUIK.
---
2. При том, что вы активно используете IT-терминологию, у меня нет ощущения, что вы «экстра программист»  :: .
  На этом форуме, я думаю, что подавляющее большинство посетителей интересует, как можно заработать на фондовом рынке, а не «танцы» с потоками и потенциальной программной эффективностью. Вы «попали» не на тот форум  ::  ?.
Мне безразличны ваши ощущения.
Но так как Вы слабо разбираетесь в разработке софта, то ваши ощущения также ошибочны как и знания рынка.
-------------------
Судя по рассуждениям Владимира он когда-то программировал  на ассемблере -  давным давно.
-------------------
Очевидно, что сейчас уже отстал и не знает современных IDE.
Поэтому и плюется на потоки, так как не понимает  как с ними работать и очевидно все еще работает на одноядерном компьютере.
-------------------------
Чего стоит его разглагольствования о том, что он обрабатывает тысячу инструментов.
------------------
Вам нравится его болтовня о том,
что ничего не надо кроме "чистого" луа, одного потока и функции main в одном скрипте,
чтобы сделать робота который Вам будет приносить бабло.
--------------------
Смешно такое читать.
---------------------
В одном с Вами соглашусь, на этом форуме в основном буратины,
которые пришли на рынок как на поле чудес в страну дураков и мечтают о халяве.
--------------------------
Переубеждать Вас не буду, так как в этом нем смысла.

 
Автомасштаб графика сужается иногда, Автомасштаб графика сужается иногда
 
Цитата
Радик написал:
Уважаемые коллеги! Неужели ни у кого нет такой проблемы? Квиком 3 года пользуюсь, на всех  компах так у меня было.....
проверьте, что у вас еще на этом графике есть.
добавить параметры графика в settings
 
Предлагаю добавить в settings
параметр для управления флагами графика
"Учитывать при автомаштабировании"
"привязка к левой(правой) оси
и.т.д.
 
Quik для Astra Linux
 
Цитата
Виктор написал:
Цитата
nikolz написал:
 
Цитата
Виктор  написал:
Ну вот, в России Microsoft забанил доступ к новым Windows  
Цитата
 новичок   написал:
   
Цитата
  Виктор    написал:
   Alexey Ivannikov    ,скажите, пожалуйста. Есть ли какой то прогресс в этом направлении?

В сложившихся условиях, когда windows могут начать блокировать, было бы очень актуально локализовать quik.

Ну хотя бы мануал напишите как установить и использовать его в нашей национальной системе - Linux Astra. Чтобы скрипты все работале, dll из скриптов корректно подгружались.
   1. Windows никто не станет блокировать ибо колониальный принцип "товары за воздух" выгоден пендосам

2. В каком месте астра национальная? в финской либе qt* ? или в омериканском ядре линукса или X11 / wayland ?

В России нет полного цикла ни в одном из ИТ направлений от софта до железа. На это уйдут даже не годы - десятилетия.
  Не прошло и года, как Windows в России забанили.

Но разработчики QUIK, видимо, будут тянуть до самого последнего конца, когда либо брокеры наймут других разрабов, либо придётся впопыхах портировать нормально работающий QUIK под linux
 много шума из ничего.
------------------------
По словам представителя Microsoft, компания продолжит выполнять свои обязательства перед   российскими   клиентами, пока действует приостановка новых продаж.
----------------------
Т е если Вы новую винду не покупаете через представительство Microsoft, а например с новым компом из китая, то вам ничего не угрожает.
-------------
Обновление уже купленной винды никто не отменял.
Ой, да такими мелкими шажками можно каждый шаг отмазывать, что мол ну это ещё ничего не значит, это же не разом всё заблокировали. А когда через 2-3 года будет заблокировано всё - окажется что, ну надо же, кто бы мог подумать. Ведь ничего похожего и близко не было. Ни с Китаем, ни с оборудованием, ни с санкциями. Но это же всё не с Windows было, так что не считается. Детский сад.
Выше чел написал Вам как ставить приложения винды на линуксе.
В интернете достаточно инфы как и что делать.
Если Вы это не в силе освоить, то наймите спеца , чтобы Вам настроили.  
Подгружать историю на графики ту которая имеется в папке архива.
 
Цитата
Евгений написал:
Например: Открываю файл в котором на графиках сохранен инструмент SiM2, но срок его закончился или история по нему удалена.

А есть в архиве уже новая история на SiU2, то подгружать историю на SiU2.

Это решит проблему замены инструментов в файлах внд и таб.

Например есть сохраненные внд файлы но в них сохранены инструменты которые уже вышли из обращения и в архиве есть новая история. Остается только пересохранить это файл и все если надо. Так как замена инструментов через меню жутко долгая штука
есть флаг "склеить" при замене инструмента.  
Quik для Astra Linux
 
Цитата
Виктор написал:
Ну вот, в России Microsoft забанил доступ к новым Windows
Цитата
новичок написал:
 
Цитата
Виктор  написал:
 Alexey Ivannikov  ,скажите, пожалуйста. Есть ли какой то прогресс в этом направлении?

В сложившихся условиях, когда windows могут начать блокировать, было бы очень актуально локализовать quik.

Ну хотя бы мануал напишите как установить и использовать его в нашей национальной системе - Linux Astra. Чтобы скрипты все работале, dll из скриптов корректно подгружались.
 1. Windows никто не станет блокировать ибо колониальный принцип "товары за воздух" выгоден пендосам

2. В каком месте астра национальная? в финской либе qt* ? или в омериканском ядре линукса или X11 / wayland ?

В России нет полного цикла ни в одном из ИТ направлений от софта до железа. На это уйдут даже не годы - десятилетия.
Не прошло и года, как Windows в России забанили.

Но разработчики QUIK, видимо, будут тянуть до самого последнего конца, когда либо брокеры наймут других разрабов, либо придётся впопыхах портировать нормально работающий QUIK под linux
много шума из ничего.
------------------------
По словам представителя Microsoft, компания продолжит выполнять свои обязательства перед российскими клиентами, пока действует приостановка новых продаж.
----------------------
Т е если Вы новую винду не покупаете через представительство Microsoft, а например с новым компом из китая, то вам ничего не угрожает.
-------------
Обновление уже купленной винды никто не отменял.
Как закрыть файл по его полному пути+имени (строка)
 
Цитата
Serge написал:
Ситуация элементарная:

скрипт пишет данные в лог файл .csv, который открыт в экселе (я его смотрю глазками).

Закрывать файл каждый раз мануально - не вариант.
Если правильно понял, то Вам надо открыть этот файл в скрипте, а потом открыть его в Excel для просмотра.
Тогда закрывать Вы его можете без проблем.
если вы сделаете наоборот, то закрыть Вы его можете лишь в Excel.
--------------
По умолчанию правило такое - кто открыл, тот и закрывает.
Как закрыть файл по его полному пути+имени (строка)
 
Цитата
Serge написал:
Цитата
nikolz написал:
 
Цитата
Serge  написал:
out_file
 если получили nil, то вы его не открыли
---------------
если не nil то закрыть
io.close(out_file)
в том то и дело, что нельзя открыть файл, который уже открыт, поэтому его нужно закрыть (по строковому имени) а затем снова открыть.
как это сделать?
закройте приложение, в котором его открывали.
-----------
опишите подробнее ситуацию.
Как закрыть файл по его полному пути+имени (строка)
 
или
out_file:close ()
Как закрыть файл по его полному пути+имени (строка)
 
Цитата
Serge написал:
out_file
если получили nil, то вы его не открыли
---------------
если не nil то закрыть
io.close(out_file)
сильно тормозит quik
 
Цитата
Павел написал:
Второй вариант. Когда начинаются лаги интерфейса процесс info.exe занимает: 8-10% ресурсов процессора, около 800МБ памяти, очередь на диске была 0.02

Запустил quik с темной схемой в выходной - все работает в пределах нормы. Графики подгружаются без лагов. В рабочий день тогда сниму данные и пришлю, когда будет лагать.
Вы видите, что у Вас Thunderbird грузит процессор по самые...
onDepoLimit() после onTransReply()
 
Цитата
NiKO написал:
Здравствуйте!

После onTransReply() вызывается onDepoLimit() c теми же значениями, что и до SendTransaction().
Изменения в onDepoLimit() происходят только после вызова onOrder().
Правильно ли я понимаю, что меняются какие-то внутренние параметры в depo_limits ?
посмотрите внимательно на параметры:
locked_sell NUMBER В продаже. Количество инструментов, заблокированное под исполнение заявок  клиента на продажу
locked_buy NUMBER В покупке. Количество инструментов в активных заявках клиента на  покупку
locked_buy_value NUMBER Стоимость инструментов, заблокированных под покупку
locked_sell_value NUMBER Стоимость инструментов, заблокированных под продажу
График оборота торгов в деньгах смещен влево на 1 сессию, Текущ. знач. в ТТТ показывает - это сегодняшний график
 
Цитата
NoneB написал:
Цитата
nikolz написал:
Все  просто, Вы пере заказали данные и получили объем торгов за текущую  сессию, так как предыдущие дни у Вас хранились в архиве, на сервере их  нет.-----------------------
А перезаказ привел к стиранию Вашего архива.

Какая связь перезаказа данных со смещением одного из графиков на 1 торговую сессию назад ?
Вчера,  14 июня, проблема повторилась. График оборота в деньгах SBER смещен на 1  торговую сессию назад (на 4 дня, тк предыдущие  торги проводились) 10  июня

Перезаказ не привел к стиранию архива,  тк я работал с копией, а в конце дня перезагрузил систему из предыдущего состояния до перезаказа
Оборот торгов в деньгах из архива не отображается больше , чем за текущий день - об этом уже была тема
Цитата
nikolz написал:
Теперь копите данные и будет вам счастье, но когда накопите их в терминале.-----------------------
В следующий раз сто раз подумаете, прежде чем перезаказывать.--------------
Либо сохраняйте копию накопленного. ================  
"Потерявши голову, по волосам не плачут.."

Quik 9.40

Повторение проблемы 14 июня, в начале дня на графике не было смещения.

Предположительно, смещение графика "Оборот в деньгах SBER" появилось после разрыва связи и восстановления
Обратите внимание на несоответствие дат в ТОС -    10 и 14 июня


Странно, что не отвечет техподдержка Quik

Когда у меня такое бывает, очень редко, приходится стирать архив перед перезаказом.  
Функция CreateDataSource никогда не возвращает ошибку, И это создаёт большие проблемы при разработке. В неё можно запихнуть любой мусор, и она скажет: "Всё отлично".
 
Цитата
Variable написал:
Цитата
nikolz написал:
и еще...
Если Вы в таблицу текущих торгов  установите
все доступные классы  и все инструменты и все параметры
то вы все доступные инструменты получите в  колбеке  onParam.      
Колбэк возникает тогда, когда поступают данные с сервера брокера. Если по инструменту брокер отмалчивается -колбэка не будет. Мне кажется вы не понимаете сути проблемы с молчанием сервера вместо отказа, и так или иначе предлагаете варианты с таймаутом. Тем не менее, благодарю за помощь, ещё раз убедился, что поддержка не зря признала проблему и обещала решение "когда-нибудь".
Не понял про какой тайм-аут Вы говорите.
---------------
Я определяю доступные инструменты при запуске квика (скрипта).
Нет никакого тайм-аута.
Но возможно вас не понял.
 
Найдите, где правильно?, Вопрос к разработчикам QUIK
 
Цитата
Alexey Danin написал:
getBuySellInfo
правильно, речь о функции getBuySellInfo  
Функция CreateDataSource никогда не возвращает ошибку, И это создаёт большие проблемы при разработке. В неё можно запихнуть любой мусор, и она скажет: "Всё отлично".
 
и еще...
Если Вы в таблицу текущих торгов  установите
все доступные классы  и все инструменты и все параметры
то вы все доступные инструменты получите в колбеке  onParam.  
Функция CreateDataSource никогда не возвращает ошибку, И это создаёт большие проблемы при разработке. В неё можно запихнуть любой мусор, и она скажет: "Всё отлично".
 
Цитата
Variable написал:
Цитата
nikolz написал:
Вы не сможете выбрать больше, чем указано справа в строчках "Классов доступно" "Инструментов доступно" "Параметров доступно"
Если создавать, к примеру, "таблицу текущих торгов" и нажать кнопки "добавить всё"(все доступные инструменты и доступные параметры) - то создаётся таблица со всеми ~10 тыс инструментами и параметрами. Т.е. получается выбрать всё.  Все классы и все инструменты. Как и в функциях getClassesList() и getClassSecurities().

Другое дело, что таблица постепенно будет заполняться тем, на что сервер брокера не "отмалчивается".
Цитата
nikolz написал:
Кроме этого, инструмент может не торговаться, т е он будет в списках, но по нему не будет изменяющейся текущей информации.Это тоже можно проверять.
К сожалению, это не "проверка", а такое же ожидание по таймауту.  А вообще ,надеялся, что подскажете способ программно проверить доступность информации, а не вручную ,через создание и менеджмент окон.

А так, пока не вижу разницы... похоже, при создании ТТТ на 10 тыс инструментов терминал подписывается на всё, а там уж какая информация придёт и заполнит соотв. строки. А почему пустая строка - пусть смотрит и думает пользователь.
я проверяю программно.
-------------------
Разница есть, копайте глубже.
--------------------
В зависимости от начальных данных, алгоритм может отличаться .
-------------------------
То, что программно можно, сто пудов.
------------------
Не понимаю, зачем Вам 10 тысяч инструментов.  
Функция CreateDataSource никогда не возвращает ошибку, И это создаёт большие проблемы при разработке. В неё можно запихнуть любой мусор, и она скажет: "Всё отлично".
 
Цитата
Variable написал:
Цитата
Да классов много и инструментов много.
Но не все доступны конкретному пользователю.
Функция CreateDataSource()  не предназначена для обнаружения запрещенных для Вас классов и инструментов.
На мой взгляд (и опыт) функция, которая так или иначе "обещает перезвонить", должна это делать, если сделана корректно и дружелюбно к пользователю.
Хотя бы потому что заранее неизвестно, по какой причине нет ответа. Запрещены какие-то классы или какие-то другие причины. Если запрещена - так и надо отвечать.


Цитата
nikolz написал:
я так и делаю. Если подписка возможно и нужна, то подписываюсь.

И как вы это делаете? Как проверяете, что подписка возможна?
Очень просто. Объясняю:
Когда квик соединяется с сервером , то с сервера приходят списки классов, число параметров и инструментов в классах и списки этих инструментов и параметров.
Все это Вы видите в терминале, когда выбираете принимаемые параметры и инструменты.
--------------------
Вы не сможете выбрать больше, чем указано справа в строчках "Классов доступно" "Инструментов доступно" "Параметров доступно"  
-------------------  
вся эта информация содержится в доступных в скриптах таблицах Классы,Инструменты .
Для корректного выполнения торговых операций в скриптах  еще надо учитывать таблицы Фирмы Торговые счета и Коды клиентов. Но сейчас не об этом.
-----------------------
Резюме:
В квике Вы имеете список всех возможных классов.
Но те классы, к которым у Вас нед доступа будут пустые по инструментам,а недоступные инструменты будут пустые по параметрам.
Вот это вы и должны проверить перед тем,  как на них подписываться.
------------------
Кроме этого, инструмент может не торговаться, т е он будет в списках, но по нему не будет изменяющейся текущей информации.
Это тоже можно проверять.
--------------
примерно так.
Отладка QUIK 8.13
 
Цитата
TGB написал:
 Для Lua 5.4.1 аналогичный код (но есть отличие), проверенный мною недавно и устраняющий блокировку потоков в QUIK выполнением  длинного цикла пользовательской программы на «чистом» Lua
вот цитата Вашего эссе:
 Для Lua 5.4.1 аналогичный код (но есть отличие), проверенный мною недавно и устраняющий блокировку потоков
в QUIK выполнением  длинного цикла пользовательской программы на «чистом» Lua
Отладка QUIK 8.13
 
"чистый" луа - это как "чистая" грязь. понятие бессмысленное.  
-----------------------------
Рассуждая о "чистом" луа Вы полезли  в функции СИ , которые исполняют этот чистый луа,
вместо того, чтобы  написать грамотно свой длинный цикл.
--------------------------------
Длинный цикл в программах обработки данных в реальном времени   - верх непрофессионализма в программировании и дилетантства в обработке данных.
--------------------  
Так как поток колбеков и main имеют общий глобальный стек,  
то , во многих случаях, проблема зависания квика ликвидируется заменой глобальных переменных локальными.  
Функция CreateDataSource никогда не возвращает ошибку, И это создаёт большие проблемы при разработке. В неё можно запихнуть любой мусор, и она скажет: "Всё отлично".
 
Цитата
Variable написал:
Цитата
nikolz написал:
DDE - это способ обмена данными между приложениями . По-существу это клиент-серверный обмен внутри компьютера.
Да, собственно это и имел ввиду в своём сообщении. Знаю, как в принципе работает DDE. Но буду использовать, если не будет более удобного способа.


Цитата
nikolz написал:
Например, в квике DDE это практически единственный   разумный способ получить доску опционов или всю таблицу текущих торгов .
Для реализации своих замыслов, я написал DLL , запускаемую скриптом с парой строк. Всё остальное делается через мою DLL и моё приложение (запускаются функции квика, луа и прочее. Но вот CreateDataSource() работает некорректно, из-за чего и возникла эта тема. Печально удивился 5-летней тишине после обещаний довести функцию до ума.


Цитата
nikolz написал:
Непонятно, как это - данных нет на сервере, а Вы их запрашиваете.
В API квика есть функции получения классов инструментов и списка инструментов в каждом классе. Всего примерно тысяч 10. Но отзываются - примерно половина. Остальные - молчат. Естественно, что в ТТТ и прочих таблицах отображаются те, для которых данные всё-таки поступили, и только по ним можно что-то передать в стороннее приложение по DDE или ODBC. А вот по половине "молчащих" инструментов - совершенно неясно, почему они молчат. То ли период не тот и надо подождать ,то ли данных в принципе нет и не будет. Но всё это заканчивается замедлением работы программы ,вынужденной опрашивать и ждать таймаутов. :(
Да классов много и инструментов много.
Но не все доступны конкретному пользователю.
------------------  
Функция CreateDataSource()  не предназначена для обнаружения запрещенных для Вас классов и инструментов.
Это все можно выявить до того как подписываться.
я так и делаю. Если подписка возможно и нужна, то подписываюсь.
проблем не испытываю.
---------------------  
Могу рекомендовать сначала проверить есть ли в желаемом вами классе доступные инструменты а потом подписываться.
sec_code и seccode в таблице всех сделок - это один и тот же параметр ?, seccode и sec_code в all_trades
 
добавлю.
как то лет ..цать  назад этот вопрос на форуме задавали.
Ответ был такой: - одно  - старое, другое новое. в будущем старое уберут.
какое старое, уже не помню.
Доработка тейк-профит, Введение дополнительного окна.
 
Цитата
Сергей написал:
Здравствуйте. Чтобы тейк-профит работал корректно  в форме тейк-проофит необходимо ввести дополнительное окно, где можно будет указать минимально допустимую цену продажи (или максимально допустимую цену покупки). После "пробития" отступа выставляется лимитная заявка либо с ценой последней сделки +/- спрэд или указанная в дополнительном окне цена. В  случае покупки  выставляется меньшая из двух цен, а в случае  продажи выставляется большая из двух цен. Таким образом сохраняется возможность получить выигрыш при движении котировок в нужном направлении и не получить непредсказуемых отрицательных результатов из-за большого  отскока цены в противоположном направлении в результате резкого изменения цены последней сделки. Страшно злит, когда  акции проданы по цене много меньше планируемой, а котировки после.отскока снова резко поднялись и намного превысили ту цену, за которую ты хотел продать акции . Те же люди которым очень нужно продать или купить могут не заполнять это окно и тогда тейк-профит будет работать по имеющемуся алгоритму. Пользователи должны понимать, что при выставлении цены из дополнительного окна вероятность сделки будет меньше, чем по имеющемуся алгоритму, но многим это и не важно. Для меня, например, лучше не продать совсем, чем продать по непредсказуемо низкой цене.
Когда-то я реализовывал такой алгоритм.
------------------
В реальной работе получается, что выставленная заявка по цене последней сделки просто повисает,
так как при сильном движении рынка, тот уже далеко ушел от этого места.
------------------------------
В итоге реально работающий алгоритм, который исполняет стоп-заявку с минимальными потерями существенно более сложный.
------------------------------------------
Такой алгоритм добавками дополнительного окна не реализуется.
В нем надо предусматривать слежение за исполнением заявки и движением рынка
и переустанавливать заявку в зависимости от ситуации.
--------------------------------
кроме того, лимитная заявка  будет исполняться частями и это тоже надо учитывать.
Функция CreateDataSource никогда не возвращает ошибку, И это создаёт большие проблемы при разработке. В неё можно запихнуть любой мусор, и она скажет: "Всё отлично".
 
поправляю.
DDE  и CreateDataSource() совершенно разное.
DDE - это способ обмена данными между приложениями . По-существу это клиент-серверный обмен внутри компьютера.
В квике этот способ обмена реализован для получения данных из любых таблиц терминала.
Например, в квике DDE это практически единственный   разумный способ получить доску опционов или всю таблицу текущих торгов .
----------------------------
CreateDataSource()  - это функция явного запроса (подписки) на данные с сервера брокера.
Если эти данные есть в какой-либо таблице или на графике, то очевидно что они уже подписаны для получения.
-------------------------
Сомневаюсь, что Вы не будете смотреть те данные, на которые подпишитесь.
следовательно, после первого  отображения и сохранения квика, они в следующий раз автоматом начнут загружаться.
-----------------------  
Непонятно, как это - данных нет на сервере, а Вы их запрашиваете.
Вы что их сами придумываете?  
Страницы: Пред. 1 ... 36 37 38 39 40 41 42 43 44 45 46 ... 78 След.
Наверх