Начать новую тему Ответить на тему |
Список форумов AmiSite.ru » Роботы |
На страницу Пред. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 След. |
Автор |
Сообщение |
commenced
Советник
Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"
|
000 писал(а): |
причиной может быть
http://www.amisite.ru/begin/bk_set2.htm
Reverse entry signal forces exit – сигнал на открытие позиции в обратном направлении инициирует выход из существующей позиции. В зависимости от логики системы Вы можете указать тестеру, что делать в момент, когда уже открыта позиция и система генерирует сигнал на открытие противоположной позиции. Если эта опция не активирована, то сигналы на открытие противоположной позиции будет проигнорированы до тех пор, пока не появится сигнал на закрытие текущей. В противном случае позиция будет закрыта.
а может активация
ApplyStop() |
Сделал как написано ниже, почему появлялись не понимаю, у меня Short=sell отрисовывался сигнал на шорт на другом баре, чем Sell, хотя такого быть не должно:
Код: |
Buy = ExRem(Buy,Sell);
Sell = ExRem(Sell,Buy);
Short = ExRem(Short,Cover);
Cover = ExRem(Cover,Short);
Buy = ExRem(Buy,Short);
Short = ExRem(Short,Buy); |
|
_________________ Юра |
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
Здравствуйте, принимайте новенького.
подскажите плиз!
пишу интрадейного робота. В конце дня он должен выходить.
timeclose=173500;
CondTc= TimeNum() > timeclose ;
Buy = Ref(Cond2,-1);
Short = Ref(Cond3,-1);
Sell = Cond3 OR CondTc;
Cover = Cond2 OR CondTc;
sl = Optimize("stoploss", 60, 10, 350, 10);
ApplyStop(stopTypeLoss,stopModePoint,sl,2);
Equity(1);
проблема в том, что не смотря на то, что стоит Equity и был выход по стопу - система в конце дня не понимает, что выход по стопу произошел (хотя для открытия _новых_ сделок - понимает) Как переписать условие закрытия в конце дня
Sell = Cond3 OR CondTc;
Cover = Cond2 OR CondTc;
чтоб понимало? А то вместо закрытия позы на последнем баре открывает противоположную. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
commenced
Советник
Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"
|
pitero писал(а): |
Здравствуйте, принимайте новенького.
подскажите плиз!
пишу интрадейного робота. В конце дня он должен выходить.
timeclose=173500;
CondTc= TimeNum() > timeclose ;
Buy = Ref(Cond2,-1);
Short = Ref(Cond3,-1);
Sell = Cond3 OR CondTc;
Cover = Cond2 OR CondTc;
sl = Optimize("stoploss", 60, 10, 350, 10);
ApplyStop(stopTypeLoss,stopModePoint,sl,2);
Equity(1);
проблема в том, что не смотря на то, что стоит Equity и был выход по стопу - система в конце дня не понимает, что выход по стопу произошел (хотя для открытия _новых_ сделок - понимает) Как переписать условие закрытия в конце дня
Sell = Cond3 OR CondTc;
Cover = Cond2 OR CondTc;
чтоб понимало? А то вместо закрытия позы на последнем баре открывает противоположную. |
Пока ты пишеш не робота, а систему. Ты сейчас что имееш ввиду, появляется стрелочка или отправляется заявка в квик? Просто стрелка отрисовывается полюбому, был стоп или небыл неважно, а вот заявка отправляться недолжна. И еще я каюсь сюда иногда постил не в тему, но она была расположена не здесь тогда, в теме роботов говорим о роботах, системы обсуждаются в другой теме, просто потом тяжело будет искать самомуже, если спецификацию тем не соблюдать. http://amisite.ru/phpBB2/viewforum.php?f=3 |
_________________ Юра
Последний раз редактировалось: commenced (Ср Июн 11, 2008 8:02 am), всего редактировалось 1 раз |
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Вроде все правильно написано.
Попробуй еще в условия открытия добавить TimeNum() <= timeclose;
Типа так
Buy = Ref(Cond2,-1) AND TimeNum() <= timeclose; |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
commenced писал(а): |
Пока ты пишеш не робота, а систему. Ты сейчас что имееш ввиду, появляется стрелочка или отправляется заявка в квик? Просто стрелка отрисовывается полюбому, был стоп или небыл неважно, а вот заявка отправляться недолжна. |
Я именно про робота - т.е. части которая выставляет / снимает заявки.
Стрелочка рисуется по сигналу buy short и если стопов не юзать - все работает и с заявками. и рисуется и отправляется.
Наверно я непонятно объяснил -
только в случае СРАБАТЫВАНИЯ СТОПА возникают проблемы, т.е. Equity(1) спасает только от "закрытия" позы, т.е. система понимает что закрывать нечего - стоп уже произошел раньше. Просто открывает новую позу (т.к. система реверсная) причем на графике рисует обе стрелки, но заявки на закрытие не шлет, токо на открытие - и в этом молодец. А вот в конце дня - не понимает произошел стоп или нет. Потому как мое условие OR CondTC вышибает ей мозги - время же уже пришло, значит условие = true. Вот и срабатывает заявка. А позы уже нет. Я думал может мне подскажут что-то типа
Plot(Sell==4,"ApplyStop Sell",colorRed,1|styleOwnScale);
Plot(Cover==4,"ApplyStop Cover",colorGreen,1|styleOwnScale);
т.е. со значениями в массиве Sell Cover поиграть - там из-за Equity теперь числа больше 1 стоят - как их юзать не понял толком, да и у Equity(x) x может быть и 1 и 2 - тоже не пойму на что влияет.
ЗЫ. к стати хелп русский скачал к ами с айта - что то не работает. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
000 писал(а): |
Вроде все правильно написано.
Попробуй еще в условия открытия добавить TimeNum() <= timeclose;
Типа так
Buy = Ref(Cond2,-1) AND TimeNum() <= timeclose; |
непонял - зачем тут? сигналы на открытие поз отрабатывают прекрасно.
проблема тут
Sell = Cond3 OR CondTc;
Cover = Cond2 OR CondTc;
т.е. закрытие уже закрытой по стопу позы происходит. Думаю потому что OR CondTC. А робот (меховский в чистом виде) уже видит что Cover<>0 и кроет. т.е. Cond2 по условию в тот момент = false - сигнала нет, а вот по времени сигнал идет. и Equity не спасает.
Потестю еще, посмотрю. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
а вот по времени сигнал идет. и Equity не спасает. |
Equity(1) должна спасать! Ей паралельно откуда взялся сигнал. Она ДОЛЖНА фильтровать сигналы закрытия если симтема не в рынке.
Я думаю, что может дело в том, что после 17.35 появляются сигналы на покупку, которые сразу кроются условием CondTc и получается такой эффект... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
000 писал(а): |
Цитата: |
а вот по времени сигнал идет. и Equity не спасает. |
Equity(1) должна спасать! Ей паралельно откуда взялся сигнал. Она ДОЛЖНА фильтровать сигналы закрытия если симтема не в рынке.
Я думаю, что может дело в том, что после 17.35 появляются сигналы на покупку, которые сразу кроются условием CondTc и получается такой эффект... |
может быть. проверю еще.
место где ставить equity - важно? скажем если поставить ДО applystop или после? Разница есть?
И еще. Пишу тут паралельное выставление стопов и тэйков со снятием их при реверсе позы (через файл, до апи руки не дошли) вопрос - может велосипед изобретаю и все уже написано давно?
Также непонятно возможно ли будет _двигать_ стоп, т.е. контролировать его наличие. обратной связи же через файл не получишь, вслепую подозреваю гемора будет больше чем эффекта.
ЗЫ Под Квик. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
может быть. проверю еще.
место где ставить equity - важно? скажем если поставить ДО applystop или после? Разница есть? |
Есть разница. Надо ставить в самом конце
Цитата: |
И еще. Пишу тут паралельное выставление стопов и тэйков со снятием их при реверсе позы (через файл, до апи руки не дошли) вопрос - может велосипед изобретаю и все уже написано давно?
Также непонятно возможно ли будет _двигать_ стоп, т.е. контролировать его наличие. обратной связи же через файл не получишь, вслепую подозреваю гемора будет больше чем эффекта. |
По моему пока такого в открытом доступе нигде нет.
А зачем это делать? Робот же должен отслеживать текущее состояние рынка и исполнять стопы просто по рынку. Конечно если связь не стабильная... но тогда и с роботом лучше не заморачиваться. Кроме того, всегда есть шанс, что у брокера ляжет сервак, а тогда даже установленные стопы не спасут. Т.е. от всех возможных косяков все равно не застрахуешься. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
000 писал(а): |
Есть разница. Надо ставить в самом конце
Цитата: |
И еще. Пишу тут паралельное выставление стопов и тэйков со снятием их при реверсе позы |
По моему пока такого в открытом доступе нигде нет.
А зачем это делать? Робот же должен отслеживать текущее состояние рынка и исполнять стопы просто по рынку. Конечно если связь не стабильная... но тогда и с роботом лучше не заморачиваться. Кроме того, всегда есть шанс, что у брокера ляжет сервак, а тогда даже установленные стопы не спасут. Т.е. от всех возможных косяков все равно не застрахуешься. |
ясно тогда. стояло до стопа. поставил вниз - пронаблюдаю.
на счет стопов и связи - да, понятно, что не спасет в 100% (и презерватив тоже 95% что-ли дает, что ж теперь...) Не помню случая чтоб падал сервер брокера, а вот связь падает чаще - помню. И стоп спасает. К тому же в вопросе я написал про желание _двигать_ стопы. Пока я в системе на 15-минутках успеваю раза 2-3 позу переоткрыть руками с профитом. Если двигаю стоп. А по истории потом будет убыток - закроется по стопу. Хочется реализовать манименеджмент, закрытие плеч по стопу. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
shaly
Зарегистрирован: 01.07.2008
Сообщения: 53
Откуда: Омск
|
Я сделал все по инструкции при написании робота, но с первых шагов начались проблемы, Поля Full Name и Tick Size а программа их не видит и выдает соответствующее сообщение. Может настройки операционной системы не соответствуют, может надо делать вывод котировок из метастока, а не из квика напрямую, может какая-либо другая причина? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
Поля Full Name и Tick Size а программа их не видит и выдает соответствующее сообщение
|
Последнее время заметил странную вещь. Программа не видит изменения в полях Information до тех пор, пока не перегрузишь программу или БД |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Все остальное не влияет. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
shaly
Зарегистрирован: 01.07.2008
Сообщения: 53
Откуда: Омск
|
В квик все равно заявки не отправляются. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|
Начать новую тему Ответить на тему |
Список форумов AmiSite.ru » Роботы |
На страницу Пред. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 След. |
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
|