HELP !!!! converter um indicador do MT4 para MT5. - página 9

 
o_o:

O código é executado em MT4/5

Pague para frente

Olexiy Polyakov:

As pessoas ajudam a plyz a refazer o indicador de nível de número redondo do MT4 sob MT5.

Não tenho condições de pagar pelo trabalho. Se você tiver uma pessoa amável, ficarei muito grato.


O indicadorKey_Levels.mq5, eu o experimentei. Funciona em mq4 e mq5. É muito confortável, você só precisa alterar a extensão do arquivo. Entretanto, quando é removido do gráfico, o indicador não remove todas as linhas horizontais traçadas por ele. Eu tive que adicionar o seguinte código ao mq4:

void OnDeinit(const int reason){ Comment(""); ObjectsDeleteAll(0,"Round"); }
 

Olá a todos. Por favor, ajude a refazer o indicador, meu cérebro é muito estúpido para tal tarefa (o indicador mostra o nome do par de moedas e o período de tempo no verso do gráfico).

p.s. a fonte do texto é"impacto".

obrigado de antemão :)

//+------------------------------------------------------------------+
//|                                                    Watermark.mq4 |
//|                                          Copyright © M00SE  2011 |
//|                                                                  |
//|                      W A T E R M A R K                           |
//|                                                                  |
//| This indicator will display a symbol watermark on the chart      |
//| background, showing the timeframe and symbol name in large font. |
//|                                                                  |
//| Version 1 - 16 Jun 2011                                          |
//|                                                                  |
//|                                                                  |
//| Instructions                                                     |
//|                                                                  |
//| Choose the symbol you're interested in and display it in a chart |
//| window at the appropriate timeframe. Load the Watermark          |
//| indicator and optionally choose font, size, colour, position etc.|
//| Additionally you may choose to add some custom text of your own, |
//| eg. web link, email address etc. in a tag field.                 |
//|                                                                  |
//| That's it!                                                       |
//| Hope you like it, MOOSE.                                         |
//|                                                                  |
//+------------------------------------------------------------------+

#property copyright "Copyright © M00SE  2011"

#property indicator_chart_window

//---- input parameters
extern int sidFontSize = 140;
extern string sidFontName = "Ariel";
extern string NoteRedGreenBlue = "Red/Green/Blue each 0..255";
extern int sidRed = 30;
extern int sidGreen = 30;
extern int sidBlue = 30;
extern int sidXPos = 30;
extern int sidYPos = 150;

extern bool tagDisplayText = true;
extern string tagText = "[Your Name Here]";
extern int tagFontSize = 20;
extern string tagFontName = "Tahoma";
extern int tagRed = 60;
extern int tagGreen = 30;
extern int tagBlue = 60;
extern int tagXPos = 600;
extern int tagYPos = 550;

//---- data
string SID = "Symbol";
int sidRGB = 0;
string TAG = "Tag";
int tagRGB = 0;
string tf;

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----

   switch(Period())
     {  
      case PERIOD_D1:
         tf="d1";
         break;
      case PERIOD_H1:
         tf="h1";
         break;
      case PERIOD_H4:
         tf="h4";
         break;
      case PERIOD_M1:
         tf="m1";
         break;
      case PERIOD_M15:
         tf="m15";
         break;
      case PERIOD_M30:
         tf="m30";
         break;
      case PERIOD_M5:
         tf="m5";
         break;
      case PERIOD_MN1:
         tf="mn1";
         break;
      case PERIOD_W1:
         tf="w1";
         break;
      default:
         tf="Unknown";
         break;
     }

     if(tagRed > 255 || tagGreen > 255  || tagBlue > 255 || sidRed > 255 || sidGreen > 255 || sidBlue > 255)
     {
       Alert("Watermark Red/Green/Blue components must each be in range 0..255");
     }   

     tagRGB = (tagBlue << 16); 
     tagRGB |= (tagGreen << 8);
     tagRGB |= tagRed;

     sidRGB = (sidBlue << 16); 
     sidRGB |= (sidGreen << 8);
     sidRGB |= sidRed;
      
//----
   return(0);
  }

//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----

   ObjectDelete(SID);
   ObjectDelete(TAG);
   
//----
   return(0);
  }

