Sembol Bazlı Aracı Kurum Verileri #
Kurumların gün içerisinde gerçekleştirdiği işlemlerin sembol bazlı verilerine stratejideki aşağıdaki 3 fonksiyon ile erişilebilir.
- En İyi Kurum – GetBestInstitution()
- En İyi Kurumlar Toplamı – GetBestInstitutionSum()
- Kurumun Sembolde Yaptığı İşlemler – GetBrokerageAgencyTransactionsForSymbols()
En İyi Kurum – GetBestInstitution() #
Girilen parametrelere göre senette gerçekleşen işlemleri sıralayıp istenilen sıradaki kuruma ait verileri döner.
Yazım #
Matriks.InnerAlgoModels.AlgoRankedInstitution GetBestInstitution(string Symbol, TransactionDataField DataField, TransactionSide Side, BestBuyerSellerOrder Order, MoneyIncomePeriod Period, int Rank, bool IncludeReportedOrders)
Parametreler #
Symbol string
Sembol tanımı
DataField TransactionDataField
Seçilen filtrelere uyan kurumun yaptığı işlemlerin adet veya hacim verilerinden hangisinin döneceğine karar verir. Alabileceği değerler : “Size, Volume”
Side TransactionSide
İşlem yönüne göre filtre yapılmasını sağlar. Alabileceği değerler : “All, Net, Buy, Sell”
Order BestBuyerSellerOrder
Kurumun sembolde yaptığı işlemlerin hangi veri tipine göre sıralanacağını gösterir.
Alabileceği değerler : “TotalSellerVolume, TotalSellerLot, TotalLot, TotalBuyerVolume, TotalBuyerLot, NetSellerVolume, NetSellerLot, NetBuyerVolume, NetBuyerLot,”
Period MoneyIncomePeriod
Gün içi seçilebilecek periyot parametresi. Alabileceği değerler “Min5, Min10, Min30, Min60 ve Daily”. Örneğin Daily seçilirse o gün içerisindeki veriler alınır.
Rank int
Kurum sırası. Örnek olarak 1 değeri verilirse ilk sıradaki kurumun verileri alınır.
IncludeReportedOrders bool
Raporlanmış emirler dahil edilmesi isteniyorsa true, istenmiyorsa false geçilmeli
Çıktı #
Id int
Seçilen filtrelere uyan kurumun idsini döner.
Name string
Seçilen filtrelere uyan kurumun tanımını döner.
Rank int
Seçilen filtrelere uyan kurumun sırasını döner.
Value decimal
Seçilen filtrelere uyan kurumun senette yaptığı işlemlerin adet veya hacim değerini döner.
Örnek #
public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues) { var _bestInstitution = GetBestInstitution(Symbol, TransactionDataField.Size, TransactionSide.Net, BestBuyerSellerOrder.NetBuyerLot, MoneyIncomePeriod.Daily, 1, true); Debug("Sembolde işlem yapan kurumlar NET ALIŞ ADEDİNE göre sıralındığında İLK sıradaki kurum : "+ _bestInstitution.Name); Debug("Bu kurumun İŞLEM ADEDİ : "+ _bestInstitution.Value); }
En İyi Kurumlar Toplamı – GetBestInstitutionSum() #
Girilen parametrelere göre senette gerçekleşen işlemleri sıralayıp istenilen ilk N sayıda kurumun toplam verilerini döner.
Yazım #
Matriks.InnerAlgoModels.AlgoRankedInstitutionSum GetBestInstitutionSum(string Symbol, TransactionDataField DataField, TransactionSide Side, BestBuyerSellerOrder Order, MoneyIncomePeriod Period, int InstitutionCount, bool IncludeReportedOrders)
Parametreler #
Symbol string
Sembol tanımı
DataField TransactionDataField
Seçilen filtrelere uyan ilk N kurumun yaptığı işlemlerin adet veya hacim verilerinden hangisinin döneceğine karar verir. Alabileceği değerler : “Size, Volume”
Side TransactionSide
İşlem yönüne göre filtre yapılmasını sağlar. Alabileceği değerler : “All, Net, Buy, Sell”
Order BestBuyerSellerOrder
Kurumların sembolde yaptığı işlemlerin hangi veri tipine göre sıralanacağını gösterir.
Alabileceği değerler : “TotalSellerVolume, TotalSellerLot, TotalLot, TotalBuyerVolume, TotalBuyerLot, NetSellerVolume, NetSellerLot, NetBuyerVolume, NetBuyerLot,”
Period MoneyIncomePeriod
Gün içi seçilebilecek periyot parametresi. Alabileceği değerler “Min5, Min10, Min30, Min60 ve Daily”. Örneğin Daily seçilirse o gün içerisindeki veriler alınır.
InstitutionCount int
Toplam verileri alınacak kurum sayısı. Örnek olarak 5 değeri verilirse ilk 5 sıradaki kurumun toplam verileri alınır.
IncludeReportedOrders bool
Raporlanmış emirler dahil edilmesi isteniyorsa true, istenmiyorsa false geçilmeli
Çıktı #
Count int
Seçilen toplam kurum sayısı
Value decimal
Seçilen filtrelere uyan ilk N kurumun senette yaptığı işlemlerin adet veya hacim değerini döner.
Örnek #
public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues) { var _bestInstitutionsSum = GetBestInstitutionsSum(Symbol, TransactionDataField.Volume, TransactionSide.Net, BestBuyerSellerOrder.TotalSellerVolume, MoneyIncomePeriod.Daily, 5, true); Debug("Sembolde işlem yapan kurumlar TOPLAM SATIŞ ADEDİNE göre sıralındığında İLK 5 sıradaki kurumun TOPLAM İŞLEM HACMİ : " + _bestInstitutionsSum.Value); }
Kurumun Sembolde Yaptığı İşlemler – GetBrokerageAgencyTransactionsForSymbols() #
Herhangi bir kurumun ilgili sembolde yaptığı işlemlerin verilerini döner.
Yazım #
decimal? GetBrokerageAgencyTransactionsForSymbols(int BrokerageAgencyId, string Symbol, TransactionSide Side, TransactionDataField DataField, MoneyIncomePeriod Period, bool IncludeBlockTraders)
Parametreler #
BrokerageAgencyId int
Kurum Idsi
Symbol string
Sembol tanımı
Side TransactionSide
Seçilen kurumun hangi yöndeki işlemlerini getireceğinin seçimi. Alabileceği değerler : “All, Net, Buy, Sell”
DataField TransactionDataField
Seçilen kurumun hangi yöndeki işlemlerini getireceğinin seçimi. Alabileceği değerler : “Size, Volume”
Period MoneyIncomePeriod
Gün içi seçilebilecek periyot parametresi. Alabileceği değerler “Min5, Min10, Min30, Min60 ve Daily”. Örneğin Daily seçilirse o gün içerisindeki veriler alınır.
IncludeBlockTraders bool
Raporlanmış emirler dahil edilmesi isteniyorsa true, istenmiyorsa false geçilmeli
Çıktı #
Count int
Seçilen toplam kurum sayısı
Value decimal
Seçilen filtrelere uyan ilk N kurumun senette yaptığı işlemlerin adet veya hacim değerini döner.
Örnek #
public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues) { var _getBroAgeTraSym = GetBrokerageAgencyTransactionsForSymbol(BrokerageEnum.BANK_OF_AMERICA_MLB.GetID(), Symbol, TransactionSide.Buy, TransactionDataField.Size, MoneyIncomePeriod.Daily, true); Debug("Bank OF America kurumunun Sembolde gerçekleştirdiği ALIŞ İŞLEMİ ADEDİ : " + (_getBroAgeTraSym ?? _getBroAgeTraSym.Value)); }