Автор |
Сообщение |
roma095
Зарегистрирован: 02.02.2012
Сообщения: 170
|
Подскажите пожалуйста, почему в бэктестинге нет ни одного сигнала на сделку по такой формуле? В чем ошибка?
Vtb = Foreign("VBH2_120201_120224", "Close");
Sber = Foreign("SRH_120201_120224", "Close");
per = 10;
Momvtb = (Vtb - Ref(Vtb, - per))/Ref(vtb, - per);
MomSber = (Sber - Ref(Sber, - per))/Ref(Sber, - per);
if(Name() == "VBH2_120201_120224")
{
SetPositionSize(1, 4);
Buy = Cross(Momvtb - MomSber, 0.02);
Sell = Cross(0, Momvtb - MomSber);
Short = Cross(-0.02, Momvtb - MomSber);
Cover = Cross(Momvtb - MomSber, 0);
}
if(Name() == "SRH_120201_120224")
{
SetPositionSize(4, 4);
Short = Cross(Momvtb - MomSber, 0.02);
Cover = Cross(0, Momvtv - MomSber);
Buy = Cross(-0.02, Momvtb - MomSber);
Sell = Cross(Momvtb - MomSber, 0);
} |
|
|
Посмотреть профиль Отправить личное сообщение |
|
commenced
Советник
Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"
|
roma095 писал(а): |
Подскажите пожалуйста, почему в бэктестинге нет ни одного сигнала на сделку по такой формуле? В чем ошибка?
Vtb = Foreign("VBH2_120201_120224", "Close");
Sber = Foreign("SRH_120201_120224", "Close");
per = 10;
Momvtb = (Vtb - Ref(Vtb, - per))/Ref(vtb, - per);
MomSber = (Sber - Ref(Sber, - per))/Ref(Sber, - per);
if(Name() == "VBH2_120201_120224")
{
SetPositionSize(1, 4);
Buy = Cross(Momvtb - MomSber, 0.02);
Sell = Cross(0, Momvtb - MomSber);
Short = Cross(-0.02, Momvtb - MomSber);
Cover = Cross(Momvtb - MomSber, 0);
}
if(Name() == "SRH_120201_120224")
{
SetPositionSize(4, 4);
Short = Cross(Momvtb - MomSber, 0.02);
Cover = Cross(0, Momvtv - MomSber);
Buy = Cross(-0.02, Momvtb - MomSber);
Sell = Cross(Momvtb - MomSber, 0);
} |
так вы расчетные линии на график выведите и посмотрите есть пересечения или нет |
_________________ Юра |
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail |
|
roma095
Зарегистрирован: 02.02.2012
Сообщения: 170
|
У меня моментум под одним инструментом только. По очереди приходится переключать. Как их наложить? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
commenced
Советник
Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"
|
Так используй Foreign. Счас я бухой завтра код ьгляну |
_________________ Юра |
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail |
|
spitfire
Зарегистрирован: 29.04.2010
Сообщения: 729
Откуда: Moscow
|
commenced писал(а): |
Так используй Foreign. Счас я бухой завтра код ьгляну |
Отмечаешь ударный день пятницы? Даа, здорово сегодня шортилам засадили.. Даже шансов на выход не дали |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
commenced
Советник
Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"
|
SetBarsRequired(100000,0);
f=(Foreign("SRU1","l"));
s=(Foreign("RIU1","l"));
g=(f-Ref(f,-1))/Ref(f,-1)*100;
j=(s-Ref(s,-1))/Ref(s,-1)*100;
r = Cross(j,g);
t = Cross(g,j);
p=j;
n=g;
k=p-n;
for(i = 1; i < BarCount; i ++)
{
if(r[i] == 1 OR t[i]==1)
{
k[i] = p[i]-n[i];
}
else {
k[i] = (p[i]-n[i]) +k[i-1];
}}
Plot(-0.6, "-0,6", 5, styleStaircase);
Plot(0.6, "0.6", 5, styleStaircase);
Plot(k, "k", 3, styleStaircase);
На этом примере посмотри что и как, т.е. визуализируй условия, чтоб понять, а выполняются они вообще или нет. У меня нет в базе твоих бумаг, поэтому кинул старый код более менее подходящий. |
_________________ Юра |
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Вот код
Код: |
Vtb = Foreign("SPFB.VTBR", "Close");
Sber = Foreign("SPFB.SBRF", "Close");
per = 10;
Momvtb = (Vtb - Ref(Vtb, - per))/Ref(vtb, - per);
MomSber = (Sber - Ref(Sber, - per))/Ref(Sber, - per);
if(Name() == "SPFB.VTBR")
{
SetPositionSize(1, 4);
Buy = Cross(Momvtb - MomSber, 0.02);
Sell = Cross(0, Momvtb - MomSber);
Short = Cross(-0.02, Momvtb - MomSber);
Cover = Cross(Momvtb - MomSber, 0);
}
if(Name() == "SPFB.SBRF")
{
SetPositionSize(4, 4);
Short = Cross((Momvtb - MomSber), 0.02);
Cover = Cross(0, (Momvtb - MomSber));
Buy = Cross(-0.02, (Momvtb - MomSber));
Sell = Cross((Momvtb - MomSber), 0);
}
|
Вот скрин теста |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег.
Последний раз редактировалось: 000 (Пн Фев 27, 2012 4:29 pm), всего редактировалось 1 раз |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
roma095
Зарегистрирован: 02.02.2012
Сообщения: 170
|
Я вообще запутался. У меня у каждого инструмента всеравно свой график. Никакого пересечения инструментов не могу сделать.
Делал по коду Momenced
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Если хочешь посмотреть разницу моментумов, то вот такой код
Код: |
Vtb = Foreign("SPFB.VTBR", "Close");
Sber = Foreign("SPFB.SBRF", "Close");
per = 10;
MomVtb = (Vtb - Ref(Vtb, - per))/Ref(vtb, - per);
MomSber = (Sber - Ref(Sber, - per))/Ref(Sber, - per);
Plot(MomVtb - MomSber, "", ColorRed);
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
roma095
Зарегистрирован: 02.02.2012
Сообщения: 170
|
000, всеравно визуально не видно корелляцию двух инструментов, что бы можно было оценить расхождение и открыть позу по двум инструментам.
Я хочу сделать робота спредера, который после раскорелляции однотипных инструментов сможет открыться позами внутрь по каждой ноге и закрытся при пересечении линий или сужению до некого значения спреда.
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
roma095
Зарегистрирован: 02.02.2012
Сообщения: 170
|
000, вот твой код. сбер и втб с 2 февраля по 28 февраля, 5 мин.
Открылась только одна сделка.
Вот у меня совсем мозг отказывается это понимать
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Ну вот смотри спред моментумов на 5минутках этих двух фьючей за февраль.
Я вижу только один раз когда спред перелез через 0.02 |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
roma095
Зарегистрирован: 02.02.2012
Сообщения: 170
|
А где смотреть пересечение? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
???
Красная линия это спред.
Синие горизонтальные это 0.02 и - 0.02
Код AFL я давал выше.... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
roma095
Зарегистрирован: 02.02.2012
Сообщения: 170
|
roma095 писал(а): |
А где смотреть пересечение? |
Увидел. Только у меня такого графика то нет |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|