0 beğenilme 0 beğenilmeme
535 kez görüntülendi
Merhabalar,

Vadeli işlemler piyasasında alım emri (Long ve Short) emir için kullanılan komutlar nedir? Örnek olarak Endekste (F_XU030820) most stratejisine göre alım sinyali gelidiğinde  1 kontrat alım yapalım,sat sinyali geldiğinde elimideki long olan pozinyonu kapayalım. ve tekrar Short emir olarak yeni emir gönderelim. Nasıl yapabiliriz?
Algoritmik Trading kategorisinde (19 puan) tarafından | 535 kez görüntülendi

2 Cevaplar

2 beğenilme 0 beğenilmeme

        [Parameter(10)]   // longlarken 5 tane shortu kapatıp 5 tane long acacak
        public decimal BuyOrderQuantity;

        [Parameter(10)]   // shortlarken 5 tane longu kapatıp 5 tane short acacak
        public decimal SellOrderQuantity;
		

	public override void OnInit()
        {
            ....
	    SendOrderSequential(true); // al sat emirleri sırayla gönder
	    ....
           
        }

	public override void OnInitComplated()
        {
	    SendMarketOrder(Symbol, 5, OrderSide.Buy); // ilk olarak 5 tane long pozisyon açtık diyelim
        }
		
	public override void OnDataUpdate(BarDataEventArgs barData)
        {
            if (CrossAbove(mov, mov2)) // kısa periyotlu hareketli ortalama uzun periyotluyu aşağıdan yukarı kesince longla
            {
                SendMarketOrder(Symbol, BuyOrderQuantity, OrderSide.Buy);
                Debug("Alış Emri Gönderildi");
            }

            if (CrossBelow(mov, mov2))
            {
                SendMarketOrder(Symbol, SellOrderQuantity, OrderSide.Sell);
                Debug("Satış Emri Gönderildi");
            }
        }

buna benzer bir kod yazmalısınız.

(307 puan) tarafından
0 0
Merhabalar Süleyman, zaman ayırdığın için teşekkürler. "SendMarketOrder" ile short pozisyon alamıyorsun.

Sanırım ilgili komutu buldum. "SendShortSaleMarketOrder" açığa satış için kullanılacak komut bu.
0 0

Merhaba, endeks kontratı şortlayabiliyorum SendMarketOrder ile, denedim çalışıyor. ama benim stratejimde

SendOrderSequential(false); olarak setli.
0 0
SendMarketOrder(Symbol, SellOrderQuantity, OrderSide.Sell); 

Fonksiyonu @ilhan69 dediği gibi pozisyonunuz varsa satış, pozisyonunuz yoksa açığa satış yapar.

Açığa satış için SendShortSaleMarketOrder() fonksiyonu da kullanılabilir.

1 beğenilme 0 beğenilmeme
Merhaba. VİOP tarafı için SAT emri aynı zamanda = açığa sat emri olarak işlev gördüğü için, özel olarak bir şey yapmanız gerekmez.

Şöyle düşünün: Siz emri, her durumda SAT olarak göndereceksiniz. Pozisyonunuz var ise o kapanır. Yok ise açığa sat gerçekleşir. Ayrı ayrı satmanız da gerekmez.

Örnek olarak: Eğer manuel işlem yapıyorsanız ve 1 pozisyon alda iseniz, 2 sözleşme SAT emri gönderdiğinizde ve gerçekleştiğinde pozisyonunuz -1 olur.
(12,790 puan) tarafından
0 0
ilhan merhabalar, öncelikle ilgin için teşekkürler. Benim sorun IQ tarafında, sanırm MatriksPrime ile karıştırdın.
0 0
trader_x teşekkürler vakit ayırdığın için. Manuel değil  robot yazıyorum. Aslında yapmak istediğim şu; örneğin  İndikatör al sinyali verdiğinde 1 kontrat alıyorum sorun yok.Sat sinyali geldiğinde 1 kontrat sattığında pozisyon kapanıyor oda tmm. Ama akabinde tekrar bir pozisyonda açığa satması lazım ki shortlayım. yada Short pozisyondayım indikatör ala geçinde shortu kapatabiliyorum. ama bir adet fazladan longlaması lazım.
0 0
İlhan merhaba,

"Şöyle düşünün: Siz emri, her durumda SAT olarak göndereceksiniz. Pozisyonunuz var ise o kapanır. Yok ise açığa sat gerçekleşir. Ayrı ayrı satmanız da gerekmez.

Örnek olarak: Eğer manuel işlem yapıyorsanız ve 1 pozisyon alda iseniz, 2 sözleşme SAT emri gönderdiğinizde ve gerçekleştiğinde pozisyonunuz -1 olur."

demişsin. Burada AL & SAT emirlerinin tam olarak aynı fiyattan gönderildiği senaryoyumu konusuyoruz ?
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.



7,506 soru
7,510 cevap
4,405 yorum
8,688 kullanıcı