Yüzeysel Alan Verilerinin Kullanımı #
MatriksIQ içerisinden derinlik ve fiyat pencereleri içerisinden erişilebilen sembole ait yüzeysel verilerin stratejide kullanılması istenildiğinde strateji içerisinde ilgili verilere kaydolunması gereklidir.
Ek Notlar #
Tarihsel yüzeysel alan verileri tutulmadığı için bu fonksiyonların eklendiği stratejide backtest ve optimizasyon yapılması engellenmiştir.
SubscribeToSymbolUpdateField(string, SymbolUpdateField) #
Sembole ait istenilen tek yüzeysel veriye kaydolmayı sağlayan fonksiyondur. Az sayıda yüzeysel veri stratejide kullanılacaksa bu fonksiyonun kullanılması önerilir.
public void SubscribeToSymbolUpdateField(string Symbol, SymbolUpdateField symbolUpdateField)
Parametreler #
Symbol string
Sembol parametresidir. Yüzeysel verisi alınacak sembol tanımı yazılmalıdır. Örn. “GARAN”
symbolUpdateField SymbolUpdateField
Stratejiye alınacak yüzeysel verinin seçildiği parametredir. Detaylı bilgi için bknz. SymbolUpdateField
Örnek #
public override void OnInit() { AddSymbol(Symbol, SymbolPeriod); //Sembole ait Tavan fiyatına kayıt olunma işlemi SubscribeToSymbolUpdateField(Symbol, SymbolUpdateField.LimitUp); WorkWithPermanentSignal(true); } public override void OnDataUpdate(BarDataEventArgs barData) { var Tavan = GetMarketData(Symbol, SymbolUpdateField.LimitUp); Debug("Tavan Fiyatı : " + Tavan); }
AddSymbolMarketData(string) #
Sembole ait tüm yüzeysel veriye kaydolunmak isteniyorsa bu fonksiyon kullanılır. Tüm yüzeysel veri stratejiye dahil edileceğinden, performans açısından az sayıda yüzeysel veri alınacaksa bu fonksiyon önerilmez.
public void AddSymbolMarketData(string Symbol)
Parametreler #
Symbol string
Sembol parametresidir. Yüzeysel verisi alınacak sembol tanımı yazılmalıdır. Örn. “GARAN”
Örnek #
public override void OnInit() { AddSymbol(Symbol, SymbolPeriod); //Sembole ait tüm yüzeysel veriye kaydolma işlemi AddSymbolMarketData(Symbol); WorkWithPermanentSignal(true); } public override void OnDataUpdate(BarDataEventArgs barData) { //Yüzeysel veri içerisinde Tavan verisinin çekilmesi var Tavan = GetMarketData(Symbol, SymbolUpdateField.LimitUp); Debug("Tavan Fiyatı : " + Tavan); }
GetMaketData(string, SymbolUpdateField) #
Kayıt olunan yüzeysel veriyi dönen fonksiyondur. Sadece sayısal verilerin stratejiye alınması için kullanılır.
public decimal GetMaketData(string Symbol, SymbolUpdateField symbolUpdateField)
Parametreler #
Symbol string
Sembol parametresidir. Yüzeysel verisi alınacak sembol tanımı yazılmalıdır. Örn. “GARAN”
symbolUpdateField SymbolUpdateField
Stratejiye alınacak yüzeysel verinin seçildiği parametredir. Detaylı bilgi için bknz. SymbolUpdateField
Dönütler #
decimal
Kayıt olunan yüzeysel verinin değeri.
Örnek #
public override void OnInit() { AddSymbol(Symbol, SymbolPeriod); //Sembole ait Tavan fiyatına kayıt olunma işlemi SubscribeToSymbolUpdateField(Symbol, SymbolUpdateField.LimitUp); WorkWithPermanentSignal(true); } public override void OnDataUpdate(BarDataEventArgs barData) { var Tavan = GetMarketData(Symbol, SymbolUpdateField.LimitUp); Debug("Tavan Fiyatı : " + Tavan); }
GetMaketDataAsString(string, SymbolUpdateField) #
Kayıt olunan yüzeysel veriyi çekmek için kullanılır. Sadece metin içerikli verilerin stratejiye alınması için kullanılır.
public string GetMaketData(string Symbol, SymbolUpdateField symbolUpdateField)
Parametreler #
Symbol string
Sembol parametresidir. Yüzeysel verisi alınacak sembol tanımı yazılmalıdır. Örn. “GARAN”
symbolUpdateField SymbolUpdateField
Stratejiye alınacak yüzeysel verinin seçildiği parametredir. Detaylı bilgi için bknz. SymbolUpdateField
Dönütler #
string
Kayıt olunan yüzeysel verinin değeri.
Örnek #
public override void OnInit() { AddSymbol(Symbol, SymbolPeriod); //Sembole ait Tavan fiyatına kayıt olunma işlemi SubscribeToSymbolUpdateField(Symbol, SymbolUpdateField. Description); WorkWithPermanentSignal(true); } public override void OnDataUpdate(BarDataEventArgs barData) { var Ackl = GetMarketDataAsString(Symbol, SymbolUpdateField. Description); Debug("Sembol Açıklaması: " + Ackl); }