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

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

Страницы: Пред. 1 ... 62 63 64 65 66 67 68 69 70 71 72 След.
ещё много много раз - потокобезопасные операции, Потокобезопасность.
 
Цитата
Michael Bulychev пишет:
Нет, просто нет такого механизма в Lua. за конкретным объектом должен следить сам пользователь.
Но в  луа нет ни функций  QLUA,
ни возможности создания функции main в отдельном потоке. - Это все сугубо ноу-хау QUIK.
Может быть,продолжая развитие данного направления,  
сделать необходимые механизмы синхронизации потоков
для всех пользователей?
Я для себя кое-что сделал.
Но некоторые вопросы удобнее решить на стороне терминала .
Разработка торговых роботов, Разработка торговых роботов
 
Цитата
sam063rus пишет:
а можно сам Amibroker - бесплатно? (почему нет такого варианта?)
и тогда алгоритм будет интересным и удачным)))))))))
Берите демо(бесплатно) - он работает с одним инструментом и вполне может работать с квиком
Примеры классов на основе метатаблиц и closure на QLUA
 
вообще-то тема классов на луа в инете известная
Я не вижу смысла городить классы на скриптах - это для любителей ООП в обмен на скорость.
Вообще-то, если уж надо что ускорить или спрятать в компактный вид то есть API C плюс C++
про метатаблицы:  http://www.lua.org/manual/5.1/manual.html#2.8
Сколько стоит робот на LUA?
 
Цитата
Александр Кудрев пишет:
Робот на основе пересечений 2 ЕМА с трейлингом. Надо чтобы период МА можно менять.
Если робот должен реально торговать то его стоимость определяется примерно так:
Время разработки(в часах)*ЗарплатуРазработчикаВмесяц(можно найти в инете) /200.
Да и еще надо написать правильное тех задание.
То,что написал Александр Кудрев  - это лишь название мечты, а не задание для разработки робота ( типа - хочу велосипед)
------------------------------------------------
Но если будет делать sam063rus то у него - 100 руб.(а нет это я ошибся - это он труд других так оценивает)
Стоплосс и тейкпрофит заявки
 
Цитата
Валентин пишет:

Но вроде как выставлен тип - рыночная цена, и цена соответственно 0. Т.е. квик или сервер брокера или кто то там наверху должен съэмулировать рыночную заявку и продать\купить по текущей рыночной цене. или нет?
Полагаю, что это Ваше желание.
квик или сервер брокера или кто то там наверху  - Не должен.  
CreateDataSource
 
Цитата
Старатель пишет:
Не знаю, что вы подразумеваете под словом "текущие", но основываясь на том, что очередь находится на сервере (блин, ну почему нельзя было сразу об этом сказать?!), я делаю вывод, что данные (1), (2) и (3) будут обработаны функцией-колбеком GetPrice()
По-моему мнение, есть непонимание общих принципов взаимодействия сервера и клиента и колбеков в терминале.
--------------------------------------------
Фактически мы имеем две очереди, а вернее сказать - три:
---------------------------------
1)  очередь заявок брокеров на сервере биржи
2)  очередь поручений клиентов на сервере брокера
3) очередь  колбеков скриптов VMLUA в терминале QUIK на компе клиента,
так как все колбеки в одном потоке терминала.
--------------------------------
Надеюсь, что объяснил понятно.
Кто как решил вопрос уведомления о сделках?
 
от мобильных торговых систем такой способ отличается тем, что торгует мощная система QUIK а не ее обрезанный клон на смартфон
Загрузка трафика для смартфона нулевая
Кто как решил вопрос уведомления о сделках?
 
Расскажу как я это делаю.

------------------------------
Объясняю упрощенно:
------------------------------------------
Основная идея в том,
что Вы сажаете скрипт клиент-сервера с динамическим адресом  на КВИК на компе дома.
и скрипт клиент-сервера - на смартфон или планшет или нотебук
---------------------
В результате КВИК сообщит Вам о любых событиях
со скоростью передачи информации по интернет.
--------------------------
Вы можете тоже послать команду КВИКУ.
Все работает быстро и практически бесплатно.
----------------------
Лимитированная, рыночная заявка
 
