Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 232

 
Olá a todos!!! Sou um principiante. Quero perguntar: Quando compenso uma EA, recebo a seguinte mensagem de erro: 'StopLoss' - declaração sem tipo.

Aqui está o código:

//--- Para trabalhar com corretores usando citações de 3 e 5 dígitos,
//--- multiplicar por 10 os valores de SL e TP
StopLoss = STP;-e É ONDE MODIFICAR QUE ??????
TakeProfit = TKP;
if(_Digitos===5 || _Digitos===3)
{
SL = SL*10;
TP = TP*10;

}

Algum conselho?

 
vyacheslavovich:
Olá a todos!!! Sou um principiante. Quero perguntar: Ao compilar a EA, entro em erros:'StopLoss' - declaração sem tipo.
Isto significa que a variável StopLoss não foi declarada antes.
 
vyacheslavovich:
Olá a todos!!! Sou um principiante. Quero perguntar: Quando compenso uma EA, recebo a seguinte mensagem de erro: 'StopLoss' - declaração sem tipo.

Aqui está o código:

//--- Para trabalhar com corretores usando citações de 3 e 5 dígitos,
//--- multiplicar por 10 os valores de SL e TP
StopLoss = STP;-e É ONDE MODIFICAR QUE ??????
TakeProfit = TKP;
if(_Digitos===5 || _Digitos===3)
{
SL = SL*10;
TP = TP*10;

}

Algum conselho?

   double StopLoss = STP;
   double TakeProfit = TKP;

Isto deveria ser melhor.

 
Boa tarde. Tenho-me debatido com a execução de ficheiros externos durante o segundo dia. Pode dizer-me o que está errado?
#import "shell32.dll"
   int ShellExecuteA(int hwnd, string lpOperation, string lpFile,string lpParameters,string lpDirectory,int nShowCmd);
#import
void OnStart()
  {
   ShellExecuteA(CHART_WINDOW_HANDLE,"open","F:\\222.mp3", NULL,NULL,1);
  }
 
Andrei-1:
Olá. Estou a debater-me com o lançamento de ficheiros externos para o segundo dia. Por favor, informe o que está errado.
//+------------------------------------------------------------------+
//| Функция получает хэндл графика                                   |
//+------------------------------------------------------------------+
int ChartWindowsHandle(long chart_ID)
  {
//--- подготовим переменную для получения значения свойства
   long result=-1;
//--- сбросим значение ошибки
   ResetLastError();
//--- получим значение свойства
   if(!ChartGetInteger(chart_ID,CHART_WINDOW_HANDLE,0,result))
     {
      //--- выведем сообщение об ошибке в журнал "Эксперты"
      Print(__FUNCTION__+", Error Code = ",GetLastError());
     }
//--- вернем значение свойства графика
   return((int)result);
  }

Mas só vai ter o cabo do gráfico. E o próprio gráfico está contido numa janela de classe superior (janela pai). No ShellExecuteA deve substituir a pega da janela principal.

Veja-se o script Transparente MetaTrader 5: tem a função de obter o cabo do terminal através de ChartID().

Transparent MetaTrader 5
Transparent MetaTrader 5
  • votos: 19
  • 2014.03.10
  • Karputov Vladimir
  • www.mql5.com
Данный скрипт позволяет делать полупрозрачным весь терминал.
 
Saudações a todos!
A MQL4 tem uma boa função - Barshift. Infelizmente, não está disponível na MQL5. Como variante para substituir esta função, é possível copiar os dados das séries cronológicas a partir da data de início (para a qual se procura o turno) e ver o número de elementos copiados. Mas se precisarmos de processar muitas datas diferentes, não queremos sobrecarregar o computador através da cópia múltipla constante de séries cronológicas. Naturalmente, somos forçados a tentar encontrar os valores correctos utilizando a enumeração da matriz. E aqui chegamos à questão. :) Após pesquisar através da documentação, encontrei apenas uma função padrão, que procura valores numa matriz: ArrayBSearch. Mas não funciona com matrizes contendo dados de data/hora. Existe uma função padrão para pesquisar por data dentro da matriz de data/hora? Ou é possível utilizar algum tipo de conversão de dados?
 
BlackTomcat:
Saudações a todos!
A MQL4 tem uma boa função - Barshift. Infelizmente, não está disponível na MQL5. Como variante para substituir esta função, é possível copiar os dados das séries cronológicas a partir da data de início (para a qual se procura o turno) e ver o número de elementos copiados. Mas se precisarmos de processar muitas datas diferentes, não queremos sobrecarregar o computador através da cópia múltipla constante de séries cronológicas. Naturalmente, somos forçados a tentar encontrar os valores correctos utilizando a enumeração da matriz. E aqui chegamos à questão. :) Após pesquisar através da documentação, encontrei apenas uma função padrão, que procura valores numa matriz: ArrayBSearch. Mas não funciona com matrizes contendo dados de data/hora. Existe uma função padrão para pesquisar por data dentro da matriz de data/hora? Ou é possível utilizar alguma conversão de dados?
Os analógicos já foram escritos há muito tempo - pesquise o site.
 
Existe alguma forma de aumentar um ficheiro (especialmente csv) através do FileOpen sem o sobreescrever? FileOpen(nome,FILE_CSV|FILE_WRITE|...) apenas recria um ficheiro limpo, não abre um já existente se este já existisse. O texto um é ordenado, embora não de uma forma muito elegante: basta lê-lo numa variável de antemão e adicioná-lo ao novo registo. Mas o csv não funciona...
 
Olá a todos e bom dia!! Hoje tentei ganhar com as notícias em libras esterlinas, coloquei duas ordens pendentes de compra e venda stop, o stop loss foi colocado em 200 pontos, tirar lucro de 100 pontos. Depois do preço da notícia subir directamente, mas a ordem de compra stop fechou com -0,34$ quando o preço subiu directamente em 500 pontos.
 
Não sei ... a propagação deve ser
Razão: