Автор |
Сообщение |
kosbar
Зарегистрирован: 17.03.2009
Сообщения: 356
|
В общем нашёл ошибку. Система пересиживала в позиции благодаря обновлению массиву LH =LowestSince()
Если кому интересно, вот код который был:
Код: |
Z1 = (O > C);
Z2 = (C > O);
LH = LowestSince(Z1, High, 1);
HL = HighestSince(Z2, Low, 1);
Cover = Buy = Cross(High, LH);
Short = Sell = Cross(HL, Low);
BuyPrice = CoverPrice = Max(LH,Open);
SellPrice = ShortPrice = Min(HL,Open);
X1 = ExRem(Buy, Sell);
X2 = ExRem(Sell, Buy);
Plot( HL, "BuyPrice", ParamColor( "Color Z2", colorCycle ), ParamStyle("Style Z2"));
Plot( LH, "uyPrice", ParamColor( "Color LH", colorCycle ), ParamStyle("Style LH"));
|
А вот логика на For:
Код: |
SetBarsRequired(sbrAll, sbrAll);
BP[1] = H[1];
SP[1] = L[1];
for( i = 1; i < BarCount; i++ )
{
if(O[i]>C[i])
{
if(O[i-1]>C[i-1])
{BP[i] = Min(H[i], H[i-1]);}
else {BP[i] = H[i];}
}
else
{
BP[i] = BP[i-1];
}
if(O[i]<C[i])
{
if(O[i-1]<C[i-1])
{SP[i] = Max(L[i], L[i-1]);}
else {SP[i] = L[i];}
}
else
{
SP[i] = SP[i-1];
}
}
Cover = Buy = Cross(High, BP);
Short = Sell = Cross(SP, Low);
BuyPrice = CoverPrice = Max(BP,Open);
SellPrice = ShortPrice = Min(SP,Open);
Plot(BP, "BP",6,1);
Plot(SP, "BP",4,1); |
|
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
moextrader
Зарегистрирован: 27.04.2014
Сообщения: 62
|
по моему вот так логичней, у меня льет, особенно если скольжение до 20 повысить
Код: |
SetBarsRequired(sbrAll, sbrAll);
BP[1] = H[1];
SP[1] = L[1];
for( i = 1; i < BarCount; i++ )
{
if(O[i]>C[i])
{
if(O[i-1]>C[i-1])
{BP[i] = Min(H[i], H[i-1]);}
else {BP[i] = H[i];}
}
else
{
BP[i] = BP[i-1];
}
if(O[i]<C[i])
{
if(O[i-1]<C[i-1])
{SP[i] = Max(L[i], L[i-1]);}
else {SP[i] = L[i];}
}
else
{
SP[i] = SP[i-1];
}
}
Buy1=Cross(High, BP);
Short1=Cross(SP, Low);
Buy = Cover = Buy1 AND NOT Short1;
Short = Sell = Short1 AND NOT Buy1;
Buy=ExRem(Buy,Sell);
Sell=ExRem(Sell,Buy);
Short=ExRem(Short,Cover);
Cover=ExRem(Cover,Short);
BuyPrice = CoverPrice = Max(BP,Open)+10;
SellPrice = ShortPrice = Min(SP,Open)-10;
Plot(BP, "BP",6,1);
Plot(SP, "SP",4,1);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-25);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,L, Offset=-35);
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-30);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorRed, 0, H, Offset=25);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorOrange, 0,H, Offset=35);
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-30);
|
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
|
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
|