Автор |
Сообщение |
Евгений
Зарегистрирован: 13.12.2010
Сообщения: 45
|
Подскажите. Есть код для ограничения кол-ва сделок. У меня стоит ограничение на 2 сделки. Если после первой сделки цена еще не дошла до стопа, но выполнились условия на вход, то это засчитывается как сигнал. И после срабатывания стопа, даже если снова выполняются условия на вход - сделка не открывается (считает что 2 сигнала уже было....). Как это исправить?
Ks=2;//кол-во сигналов на вход в день
Cond1 = // условия покупки
Cond2 = // условия покупки
Cond3 = // условия покупки
BuySignal = Cond1 AND Cond2 AND Cond3 ;
Buy = BuySignal AND Sum(BuySignal,BarsSince( BeginDay )) <= Ks;//ограничение по кол-ву сделок в день |
|
|
Посмотреть профиль Отправить личное сообщение |
![](images/spacer.gif) |
000
Site Admin
![](images/avatars/183029264847fb5337d4ea4.gif)
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Это не просто. Тебе нужно активировать стопы и отфильтровать неиспользуемые сигналы до того как считать сделки.
Идеальный способ написать цикл, но можно попробовать воспользоваться функцией Equity().
Сначала пишем все сигналы и стопы.
Код: |
Ks=2;//кол-во сигналов на вход в день
Cond1 = // условия покупки
Cond2 = // условия покупки
Cond3 = // условия покупки
BuySignal = Cond1 AND Cond2 AND Cond3 ; |
Потом активируем стопы и фильтруем не используемые сигналы
А уже потом изменяем правила сигналов удаляя сигналы после второго в день
Код: |
Buy = BuySignal AND Sum(BuySignal,BarsSince( BeginDay )) <= Ks;//ограничение по кол-ву сделок в день
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
![](images/spacer.gif) |
Евгений
Зарегистрирован: 13.12.2010
Сообщения: 45
|
Сделал. Но что-то все равно не хочет.....Может как то привязаться к сумме счета, если уменьшается на определенный процент, то тогда сделки больше не открывать. |
|
|
Посмотреть профиль Отправить личное сообщение |
![](images/spacer.gif) |
000
Site Admin
![](images/avatars/183029264847fb5337d4ea4.gif)
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Блин. Это я накосячил немного. Надо в конце
Код: |
Buy = Buy AND Sum(Buy, BarsSince( BeginDay )) <= Ks;//ограничение по кол-ву сделок в день
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
![](images/spacer.gif) |
Евгений
Зарегистрирован: 13.12.2010
Сообщения: 45
|
Не хочет. Может я что-то не так написал?
Ks=3;//кол-во сигналов на вход в день
Stop=HATR;//размер стопа
Cond1 = // условия покупки
Cond2 = // условия покупки
Cond3 = // условия покупки
BuySignal = Cond1 AND Cond2 AND Cond3 AND InDay;
ApplyStop (stopTypeLoss,stopModePoint,Stop,ExitAtStop = 1);//стоп-лосс
Equity(1);
Buy = BuySignal;
Buy = Buy AND Sum(Buy, BarsSince( BeginDay )) <= Ks;//ограничение по кол-ву сделок в день |
|
|
Посмотреть профиль Отправить личное сообщение |
![](images/spacer.gif) |
000
Site Admin
![](images/avatars/183029264847fb5337d4ea4.gif)
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Конечно неправильно.
Код: |
Buy = BuySignal;
Equity(1);
Buy = Buy AND Sum(Buy, BarsSince( BeginDay )) <= Ks;//ограничение по кол-ву сделок в день
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
![](images/spacer.gif) |
Евгений
Зарегистрирован: 13.12.2010
Сообщения: 45
|
Так уже пробовал. То открывает сделку, то нет.... |
|
|
Посмотреть профиль Отправить личное сообщение |
![](images/spacer.gif) |
000
Site Admin
![](images/avatars/183029264847fb5337d4ea4.gif)
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Попробуй перед Equity() задать минимальный лот, а после уже так как надо. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
![](images/spacer.gif) |
Евгений
Зарегистрирован: 13.12.2010
Сообщения: 45
|
Нет, не хочет. Ладно, спасибо за все. |
|
|
Посмотреть профиль Отправить личное сообщение |
![](images/spacer.gif) |
|