Цитата
Валентин пишет:
Здравствуйте. Работаю на фьючах на московской бирже.
1.Параметр type - принимает параметр лимитированная или рыночная.
Я так понял рыночной заявки какбы не существует? параметр type не обязателен, Все заявки всегда лимитированные и надо всегда указывать price? Если да, то к чему тогда существует параметр type?
2. Предположим мне необходимо сейчас открыть позицию, выставить стоп и тейкпрофит.
Это нормально считать стоп, тейкпрофит на основе параметра close из функции
getCandlesByIndex последней свечи (5минутка) или есть какие то лучшие варианты?
1) этот параметр появился еще до того, как стали торговать фьючерсами.
-----------------------------------------
2) Стоп и тайк профит - это условное выставление лимитированных заявок.
-----------------------
Что это означает?
-----------------
Означает это следующее.
Мы открываем позицию и желаем застраховать ее от наступления двух событий:
Во-первых  - чтобы наши убытки по-возможности не превысили терпимый для нас уровень - это stop-limit
Во-вторых - чтобы наша оценочная прибыль превратилась в реальную с терпимым для нас убытком - это take profit
-----------------------------
А теперь попробуйте ответить сами на Ваш вопрос.
А именно - разве наши желания страховки связаны с close последней свечи на 5 минутках?
Очевидно, что, нет,
они связаны с затратами на открытие позиции,
с величиной допустимых для нас рисков(потерь)
и
что ВАЖНО - с нашим прогнозом возможного движения рынка.
--------------------
А вот при расчете прогноза возможно использование
и последней свечи
и еще ...надцати предыдущих
и движение солнца,
цены нефти,
выступления президента
и т д
-------------------------------------------
Надеюсь, что пояснил понятно.
sendTransaction
 
пардон опечатка:
вот такой конструкцией
local res=sendTransaction(trans); if res~="" then Log(trans,res);end
sendTransaction
 
у меня работает и выводит сообщение об ошибках если они есть
Но сообщения лучше выводить в лог файл вот такой конструкцией:


local res="";sendTransaction(trans); if res~="" then Log(trans,res);end
Счётчик числа сделок в секунду по одному тикеру
 
sam063rus,
Я попробую дать Вам ответы на Ваши вопросы, хотя ранее я уже это написал, но повторение...
-------------------------------------------
Подобные исследования я проводил лет 5 назад.
тогда и дискуссия подобная была на форуме.
В результате получилось следующее:
----------------------
1) ТТП - это актуальные значения параметров инструментов
-----------------------
Что это означает для Вашей задачи?
---------------------
Означает следующее:
Если в какую-то секунду произошло 100 сделок ,
а в результате каких-то задержек(очередь на сервере, задержки каналов связи и т д)
мы получаем ТТП в конце этой секунды (пусть даже несколько одновременно поступивших срезов)
то в ТТП т е в onParam мы увидим лишь последнюю сделку.
--------------------------
Это первая причина, по которой вашу задачу НЕВОЗМОЖНО корректно решить через ТТП
---------------------------------------
Вторая причина в том, что ТТП реагирует на любые актуальные изменения параметров инструментов,
а не только на совершение сделок.
Это приводит к большим нагрузкам на комп при обработке колбека оnParam.
И в Вашей задаче к ненужным тратам мощности компа
-------------------------------------
третья причина - это то, что в onParam не приходит информация о том,
какой именно параметр изменился.
Для того, чтобы узнать надо ходить в хранилище.
А это очень затратный процесс.
-----------------------------------------------
Резюме:
Есть лишь одно корректное решение Вашей задачи. - использовать onAllTrade.
Основные идеи, как это сделать, я вам написал ранее.
------------------------
Успехов
Счётчик числа сделок в секунду по одному тикеру
 
Ну вот я написал Вам черновик вашего счетчика:
он будет считать для всех инструментов
Сразу скажу, что это черновик и в нем изложены основные идеи,
но детально не отлаживал
Дерзайте.
-------------------
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
--------------------
Счётчик числа сделок в секунду по одному тикеру
 
код увидел.
Мне читать все топики лень, поэтому я выскажусь, возможно что кто-то уже это сказал.
1) Работа через onParam - самый плохой вариант. Там и хранилище очень тяжелое и данный колбек на каждый чих срабатывает
при этом если срез не пришел и не актуальный то он вообще потеряется.
Т е через этот колбек Вы обязательно недосчитаетесь сделок когда-нибудь
---------------------------------
2) Поэтому данную задачу полагаю надо решать через onAllTrade
По крайней мере решение через onAllTrade будет полным, но возможно что есть и более быстрое но не полное.
Поэтому  решение через onAllTrade должно быть базовым а остальные,
если они будут быстрее надо сравнивать с базовым.

