MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1658

 
artem artem MACD ile aynı bölgeye geri döner. Ve lojna 4 kez teyit edilecek ve sipariş 4. mumda açılmalıdır. Dosyayı daha kolay anlaşılması için ekledim.


SanAlex , MACD çubuklarını ve hızlı olanın yavaş olanı nasıl geçtiğini net bir şekilde görebilmeniz için yakınlaştırabilir misiniz? Ve zar zor görebiliyorum

denemek

 #define MagicNumber   122122
extern string s1             = "Trading options" ;
extern double Lot            = 0.01 ;     // размер лота 0 - авт.расчет
extern double StopLoss       = 40 ;     // стоплосс
extern double TakeProfit     = 10 ;     // тейкпрофит
extern double TrailStop      = 21 ;     // уровень без убытка
extern int     Trailing       = 0 ;       // трейлинг стоп 1 вкл. 0 выкл.
extern int     Breakeven      = 0 ;       // перенос стоп лосса в без убыток
extern string s2             = "Day & Hour" ;
extern int     HrStart        = 0 ;       // время начала торговли
extern int     HrEnd          = 23 ;     // время окончания торговли
extern int     Monday         = 1 ;       // Понедельник 1 вкд. 0 выкл.
extern int     Tuesday        = 1 ;       // Вторник
extern int     Wednesday      = 1 ;       // Среда
extern int     Thursday       = 1 ;       // Четверг
extern int     Friday         = 1 ;       // Пятница
//+------------------------------------------------------------------+
// параметры индикаторов
double MovingPeriodLw        = 5 ;      
double MovingPeriodS1        = 75 ;
double MovingPeriodS2        = 85 ;
double StopLevel;
double TrailStep             = 3 ;       // шаг трейлинг стопа
bool OrderBuy = true , OrderSell = true , Order = false , Init = true ;
int timeprev = 0 , Slip = 3.0 , start, cnt;

//+------------------------------------------------------------------+
//| Init function                                                    |
//+------------------------------------------------------------------+
void OnInit ()
{
   if ( Digits == 3 || Digits == 5 ) { // Пересчет для 5-ти знаков                                                    
      TakeProfit *= 10 ;
      TrailStop *= 10 ;
      TrailStep *= 10 ;
      StopLoss *= 10 ;
      Slip *= 10 ;
   } 
   return ; 
}
//+------------------------------------------------------------------+
//| Start function                                                   |
//+------------------------------------------------------------------+
void start()
{
   StopLevel = MarketInfo( Symbol (), MODE_STOPLEVEL); 
   if (CheckForOpen()!=start)
     {start=CheckForOpen(); cnt= 0 ;}
   else
     {cnt+= 1 ;}
   // Определение направления пересечения мувингов
//   if (Init) InitMetod(); 
   
   // Трейлинг стоп открытых позиций
   if (Trailing != 0 ) RealTrailOrder(TrailStop, TrailStep, StopLevel, MagicNumber);
   
   // Ожидание нового бара на графике
   if (timeprev == Time[ 0 ]) return ;
   timeprev = Time[ 0 ];

   if (cnt== 3 )
     {
       // Открытие ордера по методу Пуриа
       if (CheckForOpen()== 0 && OrderBuy== true ) // Если сигнал для покупок 
        {
         if ( OrderSend ( Symbol (),OP_BUY,Lots(),Ask,Slip,Bid-StopLoss* Point ,Ask+TakeProfit* Point , "" ,MagicNumber, 0 ,Blue))
           {OrderBuy= false ; Print ( "BUY OK" );}
        } 
       if (CheckForOpen()== 1 && OrderSell== true ) // Если сигнал для продаж 
        {
         if ( OrderSend ( Symbol (),OP_SELL,Lots(),Bid,Slip,Ask+StopLoss* Point ,Bid-TakeProfit* Point , "" ,MagicNumber, 0 ,Red))
           {OrderSell= false ; Print ( "SELL OK" );}
        }
     }   
  }
