Fraktal Kopma-Sıkışmış - sayfa 2

 

Şu anda bitiş basamaklama "}" hatası alıyorum.


Ancak işlevleri yeniden kontrol ettim ve hepsi doğru şekilde işlendi.


Başka bir yol denedim ve aynı hatayı almaya devam ettim.

 
ZacharyRC :

Şu anda bitiş basamaklama "}" hatası alıyorum.


Ancak işlevleri yeniden kontrol ettim ve hepsi doğru şekilde işlendi.


Başka bir yol denedim ve aynı hatayı almaya devam ettim.


Hatayı buldum , boşver!
 
ZacharyRC :

Hey deVries:


Bu kadar çok pipten sonra başabaş noktasına bir değişiklik durdurma kaybı koymaya çalışırken, son kodumda sorunlarla karşılaşıyorum.


Göze batan bir hata görüyor musunuz???

Bunu tekrar okumanız gerekiyor: İşlev dönüş değerleri nelerdir? Onları nasıl kullanırım? OrderModify() ile neler olduğunu bilmek istemiyor musunuz? OrderSelect()'iniz başarısız olursa ne olur?

 
if ( OrdersTotal ()> 1 )
{
OrderSelect ( 0 ,SELECT_BY_POS,MODE_TRADES);
if (OrderType()==(OP_BUY)&&(Move.BE))
{

EA'nızın ticaretini almanın doğru yolu bu değil

0 konumunun EA'nızdan olduğundan emin olamazsınız, yönetmeniz gerekir

tüm açık işlemlerden geçmek için her zaman bir döngü kullanın ve ardından sahip olduğunuz yolu seçin

Sembolünüz() EA ticaret yapıyor ve EA'nızla verdiğiniz MAGICNUMBER

.

benim yolum şöyle

 

 for (i = OrdersTotal ()- 1 ; i >= 0 ; i--)         //always counting down checking trades
    {
     if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== false )         break ;     // if false we abort the loop
     if (OrderMagicNumber()!=MagicNumber || OrderSymbol()!= Symbol ()) continue ;   //if selected trade not symbol or magicnumber next one
 
RaptorUK :

Bunu tekrar okumanız gerekiyor: İşlev dönüş değerleri nelerdir? Onları nasıl kullanırım? OrderModify() ile neler olduğunu bilmek istemiyor musunuz? OrderSelect()'iniz başarısız olursa ne olur?


Bu gece kesinlikle tekrar okuyacağım, henüz tam olarak kavrayamadım.
deVries :

EA'nızın ticaretini almanın doğru yolu bu değil

0 konumunun EA'nızdan olduğundan emin olamazsınız, yönetmeniz gerekir

tüm açık işlemlerden geçmek için her zaman bir döngü kullanın ve ardından sahip olduğunuz yolu seçin

Sembolünüz() EA ticaret yapıyor ve EA'nızla verdiğiniz MAGICNUMBER

.

benim yolum şöyle

Geçen sefer bir for() döngüsü kullanıyordum ve birkaç hata yaptım ve bundan vazgeçtim. Tekrar deneyecek ve metni tekrar okuyacak.


teşekkürler beyler

 
RaptorUK :

Bunu tekrar okumanız gerekiyor: İşlev dönüş değerleri nelerdir? Onları nasıl kullanırım? OrderModify() ile neler olduğunu bilmek istemiyor musunuz? OrderSelect()'iniz başarısız olursa ne olur?


Bugün biraz yavaş hissediyorum! Buna izin verdikten sonra, MQL4 dilinin, mesaj panosu değil, hataları bulmak için en iyi arkadaş olabileceğini fark ettim.



TY Raptorİngiltere!

 
ZacharyRC :

Bugün biraz yavaş hissediyorum! Buna izin verdikten sonra, MQL4 dilinin, mesaj panosu değil, hataları bulmak için en iyi arkadaş olabileceğini fark ettim.

Kesinlikle, %100 doğru. :-)
 
deVries :

EA'nızın ticaretini almanın doğru yolu bu değil

0 konumunun EA'nızdan olduğundan emin olamazsınız, yönetmeniz gerekir

tüm açık işlemlerden geçmek için her zaman bir döngü kullanın ve ardından sahip olduğunuz yolu seçin

Sembolünüz() EA ticaret yapıyor ve EA'nızla verdiğiniz MAGICNUMBER

.

benim yolum şöyle

Ahhhh anlıyorum, bu benim işlemlerim arasında geçiş yapmama ve hangisinin hangisi olduğunu ve Sihirli Sayılarla eşleştiğini söylememe izin veriyor. Döngü şimdiye kadarki en iyi yoldur.

 
ZacharyRC :

Ahhhh anlıyorum, bu benim işlemlerim arasında geçiş yapmama ve hangisinin hangisi olduğunu ve Sihirli Sayılarla eşleştiğini söylememe izin veriyor. Döngü şimdiye kadarki en iyi yoldur.

Ne kadar çok kullanırsan, onunla yapmayı o kadar çok hile öğrenirsin....
 

Hala zorluklar var. Nedenini bulmak için hatalar yaptım.


Dergi Bildirdi:

1) Hata 4051=Yanlış Parametre

2) Siparişi Değiştirmek için Geçersiz Bilet

 //----------------------------------------------//
//-----------------EXITING ORDERS---------------//


for ( int i= OrdersTotal ()- 1 ; i>= 0 ;i--)
{
if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== false )   break ;


if (OrderMagicNumber()!=MagicNumber || OrderSymbol() != Symbol ()) continue ;

if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== true ) Print ( GetLastError (),i);
if (OrderType()==OP_BUY)
{

 if (Move.BE && StopLoss > 0 ) 
 {
   if (Bid - OrderOpenPrice() >= Point * StopLoss)
     {
       if (OrderStopLoss() < OrderOpenPrice() + Point * MoveStopTo) 
        {
                  OrderModify(OrderTicket(),OrderOpenPrice(), OrderOpenPrice() + Point * MoveStopTo, OrderTakeProfit(), 0 , Red);
                   Print ( "Cant Modify Order" + GetLastError (),i);
 }
  }
   }
    }
 else {
 
     if (Move.BE && StopLoss > 0 ) {
               if (OrderOpenPrice() - Ask >= Point * StopLoss)
                {
                   if (OrderStopLoss() > OrderOpenPrice() - Point * MoveStopTo)
                   {
                  OrderModify(OrderTicket(),OrderOpenPrice(), OrderOpenPrice() - Point * MoveStopTo, OrderTakeProfit(), 0 , Red);
                   Print ( "Cant Modify Order" + GetLastError (),i);
}
 }
  }
   }
    }