0 beğenilme 0 beğenilmeme
292 kez görüntülendi
Strateji başlatıldığında, SendLimitEmir komutu ile gönderilen bir emrin 5 dk sonra gerçekleşmemiş ise iptali yada yeni fiyat veya miktar ile SendReplaceOrder fonksiyonu ile güncellenmesini nasıl sağlayabiliriz.

*** SendCancelOrder(order.CliOrdID) ile başarılı olamadım.

Mümkünse örneklendirerek yardımcı olabilirseniz sevinirim.
Algoritmik Trading kategorisinde (200 puan) tarafından | 292 kez görüntülendi

2 Cevaplar

0 beğenilme 0 beğenilmeme
En İyi Cevap
public override void OnTimer()
        {

            //TEKRAR EMİR GÖNDER

            var BekleyenEmirler = Orders.Where(x => DateTime.Now >= x.Value.TradeDate.AddSeconds(30) && x.Value.OrdStatus.Obj == OrdStatus.New);
            foreach (var emir in BekleyenEmirler)
            {
                var close = GetSelectedValueFromBarData(Symbol, OHLCType.Close);
                var roundedClose = FX_FiyatAyarla(close);
                SendReplaceOrder(emir.Key, roundedClose);
                Debug("Sembol: " + emir.Value.Symbol + " durumu: " + emir.Value.OrdStatus);
            }

        }

Limit emir ile gönderdiğimiz için viop kısmında fiyat yuvarlamak gerekiyor fakat bistte sanırım böyle bi durum yok

SendReplaceOrder(emir.Key, close);     

30 saniye sonra emiri close(güncel fiyatından) tekrar gönder bloğu
(402 puan) tarafından
tarafından seçilmiş
0 beğenilme 0 beğenilmeme
Eğer bist içinde evet yapılabilir örnek gönderebilirim,eğer kripto içinde binance SendReplaceOrder kabul etmiyor bekleyen emiri iptal edip güncel fiyattan tekrar gönderim sağlanıyor.Hangisine ihtiyacınız olduğunu söylerseniz daha iyi olur
(402 puan) tarafından
0 0
Cevabınız için teşekkür ederim, bist için sormuştum.
7,972 soru
7,951 cevap
4,536 yorum
13,128 kullanıcı