--------------------------------
Поэтому предлагаю написать вариант через onAllTrade
и изложить претензии к такому решению (желательно с примерами)
получение параметров индикатора, обращение к line
 
Цитата
Michael Bulychev пишет:
Да, обратно возвращаются только те параметры, которые отображаются в диалоге настроек индикатора.
Вроде бы Ваше утверждение не верно.
Так как параметры line в диалоге отображается а обратно не возвращаются.
Т е не возращаются любые параметры которые таблицы. ВО КАК!
Не работает getParamEx и(или) OnQuote
 
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
Счётчик числа сделок в секунду по одному тикеру
 
хорошо бы увидеть код(алгоритм), а то с нуля как-то лень начинать.
А вот покритиковать  чужой код ( то бишь дать идею) -это пожалуйста.
Разработка торговых роботов, Разработка торговых роботов
 
Если у Вас интересный алгоритм ,
то протестирую его в Амиброкере бесплатно
Если алгоритм удачный,
то отдам скрипт для амиброкера бесплатно
Расчёт индекса РТС
 
если в алгоритме нет ошибки,
то Koef .
получение параметров индикатора, обращение к line
 
Цитата
Egor Zaytsev пишет:
Добрый день.

Settings.line[1].Name в функции OnCalculate не поддерживается.
У меня получается, что в функции OnCalculate не поддерживаются в Settings любые параметры типа таблицы, а не только line.
Как быстрее войти в сделку, Как быстрее получить нужно значение цены или графика для выполнения условия
 
Цитата
swerg пишет:
Если же надо просуммировать 1000 свечей, да еще дифур решить для вычисления значения индикатора - лучше взять готовое значение из квика, если там есть такой индикатор, это и проще и надёжнее, ибо в своём алгоритме мы еще и наошибаться можем, а квиковый индикатор - хотя бы глазами видишь что он на самом деле считает.
Вот тут у Вас ошибочка
Чтобы сложить 1000 свечей надо столько же время сколько для сложения двух.
---------------------------------------
Вопрос же поставленный в начале вообще то не имеет однозначного решения
Он из разряда "Как стать счастливым"
getCandlesByIndex, doesExist что показывает
 
Цитата
Валентин пишет:
2. Параметр close показывает цену закрытия свечи (в случае если свечка старая). Если свечка еще активна, параметр показывает текущую цену спроса?
Вроде бы это цена последней сделки, а не спроса.
Стоплосс и тейкпрофит заявки
 
увы,просто это не сделать.
-------------------------
у меня алгоритм примерно такой:
---------------------
создаю таблицы активных:   заявок, стопов, заявок по стопам.
Далее  в колбеках реализуется обработка этих событий для каждого своя.
При этом реализуется обработка заявок по частям а также зависших заявок по стопам
Кроме того, исполнение заявки контролирую по изменениям депозитов в соответствующих колбеках.
-------------------
CreateDataSource
 
если график не открыт то у Вас ничего и нет без вызова CreateDataSource
Вопросы по OnAllTrade
 
все эти галочки появились давным давно,
когда актуальным было экономить трафик или(и) память компа.
------------------------
скрипты появились гораздо позже.
получение параметров индикатора, обращение к line
 
действительно в setting в OnCalculate исчезают параметры,
которые определены как таблицы.
получение параметров индикатора, обращение к line
 
вот тест :

Settings=
{
 Name = "AAAA",
 Smooth=10,
 line =
 {
   {
     Name = "Hi",
--    Color = RGB(255, 0, 0),
     Type = TYPE_LINE,
     Width = 2
  }
 }


}
print(Settings.line[1].Name)
-------результат--------------
>lua -e "io.stdout:setvbuf 'no'" "test2015.lua"
Hi
>Exit code: 0
получение параметров индикатора, обращение к line
 
Settings.line[1].Name
Вопросы по OnAllTrade
 
