Stoploss olduktan sonra bar saydırma
- Soruldu
- Kategori
- Algoritmik Trading
- Görüntülenme
- 1.410 görüntülenme
- Durum
- Çözüldü
Matriks Ürünleri ile ilgili tüm sorularınız için bizlere buradan ulaşabilirsiniz. Daha önce sorulan soruları ve verilen cevapları ilgili sekmelerden ve arama üzerinden inceleyebilirsiniz. Sağ taraftaki kategoriler üzerinden İlgilendiğiniz özelliklerle ilgili soruları filtreleyebilirsiniz. Soru ve cevapları sosyal medyada paylaşabilirsiniz. Sorduğunuz ve cevapladığınız soruların ve yorumlarınızın aldığı oylar üzerinden puan kazanırsınız. Puan sistemine bağlı kampanyamızla ücretsiz kullanım avantajlarından faydalanabilirsiniz.
Kabul edilen cevap
Merhaba,
Sentetik emirler gerçekleştiğinde OnSyntheticOrderTriggered() methodu tetiklenmektedir.
OnSyntheticOrderTriggered() tetiklendiğinde aktif barın indeksi alınıp aşağıdaki örnekteki gibi OnDataUpdate() methodunda kontrol edilebilir.
Aşağıdaki yapı ile stoploss tetiklendiğinde andaki barın indeksini alıp 10 bar geçmesi kontrol edilmiştir..
int tetiklendigiBar=int.MinValue;
public override void OnDataUpdate(BarDataCurrentValues bd)
{
// alış koşulu
if (bd.LastUpdate.Close>bd.LastUpdate.Open &&
bd.LastUpdate.BarDataIndex >= tetiklendigiBar + 10 &&
LastOrderSide.Obj!=Side.Buy)
{
SendMarketOrder(Symbol,1,OrderSide.Buy);
TrailingStopLoss(Symbol,SyntheticOrderPriceType.Percent,2);
}
// satış koşulu
if (bd.LastUpdate.Close<bd.LastUpdate.Open &&
LastOrderSide.Obj!=Side.Sell)
{
SendMarketOrder(Symbol,1,OrderSide.Sell);
TrailingStopLoss(Symbol,SyntheticOrderPriceType.Percent,2);
}
}
public override void OnSyntheticOrderTriggered(SyntheticAlgoOrder sOrder)
{
if (sOrder.EnableOrderSending &&
sOrder.SyntheticAlgoOrderType == SyntheticAlgoOrderType.StopLoss)
{
var barDataModel = GetBarData();
tetiklendigiBar = barDataModel.BarDataIndexer.LastBarIndex;
Debug("Stoploss teteiklendi");
}
}
public override void OnOrderUpdate(IOrder order){
if(order.OrdStatus.Obj==OrdStatus.Filled){
tetiklendigiBar=int.MinValue;
}
}
Sitenin çalışması için gerekli çerezleri kullanıyoruz. Ziyaretleri anlamak için analitik çerezleri yalnızca onayınızla kullanırız. Çerez Politikası