//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
{
   double chartHi, chartLo;
   double range;
   static double prevRange;
   
   chartHi = WindowPriceMax(0);
   chartLo = WindowPriceMin(0);
   range = chartHi - chartLo;

   // need only draw the watermark if the chart range has changed
   if(prevRange != range)
   {
      deinit();
      prevRange = range;
   
      watermark(SID, tf + Symbol(), sidFontSize, sidFontName, sidRGB, sidXPos, sidYPos);
      if(tagDisplayText && StringLen(tagText) > 0)
      {
         watermark(TAG, tagText, tagFontSize, tagFontName, tagRGB, tagXPos, tagYPos); 
      }
   }   
   return(0);
}

void watermark(string obj, string text, int fontSize, string fontName, color colour, int xPos, int yPos)
{
      ObjectCreate(obj, OBJ_LABEL, 0, 0, 0); 
      ObjectSetText(obj, text, fontSize, fontName, colour);
      ObjectSet(obj, OBJPROP_CORNER, 0); 
      ObjectSet(obj, OBJPROP_XDISTANCE, xPos); 
      ObjectSet(obj, OBJPROP_YDISTANCE, yPos);
      ObjectSet(obj, OBJPROP_BACK, true);
}
 

caras me ajudem a refazer o indicador no mt5, por favor, quantas vezes eu tentei, de jeito nenhum, eu ficaria grato pela vida)

 

Ajuda para converter o indicador MTF Fractal MQL4 para MQL 5


//+------------------------------------------------------------------+
//|                                                  MTF Fractal.mq4 |
//|                                         Copyright © 2014, TrueTL |
//|                                            http://www.truetl.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2014, TrueTL"
#property link      "http://www.truetl.com"
#property version "1.40"
#property indicator_chart_window
#property indicator_buffers 2

extern string  Version_140                      = "www.truetl.com";
extern int     Fractal_Timeframe                = 0;
extern int     Maxbar                           = 2000;
extern color   Up_Fractal_Color                 = Red;
extern int     Up_Fractal_Symbol                = 108;
extern color   Down_Fractal_Color               = Blue;
extern int     Down_Fractal_Symbol              = 108;
extern bool    Extend_Line                      = true;
extern bool    Extend_Line_to_Background        = true;
extern bool    Show_Validation_Candle           = true;
extern color   Up_Fractal_Extend_Line_Color     = Red;
extern int     Up_Fractal_Extend_Width          = 0;
extern int     Up_Fractal_Extend_Style          = 2;
extern color   Down_Fractal_Extend_Line_Color   = Blue;
extern int     Down_Fractal_Extend_Width        = 0;
extern int     Down_Fractal_Extend_Style        = 2;

double UpBuffer[], DoBuffer[], refchk, tempref, level;
int barc;

//+------------------------------------------------------------------+
//|                                                             INIT |
//+------------------------------------------------------------------+

int init() {

   SetIndexBuffer(0,UpBuffer);
   SetIndexStyle(0,DRAW_ARROW, DRAW_ARROW, 0, Up_Fractal_Color);
   SetIndexArrow(0,Up_Fractal_Symbol);
   SetIndexBuffer(1,DoBuffer);
   SetIndexStyle(1,DRAW_ARROW, DRAW_ARROW, 0, Down_Fractal_Color);
   SetIndexArrow(1,Down_Fractal_Symbol);
   
   return(0);
}

//+------------------------------------------------------------------+
//|                                                           DEINIT |
//+------------------------------------------------------------------+

int deinit() {
   for (int i = ObjectsTotal(); i >= 0; i--) {
      if (StringSubstr(ObjectName(i),0,12) == "MTF_Fractal_") {
         ObjectDelete(ObjectName(i));
      }
   }
   
   return(0);
}

//+------------------------------------------------------------------+
//|                                                            START |
//+------------------------------------------------------------------+

