Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
#OrderType() dize - Aç
Aşağıdaki kod bana Sell OrderType için ' 1 ' veriyor ancak OrderType'ın bunlardan birine 'Sat, Buy vb.' sokması gerekiyor, sayısal almak istemiyorum.
Yararlı bir yoruma ihtiyacım var, lütfen, teşekkürler.
Bir geçiş komutu kullanın.
{
case OP_SELL :
break ;
case OP_BUY :
break ;
}
Bir geçiş komutu kullanın.
İşleri daha da basitleştirmek istiyorsanız #define yönergesini de kullanabilirsiniz:
#define sell OP_SELL
if ( OrderType ()==sell)
İşleri daha da basitleştirmek istiyorsanız #define yönergesini de kullanabilirsiniz:
Bay William'dan pip ve nokta kodları için hangisinin kopyalandığını zaten kullanıyorum.
Bu yüzden yorumunuzdan sonra biraz araştırdım, sanırım herhangi bir senaryomda kullanabilirim.
Faydalı yorumunuz için teşekkürler.
Bir geçiş komutu kullanın.
Çok teşekkürler dostum.
Bu EA'larım için Switch Operator'ü ilk kez deniyorum.
Yani bu konuda biraz daha öğrendiğimi söylemek isterim ama bu operatör için deneyimim yok.
Test EA'larımda denemeden önce sadece sormam gerekiyor, yani aşağıdaki kodu kullanabilir miyim, lütfen? (benim test ea'm zaten 500 satıra sahip - ve OrderType() 'ın string'e dönüştürülmesi için kafam karışacak)
{
switch ( OrderType () )
{
case 0 : ObjectCreate ( ... name + " Buy" ... );
ObjectSetInteger (chart_ID,name + " Buy" , OBJPROP_COLOR ,clr);
// ...
break ;
case 1 : ObjectCreate ( ... name + " Sell" ... );
// ...
break ;
}
}
Şimdiden teşekkürler.
// --- ikinci kez düzenlendi
Belki endişem net değil.
Bu sorun için zaten çok zaman harcadım gerçekten bu operatörü oynuyorum ama sonuç yok.
Aşağıdaki kod bana sayısal verir.
Print ( "OrderType: " , IntegerToString ( OrderType () ) );
// EURAUD,M30: OrderType: 0
Ama sonucun altında kalmaya çalışıyorum.
Sadece faydalı bir yoruma ihtiyacım var.
Bana yardım eder misin ( / bana tavsiye verir misin ), lütfen?
İD
Değer
Tanım
OP_BUY
0
satın alma işlemi
OP_SELL
1
satış işlemi
{
case 0 :
Print ( "OrderType: buy" );
break ;
case 1 :
Print ( "OrderType: sell" );
break ;
}
veya
{
Print ( "OrderType: buy" );
}
if ( OrderType ()== 1 )
{
Print ( "OrderType: sell" );
}
@Marco çok teşekkürler.
Sonunda anladım ama " Dönüştürme İşlevlerinden " bir kod yazacağımı bekliyordum... yanlış beklentim kafamı karıştırıyordu.
Şu anda 3 "HLine" nesnesi kullanıyorum, şimdi bunu her iki durum için de kopyaladım ( 0 ve 1 ). Şimdiye kadar iyi çalışıyor.
Ayrıca " Order Properties " 6 değere sahip, bu yüzden aynısını uygulamak istiyorum ( örneğin nesne, renk, stil, genişlik vb. ) Print fonksiyonunu 0, 2, 4'e.
S: Aşağıdaki yöntemi kullanabilir miyim?
(Sadece örneğin yazdırma işlevi )
{
case 0 : Print ( "OrderType: buy" );
// ...
break ;
case 2 : Print ( "OrderType: buy" );
// ...
break ;
case 4 : Print ( "OrderType: buy" );
// ...
break ;
}
Şimdiden çok teşekkürler!
Hayır çünkü değerler:
İD
Değer
Tanım
OP_BUY
0
satın alma işlemi
OP_SELL
1
satış işlemi
OP_BUYLIMIT
2
Limit bekleyen sipariş satın al
OP_SELLLIMIT
3
Satış limiti bekleyen emir
OP_BUYSTOP
4
Bekleyen durdurma emrini satın al
OP_SELLSTOP
5
Satış durdurma emri
Yani 2. durum ve 4. durum OP_BUY'a eşit değil
Bunlar OP_BUYLIMIT ve OP_BUYSTOP olduğundan farklı şeylerdir.
Demek istediğin bu değilse ama şunu söylemek açıklığa kavuşur
{
case 0 : Print ( "OrderType: buy" );
// ...
break ;
case 2 : Print ( "OrderType: buy Limit" );
// ...
break ;
case 4 : Print ( "OrderType: buy Stop" );
// ...
break ;
}
Hayır çünkü değerler:
Yani 2. durum ve 4. durum OP_BUY'a eşit değil
#OrderType() dizgisi - Kapalı
En son yorumunuzdan sonra, davanın 0, 2, 4'ünü birleştiremeyeceğimi hissediyorum.
Zaman ayırdığınız ve yardımlarınız için @Marco vd Heijden'e teşekkürler.