Sadece su ve PSar..
PSar Parametreleri..
Kod:
public double PSar_AccelerationFactor { get; set; } //Minimum="0.01" Maximum="0.50" SmallChange="0.01"
public double PSar_Increment { get; set; } //Minimum = "0.001" Maximum = "0.2" SmallChange = "0.001"
public int PSar_SearchCount { get; set; } //Minimum="2" Maximum="50" SmallChange="1"
Bu sýnýrlar dahilinde 50 x 200 x 49 = 490000 - dört yüz doksan bin adet hesaplama yapýlabilir.
PSar deðerinin üzerinde kapanýþta AL, altýnda kapanýþta SAT.
Ama hangi deðerler?
Kod:
// ISCTR AL-SAT ÞARTLARI
// SATIÞ ÞARTLARI
#StyleName;PSAR Trading Exit
StyleDescription;PSAR SATIÞ sinyali þartlarý
StyleType;TradingSELL
//
#Condition
InformationWhenConditionOccured;PSAR deðeri altýnda kapattý
//
Equation;Value:CLOSEREAL[0];<=;Indicator:PSAR[0]
#EndCondition
#EndStyle
//
// ALIÞ ÞARTLARI
#StyleName;PSAR Trading Entry
StyleDescription;PSAR ALIM sinyali þartlarý
StyleType;TradingBUY
#Condition
InformationWhenConditionOccured;Kapanýþ PSAR deðeri üzerinde
//
Equation;Value:CLOSEREAL[0];>=;Indicator:PSAR[0]
#EndCondition
#EndStyle
520 gün için
Hesaplama ve liste:
Kod:
private void DoCalculation_PSar()
{
PSarSonuclari tabloSatirlari = new PSarSonuclari();
int id = 1;
int daysCountForPerformanceTest = 520;
for (int search_count = 2; search_count <= 30; search_count++)
{ //Minimum="2" Maximum="50" SmallChange="1"
int PSar_SearchCount = Convert.ToInt16(search_count);
for (int acceleration_factor = 1; acceleration_factor <= 50; acceleration_factor++)
{ //Minimum="0.01" Maximum="0.50" SmallChange="0.01"
double PSar_AccelerationFactor = Math.Round((double)acceleration_factor / 100, 2);
for (int increment = 1; increment <= 200; increment++)
{ //Minimum = "0.001" Maximum = "0.2" SmallChange = "0.001"
double PSar_Increment = Math.Round((double)increment / 1000, 3);
App.BIST.TradingGraph.Menkul.ResetPSAR_Period(PSar_AccelerationFactor, PSar_Increment, PSar_SearchCount);
clsCalculate_PSar pSar = new clsCalculate_PSar();
pSar.CalculatePSAR(App.BIST.TradingGraph.Menkul, App.BIST.TradingGraph.GunlukBarlar, true);
int islemSayisi = 0;
double gainLoss = AlSat_Performans_Hesapla_PSAR(hesaplanacakGunSayisi: daysCountForPerformanceTest, ref islemSayisi);
PSarSonucu psonuc = new PSarSonucu
{
ID = id,
PSar_SearchCount = PSar_SearchCount,
PSar_Increment = PSar_Increment,
PSar_AccelerationFactor = PSar_AccelerationFactor,
GainLoss = Math.Round(gainLoss, 1),
islemSayisi = islemSayisi
};
id++;
tabloSatirlari.Add(psonuc);
}
}
clsExportToExcel<PSarSonucu, PSarSonuclari> Tablo = new clsExportToExcel<PSarSonucu, PSarSonuclari>
{
dataToPrint = tabloSatirlari
};
Tablo.GenerateReport();
}
}
Sonuçlar :
ISCTR için USD bazlý günlük barlarda
son 520 gün için yapýlan 490 bin adet hesaplama sonucunun
en tepesindekiler..
Search Count;Increment;Acceleration Factor;Kazanç;Al-Sat Sayýsý
18;0,117;0,45;668,7;41
18;0,114;0,47;660,5;41
22;0,115;0,47;658,9;42
22;0,115;0,46;658,9;42
22;0,127;0,5;651;41
22;0,126;0,5;651;41
22;0,112;0,49;648,9;41
22;0,114;0,48;648,9;41
22;0,113;0,48;648,9;41
22;0,112;0,48;648,9;41
22;0,114;0,47;648,9;41
22;0,113;0,47;648,9;41
22;0,112;0,47;648,9;41
22;0,114;0,46;648,9;41
22;0,12;0,46;647,8;41
19;0,114;0,48;647,3;41
18;0,113;0,47;647,3;41
23;0,125;0,46;644,8;41
18;0,114;0,49;644,4;41
18;0,114;0,48;644,4;41
18;0,114;0,46;642,9;41
22;0,125;0,46;642,8;41
22;0,115;0,49;642,7;42
22;0,115;0,48;642,7;42
23;0,124;0,47;638,7;41
23;0,124;0,46;638,7;41
34;0,189;0,47;637,6;44
34;0,188;0,47;637,6;44
34;0,187;0,47;637,6;44
34;0,186;0,47;637,6;44
22;0,124;0,46;636,7;41
22;0,123;0,46;636,7;41
22;0,122;0,46;636,7;41
22;0,121;0,46;636,7;41
19;0,109;0,49;634,4;41
19;0,108;0,49;634,4;41
18;0,108;0,49;634,4;41
18;0,109;0,48;634,4;41
18;0,108;0,48;634,4;41
34;0,187;0,49;633,2;44
34;0,186;0,49;633,2;44
22;0,112;0,5;633;41
22;0,114;0,49;633;41
22;0,113;0,49;633;41
22;0,127;0,49;632,2;42
24;0,103;0,5;632,1;39
24;0,103;0,49;632,1;39
22;0,12;0,48;632;41
22;0,12;0,47;632;41
19;0,112;0,5;631,5;41
...
Sonuç: 100 USD 520 iþlem gününde 669 USD olmuþ.
Search Count: 18
Increment: 0,117
Acceleration Factor: 0,45
Alým iþlemi + Satým iþlemi : 41 + 41
Hesaplamalarýn daðýlým gösterimi: (Sadece 18 periyotta (Search Count = 18) yapýlan hesaplamalar için birikimin 500 USD ve üzerinde olduðu deðerler)

Grafik üzerinde gösterim: (Maksimum birikim 837 USD mertebesine çýkmýþ)

Hiç bir ara düzeltme, stoploss deðersiz, over bought bölgelerde take profit yapmadan.. trendin olmadýðý bölgeler devre dýþý býrakýlmadan, diðer ara þartlar olmaksýzýn sadece PSar ile Al Sat iþlemi hesaplamasýnda
ISCTR için USD bazlý son 520 günlük barda 100 USD ile maksimum 837 USD ve son iþlemde elde kalan 669 USD
Sorun þu; PSar karmaþýk bir hesaplama gerektiriyor ve bir sonraki bar için kapanýþ deðeri - pivot deðer - hesaplama algoritmasý baya zor.. onun için iteratif hesaplama yapýlacak.
Soru þu: akþamdan þartý emirlerle bu iþi halledebilir miyim?
Yer Ýmleri