int start() {
   int i, c, dif;
   tempref =   iHigh(Symbol(), Fractal_Timeframe, 1) + 
               iHigh(Symbol(), Fractal_Timeframe, 51) + 
               iHigh(Symbol(), Fractal_Timeframe, 101);
   
   if (barc != Bars || IndicatorCounted() < 0 || tempref != refchk) {
      barc = Bars;
      refchk = tempref;
   } else
      return(0);
   
   deinit();
   
   if (Fractal_Timeframe <= Period()) Fractal_Timeframe = Period();
   
   dif = Fractal_Timeframe/Period();
   
   if (Maxbar > Bars) Maxbar = Bars-10;
   
   for(i = 0; i < Maxbar; i++) {
      if (iBarShift(NULL,Fractal_Timeframe,Time[i]) < 3) {
         UpBuffer[i] = 0;
         DoBuffer[i] = 0;
         continue;
      }
      UpBuffer[i] = iFractals(NULL,Fractal_Timeframe,1,iBarShift(NULL,Fractal_Timeframe,Time[i]));
      DoBuffer[i] = iFractals(NULL,Fractal_Timeframe,2,iBarShift(NULL,Fractal_Timeframe,Time[i]));
   }
   
   if (Extend_Line) {
      for(i = 0; i < Maxbar; i++) {
         if (UpBuffer[i] > 0) {
            level = UpBuffer[i];
            for (c = i; c > 0; c--) {
               if ((Open[c] < level && Close[c] > level) || (Open[c] > level && Close[c] < level)) 
                  break;
               if (Open[c] <= level && Close[c] <= level && Open[c-1] >= level && Close[c-1] >= level) 
                  break;
               if (Open[c] >= level && Close[c] >= level && Open[c-1] <= level && Close[c-1] <= level) 
                  break;
            }
            DrawLine ("H", i, c, level, Extend_Line_to_Background, Up_Fractal_Extend_Line_Color, Up_Fractal_Extend_Width, Up_Fractal_Extend_Style);
            if (Show_Validation_Candle) UpBuffer[i-2*dif] = level;
            i += dif;         
         }
      }
      
      for(i = 0; i < Maxbar; i++) {
         if (DoBuffer[i] > 0) {
            level = DoBuffer[i];
            for (c = i; c > 0; c--) {
               if ((Open[c] < level && Close[c] > level) || (Open[c] > level && Close[c] < level)) 
                  break;
               if (Open[c] <= level && Close[c] <= level && Open[c-1] >= level && Close[c-1] >= level) 
                  break;
               if (Open[c] >= level && Close[c] >= level && Open[c-1] <= level && Close[c-1] <= level) 
                  break;
            }
            DrawLine ("L", i, c, level, Extend_Line_to_Background, Down_Fractal_Extend_Line_Color, Down_Fractal_Extend_Width, Down_Fractal_Extend_Style);
            if (Show_Validation_Candle) DoBuffer[i-2*dif] = level;
            i += dif;
         }
      }
   }
   
   return(0);
}
//+------------------------------------------------------------------+
//|                                                        DRAW LINE |
//+------------------------------------------------------------------+

void DrawLine (string dir, int i, int c, double lev, bool back, color col, int width, int style) {
   ObjectCreate("MTF_Fractal_"+dir+i,OBJ_TREND,0,0,0,0,0);
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_TIME1,iTime(Symbol(),Period(),i));
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_PRICE1,lev);
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_TIME2,iTime(Symbol(),Period(),c));
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_PRICE2,lev);
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_RAY,0);
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_BACK,back);
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_COLOR,col);
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_WIDTH,width);
   ObjectSet("MTF_Fractal_"+dir+i,OBJPROP_STYLE,style);
}
 

Olá.

Se você puder, e a menos que seja muito difícil, por favor refaça o indicador mt5 a partir deste posto https://www.mql5.com/ru/code/15437

Engulfing
Engulfing
  • votos: 11
  • 2016.05.13
  • Vladimir Mametov
  • www.mql5.com
Индикатор отображается на ценовом графике в виде стрелок красного и зеленого цвета. Индикатор в первую очередь может быть полезен для трейдеров, использующих в своей работе свечной анализ. Потому что индикатор формирует сигналы по появлению на ценовом графике свечных фигур бычьего поглощения и медвежьего поглощения. В индикаторе...
 

Talvez alguém já tenha um? Necessidade de refazer as bandas de tma_centered_arr.mq5 mas sem redesenhar

Arquivos anexados:
 
Favor me ajudar a converter o indicador do terminal 4 para o terminal 5.
Arquivos anexados:
CCI_.mq4  5 kb
 
Olá a todos e bons lucros.

Encontrei umMT5 para MT4 Set File Converter - um script para MetaTrader 5https://www.mql5.com/ru/code/17493

Ordem de uso.