Цитата
sam063rus пишет:
ударение на слове: "почти" бо как у каждой сделки на то и есть поле "время" - и скрипты могут на него полагаться На деле же, получается так, что "время можно повернуть вспять". Понятное дело, что "всё можно учесть, отфильтровать, подпилить под собственные нужды" но, когда размер постоянных "допиливаний" и недосказанностей в штатной документации переваливает размер критической массы - не остаётся ничего друго, как давить на "арку", прекрасно понимая, что ничего кроме очередного троллинга от tech support, некоторых разработчиков и банальных троллей-роботорговцев - ждать не приходится.
Не совсем так.
----------------------
Как говорит народная мудрость "После драки кулаками не машут"
Работа с ТВС - это прогнозирование по прошлому Т е "махание руками после драки"
Но прошлое никогда не повторяется абсолютно точно.
Поэтому и для прогноза нет смысла учитывать каждый чих в прошлом.
------------------------
Можно конечно (вернее бесконечно) давить на "арку" или обвинять всех в троллинге ,
а можно сначала определить решаемую прикладную задачу, а потом выпиливать недостающие детали.
----------------------------------------------------
Предполагаю ( исходя из своего опыта решения задач искусственного интеллекта и прогнозирования),
что Вы подменяете задачу прогноза рынков созданием технических средств,
полагая,  что они, каким-то таинственным образом,  позволят Вам решить задачу прогноза.
А это еще надо доказать. возможно то,
что Вы так упорно пытаетесь запрограммировать - очередной танк для первой мировой.
----------------------------
Романтично, но не практично.  
Стоплосс и тейкпрофит заявки
 
Цитата
Александр Евстратенко пишет:
Вопрос заключался можно ли с помощью каких либо флагов или параметров сделки просто и точно определить условие по которому исполнилось стоплосс и тейкпрофит заявка. Алгоритм, рассматриваемый мной, предполагает различные действия в каждом случае.

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

Но если нет простой возможности - значит придется анализировать цену сделки ( и,естественно, срабатывание стоплосс и тейкпрофит заявки должно предполагать контроль и доведение позиции до сделки если этого не произошло).
конечно можно проверить таблицу стоп заявок.
Но как я написал ранее, исполнение стоп-заявки может создать активную заявку, которая никогда не исполнится.
возможна другая ситуация, когда заявки исполнилась, то сервер брокера не учел еще изменение Ваших лимитов
Поэтому полагаю, что проблема не в том , чтобы узнать какое из двух условий верно, а в том чтобы узнать как эти условия отразились на вашей позиции.
------------------------------------
А вот играть в зоне предела быстродействия КВИКА да еще на неликвидных рынках - это конечно создает дополнительно адреналин,
но чревато лишь сливом депозита.
Вопросы по OnAllTrade
 
Цитата
Старатель пишет:
Если все сделки заказаны до начала торговой сесссии, то в рамках класса (точнее, торговой площадки) сделки поступают в хронологическом порядке. Либо, если один или несколько бумаг одного класса дозаказаны в течение торговой сессии, то после докачки старых данных новые сделки также поступают в хронологическом порядке.
Цитата
sam063rus пишет:
синхронизация соблюдается только в рамках одного тикера.
Можете привести примеры конкретных ситуаций, когда в рамках одного класса синхронизация не соблюдается?
Мне думается, что наблюдается некоторая путаница
----------------------------
Есть два принципиально разных режима работы с ТВС.
----------------------------
1) Так "Если все сделки заказаны до начала торговой сессии,"
то эти сделки придут одним пакетом или двумя
так как они все есть на сервере и он вам их пришлет.
Т е это случай работы не в реальном времени.
----------------------------------
2) Реальное время, когда сделки уходят с биржи на сервер , а потом с сервера на терминал.
В этом случае никто ни за что не отвечает.
Все идет асинхронно и кто придет первым  никто не знает. ( Почти как на ипподроме )
--------------------
Поэтому надо принять как аксиому ,
что момент прихода информации о сделках не может быть определен до их прихода в терминал.
И этот момент прихода не должен нас интересовать как недоступный для прогнозирования параметр.
Если строить свои программы исходя из этой аксиомы, то все будет просто и понятно.
 
Стоплосс и тейкпрофит заявки
 
Цитата
s_mike@rambler.ru пишет:
стоп лосс 99
тейкпрофит 101 / 2
Выставляется, когда цена равна 100

движение цены:100 -> 101 -> 99
Ваш пример - доказательство моего утверждения:
прочитайте еще раз внимательно:
----------------------------
"1) если выставление стопов соответствует их названию,
то можно определить
2) по расположению цены сделки предшествующей срабатыванию стопа
по отношению к расположению позиции относительно рынка."
------------------------

