0 beğenilme 0 beğenilmeme
405 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 | 405 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.



9,623 soru
9,582 cevap
5,172 yorum
45,412 kullanıcı