Infelizmente, eu não sou um programador, mas um bom usuário, francamente não entendo realmente como usar esta programulina corretamente escrita.

O arquivo caiu na pasta Arquivos, mas isso é o que fazer com ele abaixo escrito nihihi não entendeu.

Três parâmetros de entrada:

  • Arquivo - permite a conversão seletiva. O que fazer com este Arquivo, se criar uma pasta com este nome, então onde? Basta escrever os nomes dos arquivos que você deseja converter. Onde e onde escrevo os nomes dos arquivos que quero converter, ou seja, devo criar um arquivo de texto em uma pasta e escrever nele os nomes dos arquivos que quero converter?
  • Subdiretório - escreva o nome da subpasta onde você deseja salvar os arquivos. - Em que arquivo você criaria esta subpasta?
  • Output Directory - nome da pasta na qual os resultados serão salvos. - e esta pasta em que arquivo criar?

    Como executar este script para convertê-lo?

Desculpe pelo meu francês escrito em vermelho...
Sou grato a todos que me dirão como usar este script....
MT5 to MT4 Set File Converter
MT5 to MT4 Set File Converter
  • www.mql5.com
Этот скрипт конвертирует многочисленные файлы с расширением .set из формата MetaTrader 5 в формат MetaTrader 4. Это необходимый шаг в процессе оптимизации и запуска кросплатформенных торговых советников. MetaTrader 5 способен загружать файлы .set, созданные в MT4, при этом формат получающегося сохранения несовместим с MetaTrader 4. Этот скрипт...
 
btc.mmd:
Olá a todos e bons lucros.

Encontrei umMT5 para MT4 Set File Converter - um script para MetaTrader 5https://www.mql5.com/ru/code/17493

Ordem de uso.

Infelizmente eu não sou um programador, mas sou um bom usuário, francamente falando, não entendo realmente como usar este programador corretamente.

O arquivo está na pasta Arquivos, mas é isso que deve ser feito abaixo escrito nihihi não entendeu.

Três parâmetros de entrada:

  • Arquivo - permite a conversão seletiva. O que fazer com este Arquivo, se criar uma pasta com este nome, então onde? Basta escrever os nomes dos arquivos que você deseja converter. Onde e onde escrevo os nomes dos arquivos que quero converter, ou seja, devo criar um arquivo de texto em uma pasta e escrever nele os nomes dos arquivos que quero converter?
  • Subdiretório - escreva o nome da subpasta onde você deseja salvar os arquivos. - Em que arquivo você criaria esta subpasta?
  • Output Directory - nome da pasta na qual os resultados serão salvos. - e esta pasta em que arquivo criar?

    Como executar este script que converteu algo?

Desculpe pelo meu francês escrito em vermelho...
Sou grato a todos que me dirão como usar este script....

Ele converte arquivos .set de indicadores estratégicos


A julgar pelo código fonte, as instruções são as seguintes:

Testador de Estratégia:

1.MT5 menu, clique em Arquivo -> Abrir pasta de dados

2.Ir para a pasta Testador

3.Criar uma pasta Arquivos (se não existir)

4. criar aqui mais uma pasta, e seu nome será o mesmo que o valor do parâmetro Subdiretório. Por exemplo, TestSet.

5.No parâmetro Output Directory, nomeie uma pasta para converter para. Se ela não existir, a MT5 a criará.

6. Na pasta, criada no passo 4, coloque o arquivo .set do MT5.

7. Inicie o Teste de Estratégia com este indicador.

8. Na pasta do ponto 5, você encontrará o arquivo MT4 .set vil.


Gráfico real:

1.MT5 no menu pressione File -> Open data folder

2.Ir para a pasta Arquivos

3.aqui criar outra pasta e o nome será o mesmo que o valor do parâmetro de entrada do Subdiretório. Por exemplo, TestSet.

4.No parâmetro Output Directory, o nome da pasta a ser convertida. Se ela não existir, a MT5 a criará.

5. Na pasta, criada no passo 4, coloque o arquivo .set do MT5.

6. Inicie o Teste de Estratégia com este indicador.

7. Na pasta do ponto 5, você encontrará um conjunto MT4 .set.


Eu não testei o indicador em si, mas de acordo com o código ele deve funcionar assim

 

NÃO É PERMITIDA A DESCOMPILAÇÃO!!!