Kodlama yardımı - sayfa 715

 
TEAMTRADER :

Bu göstergedeki okları nasıl daha büyük bir boyuta getirebilirim lütfen?

TAKIM taciri

Bu sürümü kullan

 

Mladen,

bu işlevi mt5'e taşıyabilir miyiz?

Expert Advisor'da açık olan tüm pozisyonları kapatmam gerekiyor.

örneğin:

void cleanUp()
{

Alert ( "Clean Up=" + Symbol ());
for ( int x= OrdersTotal ()- 1 ;x>= 0 ;x--)
{
if ( OrderSelect (x, SELECT_BY_POS , MODE_TRADES )== false ) break ;
if ( OrderSymbol ()== Symbol ()) //&& OrderMagicNumber()== MAGICMA)
{
if ( OrderType ()== OP_BUY )
{
if ( OrderClose ( OrderTicket (), OrderLots (), Bid , 3 ,Red)== false )
{
Print ( GetLastError ());
}
}
if ( OrderType ()== OP_SELL )
{
if ( OrderClose ( OrderTicket (), OrderLots (), Ask , 3 ,Red)== false )
{
Print ( GetLastError ());
}
}
if ( OrderType ()== OP_SELLSTOP || OrderType ()== OP_BUYSTOP )
{

if ( OrderDelete ( OrderTicket ())== false )
{
Print ( GetLastError ());
}
}
}

}

}

 

 

void OnTick()
{

if(Hour()==16 && Min()==55 && DayOfWeek()==5)
cleanUp();

else  ExtExpert.OnTick();  

}


  
 
baraozemo :
Neler yapılabileceğini kontrol edecek (ancak yalnızca piyasa açıldığında - test amaçlı)
 

baraozemo :

Bu kodu mql5'e ürettim, çalışmalı mı?

 include <Trade\Trade.mqh>
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+ 


void cleanUP()
{
int ord_total= OrdersTotal ();
   if (ord_total > 0 )
     {
       for ( int i=ord_total- 1 ;i>= 0 ;i--)
        {
         ulong ticket= OrderGetTicket (i);
         if ( OrderSelect (ticket) && OrderGetString ( ORDER_SYMBOL )== Symbol () && PositionGetInteger ( POSITION_MAGIC )==Expert_MagicNumber)
           {
            CTrade *trade= new CTrade();
            trade. OrderDelete (ticket);
             delete trade;
           }
        }
      }
}


Mladen,

bu işlevi mt5'e taşıyabilir miyiz?

Expert Advisor'da açık olan tüm pozisyonları kapatmam gerekiyor.

örneğin:

void cleanUp()
{

Alert ( "Clean Up=" + Symbol ());
for ( int x= OrdersTotal ()- 1 ;x>= 0 ;x--)
{
if ( OrderSelect (x, SELECT_BY_POS , MODE_TRADES )== false ) break ;
if ( OrderSymbol ()== Symbol ()) //&& OrderMagicNumber()== MAGICMA)
{
if ( OrderType ()== OP_BUY )
{
if ( OrderClose ( OrderTicket (), OrderLots (), Bid , 3 ,Red)== false )
{
Print ( GetLastError ());
}
}
if ( OrderType ()== OP_SELL )
{
if ( OrderClose ( OrderTicket (), OrderLots (), Ask , 3 ,Red)== false )
{
Print ( GetLastError ());
}
}
if ( OrderType ()== OP_SELLSTOP || OrderType ()== OP_BUYSTOP )
{

if ( OrderDelete ( OrderTicket ())== false )
{
Print ( GetLastError ());
}
}
}

}

}

 

 

void OnTick()
{

if(Hour()==16 && Min()==55 && DayOfWeek()==5)
cleanUp();

else  ExtExpert.OnTick();  

}


  
 

Bay MLADEN:

grafiğe ekler misin

saygınlık

Dosyalar:
ADX MTF.mq4  17 kb
 
mladen :
Neler yapılabileceğini kontrol edecek (ancak sadece piyasa açıldığında - test amaçlı)

İşlevselliği kontrol etmek için Mt5 kodları


//#include <Trade\Trade.mqh>
void CloseOpenedOrdersTest1()
{
int ord_total= OrdersTotal ();
   if (ord_total > 0 )
     {
       for ( int i=ord_total- 1 ;i>= 0 ;i--)
        {
         ulong ticket= OrderGetTicket (i);
         if ( OrderSelect (ticket) && OrderGetString ( ORDER_SYMBOL )== Symbol () && PositionGetInteger ( POSITION_MAGIC )==Expert_MagicNumber)
           {
            CTrade *trade= new CTrade();
            trade. OrderDelete (ticket);
             delete trade;
           }
        }
      }
     }

//#include <Trade\Trade.mqh>
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void CloseOpenedOrdersTest2()
  {
MqlTradeRequest req = { 0 };
   MqlTradeResult   res = { 0 };

   int orders = OrdersTotal ();
   req.action = TRADE_ACTION_REMOVE ;

   for ( int i = orders - 1 ; i >= 0 ;i--)
     {
     req.order  = OrderGetTicket (i);
       if ( OrderGetString ( ORDER_SYMBOL ) == _Symbol )
        {
         ResetLastError ();
         if (! OrderSend (req,res))
          {
           Print ( "Fail to delete ticket " ,req.order  , ": Error " , GetLastError (), ", retcode = " ,res.retcode);
          }
        }
     }
   }
 

bay mladen:

neden bu sayıyı değiştirdiğimde grafikte herhangi bir şey oluyor?

saygınlık

 
bilbao :

bay mladen:

neden bu sayıyı değiştirdiğimde grafikte herhangi bir şey oluyor?

saygınlık

Çünkü yalnızca "width" parametresi atlandığında kullanılan değerdir.

ButtonCreate() çağrısını kontrol edin ve fonksiyon çağrıldığında hangi değerin iletildiğini görün

 
mladen :

Çünkü yalnızca "width" parametresi atlandığında kullanılan değerdir.

ButtonCreate() çağrısını kontrol edin ve fonksiyon çağrıldığında hangi değerin iletildiğini görün

SAYGINLIK

 

Ynt: MT4 strateji test cihazı ve mtf ile ilgili soru

EA'mda Mladen'in MACD mtf göstergelerinden birini kullanıyorum (bunu aramak için iCustom kullanarak). Bir exe dosyasıdır. EA 5 dakikada çalışır ancak MACD göstergesi 15 dakikaya ayarlanır. Strat test cihazında çekmeyeceğini biliyorum. Diğer tüm göstergelerin doğru şekilde çizilmesi için strat test cihazındaki MACD mtf göstergesinin çizimini kapatmanın bir yolu var mı? Herhangi bir yardım için teşekkürler.

Neden: