Автор |
Сообщение |
pylyp
Зарегистрирован: 21.09.2012
Сообщения: 80
|
Есть такая система:
Код: |
//var
FA=Optimize("fa",10,5,30,5);
SA=Optimize("sa",20,25,50,5);
f=EMA(C,FA);
s=EMA(C,sa);
Var=f-s;
HistUp=Var>Ref(Var,-3);
HistDown=Var<Ref(Var,-3);
barcolor=IIf(HistUp,colorGreen,IIf(HistDown,colorRed,colorBlue));
//bband
Plot(BBandBot(15,2),"bband",colorLightGrey,styleLine);
Plot(Low,"low",colorRed,styleLine);
Buy=Low<BBandBot(C,15,2) AND Var>Ref(Var,-3);
Sell=Var<Ref(Var,-3); |
Она дает право на вход, когда Boolinger и расстояние между средними сокращается одновременно дают сигнал. Нужно изменить систему так, чтобы:
1. Low отталкивался от Bollingera
2. и потом система должна ждать когда расстояние между средними (Var) Начнет сокарщаться
3. и только после этого входить.
Как это сделать? Не могу найти в хелпере. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
2. и потом система должна ждать когда расстояние между средними (Var) Начнет сокарщаться |
Тут не корректно поставлено условие. Однажды Low оттолкнется от болинджера и потом, в конце концов линии болинджера начнут сходится. Необходимо как минимум ограничить время в течении которого должно произойти второе событие после первого. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pylyp
Зарегистрирован: 21.09.2012
Сообщения: 80
|
Ну да, я тоже так думал, поэтому вставлял
Код: |
Buy=Ref(L,-3)<BBandBot(C,15,2) AND Var>Ref(Var,-3); |
Но здесь выдает только сделки, в которых L<BBand 3 дня назад.
Фишка заключается в том, что я не знаю через сколько VAr>Ref(Var,-3). Там
Есть условие говорящее следи за Var в течение Х дней. Если он начнет сокращаться - входи? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Самое просто и стандартное решение в таком случае.
1. Описываем событие 1
2. Продлеваем его при помощи функции Hold()
3. Описываем второе событие
4. Пишем правило сделки событие 1 + событие 2 |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pylyp
Зарегистрирован: 21.09.2012
Сообщения: 80
|
Вписал:
Код: |
Cond1=L<BBandBot(C,10,2);
Hold(Cond1,3);
Cond2=Var>Ref(Var,-3);
Buy=Cond1+Cond2;
Sell=Var<Ref(Var,-3);
|
Почему-то вообще игнорирует cond2 на входе.
c
система ищет только периоды когда два условия появляются одновременно. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Вместо
Hold(Cond1,3);
надо
Cond1 = Hold(Cond1,3); |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pylyp
Зарегистрирован: 21.09.2012
Сообщения: 80
|
Все то же самое. Все равно на спаде покупает и игнорит Var... |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Тогда вроде еще надо
Var=Abs(f-s); |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pylyp
Зарегистрирован: 21.09.2012
Сообщения: 80
|
Не помагает... все равно игнорит.
Может все дело в сцеплении Cond1+Cond2 ? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Фу ты. Блин. Конечно. Надо
Код: |
Buy = Cond1 AND Cond2 ; |
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
pylyp
Зарегистрирован: 21.09.2012
Сообщения: 80
|
|
Посмотреть профиль Отправить личное сообщение |
|
|