Кто скажет, зачем столько условий для проверки, что заявка выполнена (qty == 0, 2 мл. бита флагов == 0)? Чем эти условия отличаются? Может быть, когда qty == 0, но флаги говорят, что заявка ещё не выполнена, деньги от продажи акций ещё не вернулись на счёт? Меня интересует, как скрипту узнать, что эти деньги от продажи акции вернулись на счёт и их можно снова использовать для покупки?
Для проверки исполнения заявки достаточно получить набор битовых флагов и определить значение бита 0 (заявка активна, иначе – не активна) и бита 1 (заявка снята). Если значения битов 0 и 1 равны "0", то заявка исполнена.
Здравствуйте. Почему-то некорректно работают битовые флаги заявок для срочного рынка. А именно 3-й бит определения является ли заявка лимитированной или рыночной.
Т.е. такой код:
local Order = getItem('orders', 5) message('Bit='..tostring(CheckBit(Order.flags, 3)))
для срочного рынка всегда даёт true, независимо от того лимитированная заявка или рыночная. Для спотового рынка это работает правильно - если заявка лимитированная, то true, если рыночная, то false.
Igor_User, А Вы уверены, что CheckBit(Order.flags, 3) проверяет именно 3-й бит? Это скорее похоже на маску нулевого и первого. Попробуйте вывести просто message('flags='..Order.flags)
Владимир. Извините, ошибся. Там не CheckBit стоит, а bit.test.Т.е. код такой:
local Order = getItem('orders', 1) message('Bit='..tostring(bit.test(Order.flags, 3)))
CheckBit делает то же самое. Но не суть. В обоих случаях результат один и тот же - для срочного рынка бит3 = true в обоих случаях (и для рыночной, и для лимитной). Для спотового всё нормально.
Владимир, у меня получается следующее. Флаги рыночной заявки на покупку на спотовом рынке выглядят так:10000. Флаги рыночной заявки на покупку на срочном рынке выглядят так:100011000. Т.е. на спотовом всё нормально, а на срочном бит3 =true.
Мне кажется, что это какой-то программный баг в квике. Ведь на спотовом работает нормально.
Я использую демо-версию квика. Может в этом дело?...
Как раз таки нет. Был разговор ,что по лимитным не будет биржевого сбора. А по рыночным аж в 3 раза подняли. Вижу у себя каждый день это. И сделайте наконец выделение вкладок. уж не первый год(!!!) об этом поминаю.
Igor_User, Не знаю, у меня все заявки лимитные, я этот бит никогда не анализировал. Я просто сказал, что не надо ничего никуда двигать, если бит3 установлен, достаточно проверки if bit.band(n.flags,8)~=0...
БорисД, Это не общение, Борь, это фон. На технические вопросы почему бы не ответить, хотя в 99% случаев вопросам КАК это сделать должен бы предшествовать НА КОЙ это вообще кому-то надо.
Igor_User написал: nikolz , попробовал X=(Order.flags>>3)&1. То же самое - бит3 = true для рыночной заявки.
На фьючерсах нет рыночных заявок, надо выставлять с ценой. Если хотите рыночную то цену выбирайте хуже лучшей цены.
Мне всегда казалось, что и на спотовом также. Интерфейс выставления заявки в квике одинаковый что на спотовом рынке, что на срочном. И там и там присутствует галочка "Рыночная". Цену хуже можно не выставлять (точнее поле "Цена" становится вообще неактивным при выборе "Рыночная").
Возможно вы имеете в виду, что несмотря на это, заявки всё равно по-разному обрабатываются на спотовом и на срочном?
VPM, Боря не той помощи искал, которую может дать этот форум. И уж точно не от Вас. Он очень грамотный трейдер, в биржевой торговле понимает гораздо больше, чем подавляющее большинство участников этого форума - включая меня, например. И за словом в карман не лезет - может приложить так, что мало не покажется.
Владимир, Этот форум устроен для поддержки, а главное обнаружению и устранению "косяков" QUIK. То что в нём закралась страничка по обмену опытом в программировании на луа, нужно сказать спасибо организаторам и поддерживать ее.
Цитата
Владимир написал: Боря не той помощи искал, которую может дать этот форум. И уж точно не от Вас. Он очень грамотный трейдер, в биржевой торговле понимает гораздо больше, чем подавляющее большинство участников этого форума - включая меня, например.
Не важно кто что ищет, важно кто что дает, а если "очень грамотный трейдер" тои давай такие же советы, я тоже с удовольствием послушаю "очень грамотный трейдер"
VPM, Не смешите! После того, как одно из моих предложений ВО ВТОРОЙ РАЗ предложили зарегистрировать, я перестал хоть как-то рассчитывать на техподдержку. А уж то, что даже самые вопиющие глюки не исправляются годами... Этот форум ТОЛЬКО для обмена опытом в программировании с теми, кто этих глюков уже нахлебался. Ну и для просто болтовни.
Мне Борис дал немало советов, часть из них реализована в скрипте. А Вам он ничего советовать не станет. Я не Нострадамус, но я предсказываю.
Владимир написал: VPM, Его высокомерие существует только в Вашем воображении. А пустопорожней болтовни он действительно не любит.
Владимир прав , нет у меня ни какого высокомерия и было время когда здесь помощи просил и в техподдержку здесь я тоже бывало писал по началу и как большинство из нас посетителей этого форума впустую писал и тоже от них получал стандартный ответ "Ваше предложение зарегистрировано" и не более . Тем кто откликнулся на мои просьбы и помог в чем то мне большое спасибо в т.ч. и Владимиру , надеюсь что и я кому то все таки помог . Но в данное время меня Квик перестал интересовать и я в нем торговлю остановил ( ну разве что робот Владимира там у меня запущен в тестовом режиме ) . Ну а я уже получил собственную сертифицированную на бирже Плазу-2 и теперь торгую минуя брокера сразу на бирже . Сюда на форум заглядываю изредко и только лишь по привычке и при наличии свободного времени , Ну а раз достойно мне не помогли на этом форуме нужные мои собственные алгоритмы внедрить но и нет у меня смысла здесь сидеть и болтать ни о чём . До тех пор как тех.поддержка Квика не станет выполнять надлежаще свои обязанности , то нет смысла биться головой об Квик и их ошибки в нем.
VPM написал: БорисД, Ни чего личного, всех тонкостей не знал, поэтому счел за высокомерие! Если чем то обидел, то прошу прощения!
Но зато Ваш, друг как бился за Вас ::
Без проблемм - я не обидчивый и не первый год по сайтам ползаю.
А с Владимиром мы уже два года как здесь познакомились , дружим и постоянно созваниваемся и иногда очень горячо спорим и наезжаем друг на друга вплоть до применения матов или даже обид друг на друга , ...... а на следующий день заново созваниваемся и снова спорим или что то согласовываем , и это нормально так как в споре рождается истина . И если честно то он очень упертый и мало сговорчивый . Но общаться с ним не сложно и даже полезно и во многом мне тоже помогло в моей биржевой торговле .................. хотя и я тоже не подарок для общения и тоже со своими заморочками в голове .
vladindre написал: Как раз таки нет. Был разговор ,что по лимитным не будет биржевого сбора. А по рыночным аж в 3 раза подняли. Вижу у себя каждый день это. И сделайте наконец выделение вкладок. уж не первый год(!!!) об этом поминаю.
а еще биржа внедрила функцию : в ней заявку можно назначить не только лимитной но и Мейкерной и при выставлении её в стакан биржа перепроверит чтобы она в него попала а не исполнилась об чужую - и в этом случае биржа её отменит и сообщит трейдеру реджектом что типа " Заявка не может быть выставлена так как приводит к немедленному исполнению "
БорисД, Борь, ты ведь тоже очень упёртый и мало сговорчивый . И это тоже хорошо: ты очень заметно изменил мои алгоритмы, как и я твои. И с этими тейкерными-мейкерными уже мы вдвоём прекрасно разобрались: более 90% всех заявок исполняется, и тейкерных среди них кот наплакал, бывают дни, что вообще ни одной. Когда я чистил код и вспоминал те идеи, которые там ещё оставались в виде мусора, то просто обалдевал, какая же гигантская работа была проделана. Но теперь всё, я завязал: остались только принципиальные разногласия: твой подход более азартный, потенциально более зарабатывающий, но риски слишком велики, для меня неприемлемы: как говорил Владимир Ильич, "лучше мньше, да лучше". Последние два изменения (одно ты знаешь, другое нет) показали замечательный результат и на том твоём тиковом двухмесячном массиве, и за две недели тестового прогона, и за две недели боевого. До конца августа ещё погоняю (сейчас там 63 тикера) и дам полный отчёт.
Igor_User написал: nikolz , попробовал X=(Order.flags>>3)&1. То же самое - бит3 = true для рыночной заявки.
На фьючерсах нет рыночных заявок, надо выставлять с ценой. Если хотите рыночную то цену выбирайте хуже лучшей цены.
Мне всегда казалось, что и на спотовом также. Интерфейс выставления заявки в квике одинаковый что на спотовом рынке, что на срочном. И там и там присутствует галочка "Рыночная". Цену хуже можно не выставлять (точнее поле "Цена" становится вообще неактивным при выборе "Рыночная").
Возможно вы имеете в виду, что несмотря на это, заявки всё равно по-разному обрабатываются на спотовом и на срочном?
Я не правильно Вам объяснил. На фьючерсах нет рыночной заявки потому, что вы покупаете не актив, а контракт на его покупку А стоимость контракта не зависит от цены актива. Поэтому Вы задаете число контрактов а их цена фиксированная.