Originally Posted by
Caglar
Tiberius hocam değer verdiğim parametrelerden, max days to new high hesaplaması yapıyor musunuz? Akşam eve gidince yazıp gönderiyim. YKOC un sisteminde en çok merak ettiğim değer o şu anda.
Umit hocam, sistemin yeni yüksek yapması için geçen maximum günü hesaplayan formül aşağıda:
Kod:
public int CalcMaxDaysToNewHigh(List<float> equityCurve, List<cxBar> prices)
{
if (equityCurve == null || prices == null) return -1;
if (equityCurve.Count != prices.Count) return -1;
var maxDaysToNewHigh = -1;
var equityHigh = 0f;
var dateOfEquityHigh = DateTime.MaxValue;
for (var i = 0; i < equityCurve.Count; i++)
{
var equity = equityCurve[i];
var date = prices[i].Date;
if (equity > equityHigh)
{
equityHigh = equity;
dateOfEquityHigh = date;
}
var duration = date - dateOfEquityHigh;
maxDaysToNewHigh = Math.Max(maxDaysToNewHigh, (int)duration.TotalDays);
}
return maxDaysToNewHigh;
}
Formül şu şekilde kullanılabilir:
Kod:
var maxDaysToNewHigh = User.CalcMaxDaysToNewHigh(Sistem.GetiriKZ, Sistem.GrafikVerileri);
Sistem.Mesaj(maxDaysToNewHigh.ToString());
Müsait bir zamanınızda ne kadar değer veriyor yazabilirseniz bilgilenmiş oluruz. Bu kadar iyi bir sistemin < 30 vermesini bekliyorum. 60'dan küçük bir değer henüz benim ulaşabildiğim bir değer değil. 28'lik bir sistemi şu anda test ediyorum ancak gerçek hesapta işlem yapmaya başlamadığım için onu saymıyorum.
Yer İmleri