Автор |
Сообщение |
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
Есть задача пододвинуть стоп для тестера.
трэйлинг-стоп не подходит, надо двигать стоп по изменившимся условиям, т.е. вошли в лонг - выставили стоп, цена пошла в нашем направлении, возник некий сигнал - надо подтянуть стоп "выше" .
Как это сделать?
стоп ставлю так:
sl=70;
ApplyStop(stopTypeLoss,stopModePoint,sl,2);
скажем по возникновении сигнала для сдвига стопа если я сделаю так:
movestop=... //сигнал двигать стоп
if (LastValue(movestop)) {ApplyStop(stopTypeLoss,stopModePoint,sl,2); }
т.е. если второй раз сделать applystop - он поставится? от какой цены?
а старый стоп как-то обнулить надо?
ЗЫ вообще слабо понятно понятие "стоп" в ами - это вроде тоже массив, но доступа к нему как к массивам buy/sell я не имею.
что почитать на эту тему? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
В принципе установленный стоп по сделке можно изменять в то время когда сделка открыта. Для разрешения передвижения стопа во время сделки служит опция volatile функции ApplyStop. Можно воспользоваться этой возможностью
Второй вариант "нарисовать" линию стопа так как она должна изменяться и выйти из сделки обычным Sell
Код: |
Sell = cross(stoplevel, L);
SellPrice = stoplevel; |
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Т.е. в ApplyStop(stopTypeLoss,stopModePoint,sl,2);
sl можно менять. В момент открытия одно значение, спустя два бара - другое... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
000 писал(а): |
В принципе установленный стоп по сделке можно изменять в то время когда сделка открыта. Для разрешения передвижения стопа во время сделки служит опция volatile функции ApplyStop. Можно воспользоваться этой возможностью
|
а как передвинуть собственно?
volatile - запрещает изменение уровня стопа в период когда сделка открытиа (Volatile = FALSE) или разрешает, если это необходимо (Volatile = TRUE)
то есть если
Buy=...
ApplyStop(stopTypeLoss,stopModePoint,70,2);
If CondStopMove {ApplyStop(stopTypeLoss,stopModePoint,30,2);}
то при сделке создастся стоп 70 пунктов, а на баре где сработает CondStopMove установится стоп уже 30? И это будет работать только если Volatile = TRUE, а иначе активны будут что-ли оба стопа? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Тет. Не так.
Код: |
Buy = ...;
CondStopMove = ...;
Stop = IIf(CondStopMove, 70, 30);
ApplyStop(stopTypeLoss, stopModePoint, Stop, 2, True);
|
Только имей ввиду, что если стоп должен быть 70пунктов, а пункт равен 0,01, то и писать следует 0,7 |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
000 писал(а): |
В принципе установленный стоп по сделке можно изменять в то время когда сделка открыта. Для разрешения передвижения стопа во время сделки служит опция volatile функции ApplyStop. Можно воспользоваться этой возможностью
Второй вариант "нарисовать" линию стопа так как она должна изменяться и выйти из сделки обычным Sell
Код: |
Sell = cross(stoplevel, L);
SellPrice = stoplevel; |
|
совсем запутался.
хочу нарисовать линии стопа чтоб выходить по ним обычным Sell/Cover
пытаюсь так
sl=Optimize("stoploss", 100, 10, 350, 10);
LStopLoss=ValueWhen(Buy,BuyPrice,1)-sl;
Plot(Lstoploss, "", colorBlue, styleLine|styleOwnScale);
SStopLoss=ValueWhen(Short,ShortPrice,1)+sl;
Plot(Sstoploss, "", colorRed, styleLine|styleOwnScale);
как нарисовать нужные линии стопа и желательно только ДО новой сделки? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
В принципе написано все правильно и линии стопов таким образом выводятся. Что конкретно не устраивает?
Полный контроль над работой любой системы позволяет получить только использование циклов. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
000 писал(а): |
В принципе написано все правильно и линии стопов таким образом выводятся. Что конкретно не устраивает?
Полный контроль над работой любой системы позволяет получить только использование циклов. |
они (линии) скачут как обезьяны, то пересекаются, то расходятся в зависимости от прокрутки графика.
умом понимаю что считаю линию верно, но вот нарисовать похоже не могу |
|
|
Посмотреть профиль Отправить личное сообщение |
|
pitero
Зарегистрирован: 09.06.2008
Сообщения: 65
Откуда: Екатеринбург
|
000 писал(а): |
В принципе написано все правильно и линии стопов таким образом выводятся. Что конкретно не устраивает?
Полный контроль над работой любой системы позволяет получить только использование циклов. |
они (линии) скачут как обезьяны, то пересекаются, то расходятся в зависимости от прокрутки графика.
умом понимаю что считаю линию верно, но вот нарисовать похоже не могу |
|
|
Посмотреть профиль Отправить личное сообщение |
|
commenced
Советник
Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"
|
pitero писал(а): |
000 писал(а): |
В принципе написано все правильно и линии стопов таким образом выводятся. Что конкретно не устраивает?
Полный контроль над работой любой системы позволяет получить только использование циклов. |
они (линии) скачут как обезьяны, то пересекаются, то расходятся в зависимости от прокрутки графика.
умом понимаю что считаю линию верно, но вот нарисовать похоже не могу |
Попробуй добавить SetBarsRequired(100000, 100000); |
_________________ Юра |
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail |
|
|