0 beğenilme 0 beğenilmeme
292 kez görüntülendi

SendReplaceOrder ile limit emri güncelliyorum. Debug ekranında da güncellediğimi görüyorum. Ancak backtestte, alım ve satım işlemini verilen ilk limit emir ile yapıyor. Emir güncellemelerini hiç dikkate almıyor.
 

        string orderId_buy_1 = string.Empty;
        string orderId_sell_2 = string.Empty;

public override void OnDataUpdate(BarDataEventArgs barData)
        {
            decimal buyPrice = Math.Round(bollinger.BollingerDown.CurrentValue, 2);
            decimal sellPrice = Math.Round(bollinger.Bollingerup.CurrentValue, 2);

            if (orderId_buy_1 != string.Empty)
            {
                SendReplaceOrder(orderId_buy_1, buyPrice, BuyOrderQuantity);
                Debug("Alış emri güncellendi -> ID: " + orderId_buy_1);
            }
            if (orderId_sell_2 != string.Empty)
            {
                SendReplaceOrder(orderId_sell_2, sellPrice, SellOrderQuantity);
                Debug("Satış emri güncellendi -> ID: " + orderId_sell_2);
            }

            if (orderId_buy_1 == string.Empty)
            {
                orderId_buy_1 = SendLimitOrder(Symbol, BuyOrderQuantity, (OrderSide.Buy), buyPrice, ChartIcon.Buy);
                Debug("Alış emri gönderildi -> ID: " + orderId_buy_1);
            }
            if (orderId_sell_2 == string.Empty)
            {
                orderId_sell_2 = SendShortSaleLimitOrder(Symbol, SellOrderQuantity, sellPrice);
                Debug("Satış emri gönderildi -> ID: " + orderId_sell_2);
            }
               }

        public override void OnOrderUpdate(IOrder order)
        {
            if (order.OrdStatus.Obj == OrdStatus.Filled && order.CliOrdID == orderId_buy_1)
            {
                orderId_buy_1 = string.Empty;
                Debug("alış emri gerçekleşti -> ID: " + orderId_buy_1);

            }
            if (order.OrdStatus.Obj == OrdStatus.Filled && order.CliOrdID == orderId_sell_2)
            {
                orderId_sell_2 = string.Empty;
                Debug("satış emri gerçekleşti -> ID: " + orderId_sell_2);

            }
        }

Algoritmik Trading kategorisinde (14 puan) tarafından | 292 kez görüntülendi

Bu soruya cevap vermek için lütfen giriş yapınız veya kayıt olunuz.

Hoş geldiniz, Matriks Destek Platformu sizlere sorularınızın hızlıca cevaplanması için bir ortam sağlar. 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.



8,635 soru
8,589 cevap
4,821 yorum
19,779 kullanıcı