0 beğenilme 0 beğenilmeme
160 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 | 160 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,137 soru
8,107 cevap
4,601 yorum
14,987 kullanıcı