Теперь разбираем Ваш пример
Условие 1) выполнено.
--------------------------------
переходим к анализу ситуации.
-------------------------
2) по расположению цены сделки предшествующей срабатыванию стопа
по отношению к расположению позиции относительно рынка.
-------------------------
Условия Вашего примера не полные.
Чтобы принять решение, надо определится еще в некоторых характеристиках рынка.
-----------------------------
Сначала пару слов без протокола...
Во-первых, предполагается, что чел, который пытается применить данный метод немного понимает в рынке.
так как "нет защиты от дурака"
-----------------------------
Поэтому считаем, что рынок ликвидный.
В этом случае переход от 101 к 99 не может произойти за одну сделку.
Поэтому после срабатывания стопа ниже 101 смотрим где была сделка перед срабатыванием
Она была выше нашей позиции - т е это тайк профит.
------------------------------------
P.S:
Хочу обратить внимание автора топика на следующее.
Срабатывание стопа не означает совершение сделки по этому стопу.
поэтому сама постановка вопроса изначальна не полная.
Вопросы по OnAllTrade
 
Цитата
sam063rus пишет:
квик не предназначен для стабильной роботорговли по определению. бо как любое его обновление может в одночасье угробить весь депозит, за что разработчики только в очередной раз мило извиняться и пообещают исправить прискорбную ситуацию в новых своих версиях, а брокер тем временем скажет, что, цитирую дословно: "... надо учитывать риски". Ну, а биржа, весело назовёт техническим сбоем и забудет об этом, в отличии от всяких SEC - так и не анулировав сделки.
формально Вы правы, но по-существу нет.
------------------------------------------
Правы в том, что "квик не предназначен для стабильной роботорговли по определению"
Потому что QUIK - это программа для подачи поручений брокеру (по определению)
Хочу обратить внимание на то, что  НЕ для подачи  заявок на биржу, а лишь поручений брокеру.
Это две большие разницы.
-----------------------------
Неправы потому что, разработчики никогда (поправьте если я ошибаюсь) не говорили,
что делают бесплатный инструмент для создания торговых роботов.
Наоборот, периодически подчеркивалось,
что VM LUA  встроена без изменений,
что библиотека  QLUA сделана как копия купала.
а КУПАЙЛ сделан не для торговли я для отображения бесплатной информации клиентам.
т е это некоторе подобие кубиков в детском саду, чтобы было чем заниматься детям.
Ну а если из этих кубиков начинают делать что-то большое, то проблема тех, кто это делает, а не тех , кто сделал кубики.
-----------------------------------------------------------------------------------------------------------
Ну не умеет трактор летать.
Но  если очень хочется, то надо осваивать ЧПУ и проектирование самолетов и из трактора делать самолет.
Разработка торговых роботов, Разработка торговых роботов
 
А я верю челу и рад за него.
---------------------------------------
sam063rus
У меня к Вам вопросик:
Зачем делать открытый проект библиотеки ?
--------------------------------
Вполне серьезно спрашиваю.
Можете сформулировать, что конкретно невозможно реализовать на QLUA с использованием API С?
(Оставим в стороне ошибки и зависания).
Почему спрашиваю?
объясню.
---------------------
По-моему мнению, есть недоразвитость графических и диалоговых средств.
Но это решается сторонними модулями.
В остальном реализуемо любые мечты буратины.
----------------------
Спасибо
Стоплосс и тейкпрофит заявки
 
но уже похвально,что Вы отказались от категоричного утверждения "никак"
Стоплосс и тейкпрофит заявки
 
Цитата
s_mike@rambler.ru пишет:
Цитата
Николай Камынин пишет:
если выставление стопов соответствует их названию,
то можно определить по расположению цены сделки предшествующей срабатыванию стопа
по отношению к расположению позиции относительно рынка.
В общем случае это неверно. В большинстве случаев так прикинуть можно, но далеко не всегда.

Поэтому утвердительно ответить на первоначальный вопрос нельзя.
Это голословное утверждение.
приведите пример, но соблюдайте указанные мною условия.
CreateDataSource
 
2) Чтобы ничего не пропустить,  цикл можно поставить в колбеке  
CreateDataSource
 
1) читаем документацию:  OnInit  Функция вызывается терминалом QUIK перед вызовом функции main().
2) Чтобы ничего цикл можно поставить в колбеке
будет нечто такое:
--------------------------
local ind_old=1
function cd()
  local size=ds:Size()
   for i = ind_old, size do       Candles[i] = ds:C(i)    end      
  ind_old=size
end
Стоплосс и тейкпрофит заявки
 