//+------------------------------------------------------------------+
//| Check for open order conditions                                  |
//+------------------------------------------------------------------+
int CheckForOpen() // Открытие ордера по методу Пуриа
  {
   double malw,mas1,mas2,macd;
   int     res=- 1 , buy= 0 , sell= 0 ;
   // Считывание параметров индикаторов 3 свечи (4ой)
   malw= iMA ( NULL , 0 ,MovingPeriodLw, 0 , MODE_EMA , PRICE_CLOSE , 3 );
   mas1= iMA ( NULL , 0 ,MovingPeriodS1, 0 , MODE_LWMA , PRICE_LOW , 3 );
   mas2= iMA ( NULL , 0 ,MovingPeriodS2, 0 , MODE_LWMA , PRICE_LOW , 3 );
   macd= iMACD ( NULL , 0 , 15 , 26 , 1 , PRICE_CLOSE ,MODE_MAIN, 3 );
   if (malw>mas1&&malw>mas2&&macd> 0 ) {buy+= 1 ; sell= 0 ;}
   if (malw<mas1&&malw<mas2&&macd< 0 ) {buy= 0 ; sell+= 1 ;}
   // Считывание параметров индикаторов 2 свечи (3ей)
   malw= iMA ( NULL , 0 ,MovingPeriodLw, 0 , MODE_EMA , PRICE_CLOSE , 2 );
   mas1= iMA ( NULL , 0 ,MovingPeriodS1, 0 , MODE_LWMA , PRICE_LOW , 2 );
   mas2= iMA ( NULL , 0 ,MovingPeriodS2, 0 , MODE_LWMA , PRICE_LOW , 2 );
   macd= iMACD ( NULL , 0 , 15 , 26 , 1 , PRICE_CLOSE ,MODE_MAIN, 2 );
   if (malw>mas1&&malw>mas2&&macd> 0 ) {buy+= 1 ; sell= 0 ;}
   if (malw<mas1&&malw<mas2&&macd< 0 ) {buy= 0 ; sell+= 1 ;}
   // Считывание параметров индикаторов 1 свечи (2ой)
   malw= iMA ( NULL , 0 ,MovingPeriodLw, 0 , MODE_EMA , PRICE_CLOSE , 1 );
   mas1= iMA ( NULL , 0 ,MovingPeriodS1, 0 , MODE_LWMA , PRICE_LOW , 1 );
   mas2= iMA ( NULL , 0 ,MovingPeriodS2, 0 , MODE_LWMA , PRICE_LOW , 1 );
   macd= iMACD ( NULL , 0 , 15 , 26 , 1 , PRICE_CLOSE ,MODE_MAIN, 1 );
   if (malw>mas1&&malw>mas2&&macd> 0 ) {buy+= 1 ; sell= 0 ;}
   if (malw<mas1&&malw<mas2&&macd< 0 ) {buy= 0 ; sell+= 1 ;}
   // Считывание параметров индикаторов 0 свечи (1ой)
   malw= iMA ( NULL , 0 ,MovingPeriodLw, 0 , MODE_EMA , PRICE_CLOSE , 0 );
   mas1= iMA ( NULL , 0 ,MovingPeriodS1, 0 , MODE_LWMA , PRICE_LOW , 0 );
   mas2= iMA ( NULL , 0 ,MovingPeriodS2, 0 , MODE_LWMA , PRICE_LOW , 0 );
   macd= iMACD ( NULL , 0 , 15 , 26 , 1 , PRICE_CLOSE ,MODE_MAIN, 0 );
   if (malw>mas1&&malw>mas2&&macd> 0 ) {buy+= 1 ; sell= 0 ;}
   if (malw<mas1&&malw<mas2&&macd< 0 ) {buy= 0 ; sell+= 1 ;}
   
   if (buy < 4 )  OrderBuy= true ; 
   if (sell< 4 )  OrderSell= true ;
   if (buy == 4 ) { res= 0 ; OrderSell= true ;} 
   if (sell== 4 ) { res= 1 ; OrderBuy = true ;}
   return (res);
  }
 
MakaeFX, şimdi nedense 4. onay mumundan değil, aslında 7. mumdan açılıyor. Ekli test cihazından ekran görüntüsü.
Dosyalar:
 
artem artem # :

SanAlex , MACD çubuklarını ve hızlı olanın yavaş olanı nasıl geçtiğini net bir şekilde görebilmeniz için yakınlaştırabilir misiniz? Ve zar zor görebiliyorum

ama benim oraya eklediklerim - Uzmanın amacı farklıdır. Amaç, tüm açık çiftler için toplam karı toplamak ve tüm uzmanları kapatmaktır.

Ekran görüntüsü 2021-10-09 192219

Ekran görüntüsü 2021-10-09 192331

Dosyalar:
 
artem artem # :
MakaeFX, şimdi nedense 4. onay mumundan değil, aslında 7. mumdan açılıyor. Ekli test cihazından ekran görüntüsü.
Danışman dosyanızı gönderin, test cihazına bir göz atacağım
 
SanAlex , sonuç olarak, uygulamak istediğim şey daha da iyi olacak + Bunu birkaç gündür yapıyorum ve temel olarak doğru kodun nasıl görünmesi gerektiğiyle ilgileniyorum. Ve gelecek için çok faydalı olacak ve danışman gerçekten çok iyi olacak. Ama senin versiyonun iyi, aleyhine bir şey diyemem
 
MakarFX , ekli danışman
Dosyalar:
 
artem artem # :
MakarFX , ekli danışman
MetaEditor'un hangi yapısı?
 
tam olarak MetaEditor - sürüm 5.00 yapı 2382
 
artem artem # :
tam olarak MetaEditor - sürüm 5.00 yapı 2382

Gönderdiğin dosyayı nasıl derlediğin belli değil...

Deneyin ve ihtiyacınız olanı ekleyin

Dosyalar:
artem.mq4  13 kb
 

MakarFX , ve tüm keneleri test edersem bu normaldir - 08/01/21'den itibaren. 09/03/21 tarihine kadar. - sonra 46 sipariş

ve eğer test sadece aynı dönem için açılış fiyatlarına dayanıyorsa - 29 sipariş?

+ birkaç emir, eğer keneler tarafından açıldıysa, açılış fiyatından olmadığı açıktır. gösteren bir ekran görüntüsü ekledim

Dosyalar:
Neden: