Aracı Kurum Hesabındaki Verilerin Kullanımı #
Strateji içerisinde stratejinin bağlı olduğu aracı kurum hesabının bazı bilgilerine ve pozisyonlarına erişilebilir.
Hesap Bilgilerine Erişim #
Aracı kurum hesabında bulunan bakiye, işlem limiti gibi veriler piyasa bazlı olarak GetTradeUser fonksiyonu kullanılarak alınabilir.
Örnek #
public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues) { var _tradeUser = GetTradeUser(); Debug("Hesap Numarası : " + _tradeUser.AccountId); Debug("Piyasa (Bist) : " + _tradeUser.Accounts[0].ExchangeID); Debug("Overall (Bist) : " + _tradeUser.Accounts[0].Overall); Debug("İşlem Limiti (Bist) : " + _tradeUser.Accounts[0].AvailableMargin); Debug("Overall (Viop) : " + _tradeUser.Accounts[1].Overall); Debug("İşlem Limiti (Viop) : " + _tradeUser.Accounts[1].AvailableMargin); }
Pozisyon Bilgilerine Erişim #
Aracı kurum portföyünde bulunan pozisyonlara ait verilere strateji içerisinden erişilebilir.
GetRealPositions #
Portföydeki pozisyonların tamamının tutulduğu listedir. İstenilen sembol üzerinden pozisyona ulaşılabilir.
Dictionary<string, AlgoTraderPosition> GetRealPositions()
Key string
Sembol tanımı
Value AlgoTraderPosition
Portföydeki pozisyonlara ait bilgileri bulunduran model. Bknz. AlgoTraderPosition
Örnek #
public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues) { var positions = GetRealPositions(); if (positions.ContainsKey(Symbol)) { Debug($"Pozisyon verisi okundu......"); Debug(positions[Symbol].QtyAvailable); } }
OnRealPositionUpdate #
Stratejiye bağlı aracı kurum hesabının pozisyonlarında bir değişiklik olduğu durumda OnRealPositionUpdate metodu otomatik tetiklenir. İçeriğinde sadece güncellenen pozisyona ait bilgileri döner.
public override void OnRealPositionUpdate(AlgoTraderPosition position)
Parametreler #
position AlgoTraderPosition
Portföydeki pozisyonlara ait bilgileri bulunduran model. Bknz. AlgoTraderPosition
Örnek #
public override void OnRealPositionUpdate(AlgoTraderPosition position) { Debug($"OnRealPositionUpdate çalıştı"); Debug($"{position.Symbol} {position.QtyAvailable} adet ve {position.AvgCost} ortalama maliyet ile güncellendi"); }