если выставление стопов соответствует их названию,
то можно определить по расположению цены сделки предшествующей срабатыванию стопа
по отношению к расположению позиции относительно рынка.
 
Вопросы по OnAllTrade
 
вернее сказать,  они становятся как бы новыми сделками не потому что время изменилось, а потому что биржа перенесла их в новый класс
Вопросы по OnAllTrade
 
про вечерние сделки могу сказать следующее ( наблюдал это уже давно возможно что-то изменилось)
Они приходят потому, что на следующий день у них меняется класс
т е они становятся как бы новыми сделками и сервер их обязательно передает в терминал.
Когда сортировал все сделки на лету тоже поначалу в этом застрял. Потом поставил фильтр и все стало ОК
Вопросы по OnAllTrade
 
позволю предложить следующий алгоритм (так cделал бы сам):
-------------------
1) По спискам формируем таблицу играющих инструментов (критерий на ваш вкус)
2) если я ожидаю, что будут запаздывающие данные,
то задаю таблицу неопределенности (т е таблицу памяти N секунд, которые могут корректироваться опоздавшими данными.
3) В колбеке считаем распределение числа сделок по  N последним секундам.
------------------------------------
Ну а далее думаю - и зачем я это все посчитал???
CreateDataSource
 
1) колбек не может ничего сканировать.
по определению -это функция,которая вызывается при наступлении события.
в данном случае - это событие -  получение новых исторических данных  с сервера,
которые дописываются к существующим данным.
------------------
2) Таким образом, колбек позволяет обнаружить приход новых данных, а не ждать их.
Осуществлять обработку при поступлении новых данных.
Приостановить скрипт, возможно?
 
т е вы организуете отдельный луа поток для транзакций к которому делаете очередь заявок
Приостановить скрипт, возможно?
 
Вот примерно Ваш алгоритм:
-------------------------
1) в корутине должен быть бесконечный цикл,в котором вы посылаете и останавливаете корутину.
2) когда ответ пришел вы активируете корутину и она снова посылает и останавливается.
3) кроме этого должна быть очередь к корутине
4) корутина пускает из этой очереди если очередь пустая то останавливается
5) кроме того должна быть запись в очередь
6) при записи в очередь,если корутина стоит то запускается.
Отображать индикатор только на последней свечке?
 
if i==Size() then
--удаляем с i-1
--выставляем на i
end
ЛИНИИ ТРенда и ТА
 
Хочу подлить масло в огонь.
Возможно это уже обсудили, но не увидел.
-------------------------------------
Относительно линий трендов.Гипотеза следующая ( не проверял, лень)
-----------------------------------------
Линии тренда должны смещаться по крайней мере если занимают интервал нескольких торговых дней.
----------------------
Проблема в том, что как всем известно день - это 24 часа и не все из них торговые, и есть еще выходные и праздники,
а следовательно такие дни(часы не отображаются на оси времени в квике.
-----------------------------------------------------
Прямая наклонная линия будет непрерывной и монотонной лишь при равномерном шаге оси времени.
--------------------------------------
В нашем же случае мы имеем разрывы оси времени, следовательно линия тренда тоже должна иметь разрывы,
либо это линия с меняющимся углом наклона.
Т е положение линии тренда при смене тайма будет изменятся, иначе она должна быть ломаной линией.
Quik forever?, Разработка сложной торговой системы 24х7
 
задача решается в такой связке
QUIK+QLUA+API C LUA.
CreateDataSource
 
Цитата
Серж пишет:
ds = CreateDataSource (ClassCode, SecCode, Interval)
repeat sleep(1) until ds:Size() ~= 0 -- тут надо поиграть с задержкой
for i = 1, ds:Size() do
Candles = ds:C(i)
end
надо не со sleep играть, а колбек использовать.
Я в ужасе!! Кто-нибудь отзовитесь пожалуйста и скажите что это неправда!!
 
Нет,
предположим, что нет этого достоинства (передача по указателю)
Что тогда?
тогда остается лишь копирование по циклу.
Т е то что есть без достоинства.
Если язык допускает присвоение таблиц (например MATLAB) то цикл будет неявным,
а если такого оператора нет (например паскаль) то цикл будет явным либо в виде функции.
Т е достоинства лишь предполагают внимательное изучение языка и приобретения навыков мышления на нем.
 
Страницы: Пред. 1 ... 62 63 64 65 66 67 68 69 70 71 72 След.
Наверх