[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 475

 
Bir seferde birden fazla satın alma siparişi olmayacak mı?
 
dkfl.zrjdktdbx :
Teşekkürler!!!

İşte başlangıç bağlantısı - sonra her şey, IMHO.
 
Ivn :

açıklığa kavuştur lütfen

Analitik parçanın çalışması için katı bir şekilde belirlenmiş bir zaman dilimi kullanılır. Veya zaman dilimleri
 
Yani, düşündüm, belki biraz azgın ..
 int BUY;
 for ( i= OrdersTotal ();i> 0 ;i--){ OrderSelect (i- 1 ,SELECT_BY_POS ); if ( OrderSymbol ()== Symbol ()&& OrderMagicNumber ( )==????){
if ( OrderType ( )==OP_BUY){BUY++;}}} 
   if ( BUY> stsBUY) { //Alert ("NashlY BUY " );
   for ( i= OrdersTotal ();i> 0 ;i--){ OrderSelect (i- 1 ,SELECT_BY_POS );
if ( OrderMagicNumber ( )==???? && OrderSymbol ()== Symbol ()&& OrderType ( ) ==OP_BUYSTOP) {    
 OrderDelete ( OrderTicket ( ) ); 
  stsBUY=BUY;   Alert ( "OrderDelete-OP_BUYSTOP" ,   GetLastError ( ) );      }

if ( OrderMagicNumber ( )==???? && OrderSymbol ()== Symbol ()&& OrderType ( ) ==OP_BUYLIMIT) {    
 OrderDelete ( OrderTicket ( ) ); 
  stsBUY=BUY;   Alert ( "OrderDelete-OP_BUYSTOP" ,   GetLastError ( ) );      }


}}
Hayır, bu tam olarak doğru değil, görünüşe göre, bir satın alma emri tespit edildiğinde, tüm mevduatlar kaldırılacak.. Tüm satın alma mevduatları. stsBUY başlamadan önce ayarlanmalıdır. Hataları kontrol etmedi.
 
Vinin :

Analitik parçanın çalışması için katı bir şekilde belirlenmiş bir zaman dilimi kullanılır. Veya zaman dilimleri

"Balığı" analiz için bırakır mısınız, yorumlar varsa minnettar olurum
 
dkfl.zrjdktdbx :
Bu yüzden, belki biraz azgın buldum.. Hayır, bu tam olarak doğru değil, görünüşe göre, bir satın alma emri bulunduğunda, tüm mevduatlar kaldırılacak .. Tüm satın alma mevduatları. stsBUY başlamadan önce ayarlanmalıdır. Hataları kontrol etmedi.


Kodu daha iyi yazmalıydın. Hatalar yok

Ve mantık kötü

 
Ivn :

"Balığı" analiz için bırakır mısınız, yorumlar varsa minnettar olurum

En azından ders kitabını biraz okumalısın ki “iki kere iki” kaç olur diye sorma.

 
FelixFX :

En azından ders kitabını biraz okumalısın ki “iki kere iki” kaç olur diye sorma.


Önemli bir yorumla tartışmıyorum, ama bunu anlasaydım, sormazdım, mantıklı mı?,

yani, göstergelerde zaman dilimlerinin belirtildiği algoritmada, bunları açıkça belirtiyoruz.

Doğru şekilde?

o zaman bana şunları açıkla....

danışman - stokastiği geçmek, bir ticarete girmek. euro dolar çifti, zaman dilimi 30.

işte algoritma

int başlangıç()
{
Yeniler(); // Veriyi güncelle
Sembol=Sembol();

x1=x;
y1=y;

x=iStochastic( NULL,0,5,3,3,MODE_SMA,1,0,0); // 0 barda stokastik ana hattın değeri
y=iStochastic( NULL,0,5,3,3,MODE_SMA,1,1,0); // 0 barda stokastik sinyal hattının değeri
Uyarı ("stokastik ana",x);
Uyarı ("stokastik sinyal", y);

//---- sinyal ve ana hatların kesişimi
if (y < x && y1> x1) // Doğrulamayı Kontrol Et
{
f=1; // işaretle
}
//------------------------------------------------ --------------------
if (y > x && y1< x1) // Aşağı Geçiş Kontrolü
{
f=2; //Bayrak aşağı
}
//----Ana çizginin 20. satırın altından üstüne kesişimi kontrol ediliyor
if (f==1 && x1<20 && x>= 20)
{ if (Ticket > 0) // sipariş varsa kaldırın
SiparişKapat(Ticket,Lts,Bid,10);
SL=Teklif - Kaybı Durdur*Noktası; // SL açık hesapla.
TP=Teklif + Kâr Al*Puan; // TP açık hesapla.
Alert("Satın Alım Açmaya Çalışıyorum. Cevap Bekleniyor..");
OrderSelect(Bilet, SELECT_BY_TICKET);
if(OrderCloseTime()>0 || !OrderSelect(Ticket, SELECT_BY_TICKET))
{

Ticket=OrderSend(Symb,OP_BUY,Lts,Ask,3,SL,TP);//Open Buy
}

if (Bilet > 0) // Başarılı :)
{
Alert("Sipariş açık",Bilet);
dönüş;
f=0; // bayrağı sıfırla
}

}
//----ana çizginin kesişimi 80. satırın üstünden altına kontrol ediliyor
if (f==2 && x1>80 && x<= 80)
{ if (Bilet > 0)
SiparişKapat(Bilet,Lts,Sor, 10); // sipariş varsa kaldır
SL=Sor + StopLoss*Puan; // SL açık hesapla.
TP=Sor - Kâr Al*Puan; // TP açık hesapla.
Alert("Sat açmaya çalışıyorum. Cevap bekleniyor..");
OrderSelect(Bilet, SELECT_BY_TICKET);
if(OrderCloseTime()>0 || !OrderSelect(Ticket, SELECT_BY_TICKET))
{
Ticket=OrderSend(Symb,OP_SELL,Lts,Bid,3,SL,TP);//Open Buy
}
if (Bilet > 0) // Başarılı :)
{
Alert("Sipariş açık",Bilet);
dönüş;
f=0; // bayrağı sıfırla
}

}


dönüş(0);
}

çalıştırırsak, danışman yarım saat içinde emirleri açıp kapatacak, yani 9.04'te açılacak ve 9.05'te kapanacak. 09.06'da tekrar açılıyor. ve 9.07'de kapatın, vb. ve bir yönde.

Bu neden oluyor?

Samimi olarak.

 
sss2019 :
BUYLIMIT ve BUYSTOP açık iki emrim varsa, BUYLIMIT tetiklendiğinde BUYSTOP'u kaldırmam gerekiyor ve bunun tersi de geçerli. Lütfen bana bu koşulun nasıl karşılanabileceğini söyler misiniz?

Aslında mantık şöyle olmalı:

1. İki bekleyen emir varsa ve tek bir pozisyon yoksa, bu bekleyen emirlerin biletlerini değişkenlerde hatırlayın.

2. Bekleyen bir SellStop varsa ve bekleyen BuyStop yoksa, bir Buy pozisyonu varsa, son açık Buy pozisyonunun biletini ve kaydedilen BuyStop biletini karşılaştırın.

Eşitlerse, BuyStop bir market Buy'a dönüştürülmüştür -> bekleyen bir SellStop varsa, silin.

3. Bekleyen bir BuyStop varsa ve bekleyen bir SellStop yoksa, bir Satış pozisyonu varsa, son açık Satış pozisyonunun biletini ve kaydedilen SellStop biletini karşılaştırın.

Eşitlerse, SellStop bir piyasa Satışına dönüştürülmüştür --> bekleyen bir BuyStop varsa, onu silin.

Bunun gibi bir şey... bu sadece mantığın bir taslağı. Hala işlevler edinmesi gerekiyor.

 
Afedersiniz, benim, hızlı bir şekilde.. Aslında evet, benim hatam, yanlış bozkırda. Gerekli olurdu, tarihteki emirleri gözden geçirmek, sonuncusunu bulmak ve ... ve ... Hayır .. Ama gerçekten, çözemiyorum ..
Neden: