[UYARI, KONU KAPALI!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde. - sayfa 104

 

Ayın gün numarası siparişin kuyruklu yıldızına eklenir. Bu günün yorumları ile günde kaç siparişin (kapandığını) nasıl hesaplayabilirim?

Bunu nasıl uygulayacağımı anlayamıyorum.

yorum = Gün();

int OpenOrdersDayHistory(string sembolü, int tipi, int magic, string yorumu)
{
intn;
int f = 0;
int toplam = OrdersHistoryTotal();
için (n = toplam - 1; n >= 0; n--)
{
OrderSelect (n,SELECT_BY_POS,MODE_HISTORY);
if (OrderSymbol() == sembol && OrderType() == yazın && OrderMagicNumber() == magic && OrderComment() == yorum)
{
f++;
}
}
Print("Sipariş Sayısı = ",f,"");
dönüş(f);
}

 
Serega393
İşlevin arkasındaki yorumunuz bir dize mi yoksa tamsayı mı?
İşlev doğru yapılandırılmış gibi görünüyor. Net bir resim görmek için tüm gelen değişkenlerin bir çıktısını içeri koyun.
 
serega393 писал(а) >>

Ayın gün numarası siparişin kuyruklu yıldızına eklenir. Bu günün yorumları ile günde kaç siparişin (kapandığını) nasıl hesaplayabilirim?

Bunu nasıl uygulayacağımı anlayamıyorum.

yorum = Gün();

int OpenOrdersDayHistory(string sembolü, int tipi, int magic, string yorumu)
{
intn;
int f = 0;
int toplam = OrdersHistoryTotal();
için (n = toplam - 1; n >= 0; n--)
{
OrderSelect(n,SELECT_BY_POS,MODE_HISTORY);
if (OrderSymbol() == sembol && OrderType() == yazın && OrderMagicNumber() == magic && OrderComment() == yorum)
{
f++;
}
}
Print("Sipariş Sayısı = ",f,"");
dönüş(f);
}

comment = TimeDay (iTime(Symbol(),Period(),0)) ;
Ve sipariş gönderirken aynı şey!
 
StatBars >> :
Ve sipariş gönderirken aynı şey!

Böyle daha iyi:

   comment = TimeDay(TimeCurrent());
Ve daha hızlı, daha kolay ve daha güvenilir.
 

bool UseTF = doğru;


int başlangıç()
{

string yorum = TimeDay(TimeCurrent());

if (OpenOrdersDayHistory(Symbol(), OP_SELL, 123, yorum) > 0)
{
UseTF=yanlış;
Yazdır ("Hayır");
}
başka
{
UseTF=true;
Yazdır ("Evet");

}

if(UseTF==doğru)
{
int bilet = OrderSend(Symbol(), OP_BUY, 0.1, Sor, 3, 0, Ask+10*Puan, yorum, 123, 0, Yeşil);
}
dönüş(0);
}

int OpenOrdersDayHistory(string sembolü, int tipi, int magic, string yorumu)
{
intn;
int f = 0;
int toplam = OrdersHistoryTotal();
için (n = toplam - 1; n >= 0; n--)
{
OrderSelect (n,SELECT_BY_POS,MODE_HISTORY);
if (OrderSymbol() == sembol && OrderType() == yazın && OrderMagicNumber() == magic && OrderComment() == yorum)
{
f++;
}
}
Print("Sipariş Sayısı = ",f,"");
dönüş(f);
}

Al, dene. Tarihteki emirleri okumaz.

 

Herkese iyi günler.

Bekleyen siparişlerin açılmasını koda düzgün bir şekilde "çekmenin" bir yolu yoktur. Ders kitabı, bir yardım ve diğer okuma. Orada muhtemelen bir cevap var, ama anlamadım ...


Sorun şu. Maksimum ve minimum fiyatların arandığı bir dönem vardır - bu değerler iki global değişkene atanır. O zaman bu fiyata bekleyen bir emir açmanız gerekir. Fiyat noktasını çözemiyorum. Mevcut fiyatla aralığı doğru bir şekilde belirtmek için sürekli bir orman ortaya çıkıyor.

1.Soru - örneğin, mevcut çubuğun fiyat işlevi sabah 6'da neye benziyor?

2.Bir siparişi kapatırken bilet parametresi nasıl belirlenir?

Ya da daha önce açılmış iki emirden biri farklı şekilde nasıl kapatılır?

Böyle bağırmak zorundayım...


(int i=1; i<=SiparişToplam(); i++) için

{

if(OrderSelect(i,SELECT_BY_POS)==true)

{

int T=OrderTicket();

int Cur_Hour2=Saat(); // Saat cinsinden sunucu süresi

double Cur_Min2 =Dakika(); // Sunucu süresi dakika olarak

double Cur_time2=Cur_Hour2 + Cur_Min2/100; // Şimdiki zaman

uyarı(cur_time2);

if (Cur_time2>=Time_of_buy_sell_2)

SiparişKapat(T,1,Sor,3,Kırmızı);

}

dönüş; // başlangıçtan çık()


Lütfen çok sert yargılamayın :)

 
TheXpert писал(а) >>

Böyle daha iyi:

Ve daha hızlı, daha kolay ve daha güvenilir.

Katılıyorum, ama daha çok başka bir şeye odaklandım.

 
serega393 писал(а) >>

Al, dene. Tarihteki emirleri okumaz.

Her şey güzel okuyor. Kapattıktan sonra yorumunuzun ne olduğunu kontrol edin. Bazı brokerler, bir siparişi kapatırken girişlerini yoruma ekler.

 
int start()
{
   string comment = TimeDay(TimeCurrent());   
   if (OpenOrdersDayHistory(Symbol(), OP_BUY, 123, comment) <3)   
   {      
      UseTF = true;      
      Print("Yes");   
   }
   else   
   {      
      UseTF = false;      
      Print("No");   
   }    
   
   if (UseTF == true)   
   {      
      int ticket = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 3, 0, Ask+100*Point, comment, 123, 0, Green);   
   }
   return(0);
}

int OpenOrdersDayHistory(string symbol, int type, int magic, string comment)
{   
   int n;   
   int f = 0;   
   int total = OrdersHistoryTotal();    
   for (n = total - 1; n >= 0; n--)   
   {      
      OrderSelect(n,SELECT_BY_POS,MODE_HISTORY);
      Print(OrderSymbol() == symbol && OrderType() == type && OrderMagicNumber() == magic," ",StringFind(OrderComment(),comment,0)>=0);
      if (OrderSymbol() == symbol && OrderType() == type && OrderMagicNumber() == magic && StringFind(OrderComment(),comment,0)>=0)          
            f++;   
   }    
   Print("колл-во ордеров = ",f,"");   
   return(f);
} 
 
Beyler, belirli bir kâra ulaşıldığında tüm pozisyonları (ve kârsız olanları da) kapatan ve işlenmemiş tüm gecikmeleri ortadan kaldıran bir danışman söyleyebilir misiniz?
Neden: