Amibroker: подсчет серии профитных и убыточных дней

сварганил вот.

как он работает?
сначала вам нужно Equity, без него работать не будет.
для этого запускаем в бектестере свою системку. и жмем Equity, если оно и без того не появилось на графике.

Далее.
Жмем меню Analysis > Commentary
Там жмем Formula и вставляем нижеприведенный текст.


Программа считает бары, а не дни.
Т.е. если у вас дневной график - посчитает серии дней, а если недельный, серии недель.
Информацию выдает в окно комментариев.

Иногда, чтобы обновить значения (если график новый), достаточно тыцкнуть в любом месте графика.

сама программа:
Код:
//E = Equity();
E = Foreign("~~~EQUITY", "C" );

Plus = IIf(E> Ref(E,-1), 1, 0);
Plot(Plus, "Дни в профите", colorGreen);

LastZeroP = BarsSince(Plus == 0);

Plot(LastZeroP, "LastZero", colorBlack);

Minus = IIf(E< Ref(E,-1), 1, 0);
LastZeroM = BarsSince(Minus == 0);

MaxP = Highest(LastZeroP);
MaxM = Highest(LastZeroM);

text00 = "Профитные серии дней: ";
for (i = 1; i < LastValue(MaxP+1); i++)
{
uP = LastZeroP == i;
uP1 = LastZeroP == i+1;
P = LastValue(Cum(uP));
P1 = LastValue(Cum(uP1));
itogo = P-P1;
text0 = " " + i +" days: " + itogo + "\n";
printf(text0, i);
}

text00 = " ";
text00 = "Лосевые серии дней: ";
for (i = 1; i < LastValue(MaxM+1); i++)
{
uP = LastZeroM == i;
uP1 = LastZeroM == i+1;
P = LastValue(Cum(uP));
P1 = LastValue(Cum(uP1));
itogo = P-P1;
text0 = " " + i +" days: " + itogo + "\n";
printf(text0, i);
}

PlusDays = LastValue(Cum(Plus));
MinusDays = LastValue(Cum(Minus));

text00 = " ";
text1 = "Всего плюсовых дней: " + PlusDays;
text1 = "Всего минусовых дней: " + MinusDays;

text00 = " ";
textC = "con-vertor.livejournal.com";
textC = "08.10.2009";
а вот пример результата ее работы:
Код:
Профитные серии дней: 
 1 days: 110
 2 days: 66
 3 days: 25
 4 days: 13
 5 days: 12
 6 days: 2
 7 days: 6
 8 days: 2
 9 days: 1
 
Лосевые серии дней: 
 1 days: 122
 2 days: 65
 3 days: 34
 4 days: 10
 5 days: 4
 6 days: 3
 
Всего плюсовых дней: 508
Всего минусовых дней: 432
 
con-vertor.livejournal.com
08.10.2009
 
Your email address will not be publicly visible. We will only use it to contact you to confirm your post.
Сверху