stringo: Isto é um erro na documentação. A numeração dos dias de um ano começa em 0. Obrigado.
Compreendo que é mais complicado, mas parece mais familiar (para o leigo. Não há problema para o programador). O dia 1 de Janeiro é 1 dia do ano. Parece-me que a referência está correcta.
Prival: Compreendo que é mais complicado, mas parece ser mais familiar (para o leigo. Para o programador, está bem). O dia 1 de Janeiro é o 1º dia do ano. Parece-me correcto na ajuda.
Traduzimos a estrutura temporal padrão do sistema para a nossa estrutura MqlTime
Olá, pode ajudar-me a traduzir da função mt4 para mt5. Traduzi-o, mas não está certo, se não for difícil, por favor enviem-me o código certo, não sou muito bom em MQL. Estou apenas a começar a aprender.
//+------------------------------------------------------------------+ #property copyright "2010, MetaQuotes Software Corp." #ligação de propriedade"http://www.mql5.com" #propriedade versão "1.00" //--- parâmetros de entrada
entrada duplo Lotes=0,1; entrada bool MM = verdadeiro; risco duplo de entrada = 10;
//+------------------------------------------------------------------+ //| Função de iniciação de peritos| //+------------------------------------------------------------------+ int OnInit() { return(0); } //+------------------------------------------------------------------+ //| Função de desinicialização de peritos| //+------------------------------------------------------------------+ nulo OnDeinit(const int razão) {
MQL5: language of trade strategies built-in the MetaTrader 5 Trading Platform, allows writing your own trading robots, technical indicators, scripts and libraries of functions
O botão destina-se a inserir o código fonte MQL no texto da mensagem. Uma janela vazia aparecerá assim que premir, na qual deverá inserir o código e depois premir o botão Inserir. Para cancelar a inserção do código, premir o botão Cancelar.
Não é recomendável codificar a negrito para que certos pedaços de código se destaquem de alguma forma. A questão é que as fontes monoespaciais são apresentadas de forma diferente em diferentes sistemas operativos e navegadores. Por exemplo, o Windows Vista utiliza a fonte Consolas monoespacial, que tem uma fonte em negrito para o tamanho 10 que é quase indistinguível de uma fonte normal.
Olá, pode ajudar-me a traduzir da função mt4 para mt5. Traduzi-o, mas não está certo, se não for difícil, por favor enviem-me o código certo, não sou muito bom em MQL. Estou apenas a começar a aprender.
//+------------------------------------------------------------------+#property copyright "2010, MetaQuotes Software Corp."#property link "http://www.mql5.com"#property version "1.00"//--- input parametersinputdouble Lots=0.1;
inputbool MM = true;
inputdouble Risk = 10;
//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
return(0);
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
if( MM ) Lots = LotSon(); //вызов функции LotSon
}
//+------------------------------------------------------------------+double LotSon()
{
double LotMin = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN);
double LotMax = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX);
double LotStep = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_STEP);
double Lot = AccountInfoDouble(ACCOUNT_FREEMARGIN)/100000.0 * Risk;
Lot = MathMin(Lotmax,MathMax(Lotmin,Lot));
if (Lot < LotMin) Lot = LotMin;
if (Lot > LotMax) Lot = LotMax;
// Вариант первыйswitch(LotStep)
{
case0.01: return(NormalizeDouble(Lot,2));
case0.1 : return(NormalizeDouble(Lot,1));
case1.0 : return(NormalizeDouble(Lot,0));
}
// Вариант второй// if (LotStep == 0.01)return(NormalizeDouble(Lot,2));// if (LotStep == 0.1) return(NormalizeDouble(Lot,1));// if (LotStep == 1.0) return(NormalizeDouble(Lot,0));// Вариант третий// if (LotStep == 0.01)return(NormalizeDouble(Lot,2));// else if (LotStep == 0.1) return(NormalizeDouble(Lot,1));// else if (LotStep == 1.0) return(NormalizeDouble(Lot,0));
}
Muito bem, vamos tentar. Obrigado a todos! Estou sequer a fazer estas perguntas? Ou preciso de ir a outro lugar? Obrigado antecipadamente pela resposta.
E nesta fase de desenvolvimento: parâmetros, chamada de função e a própria função devem ou não mostrar erros de tempo de compilação. Em caso afirmativo, porquê? Tenho erros a mostrar
diz na ajuda.
intdia_do_ano;// número num ano (1 de Fevereiro é o 32º dia do ano)
Por alguma razão, aparece sempre como 31 ((
o guião em anexo
no ficheiro
2010.02.01 00:00:00 143.832 143.839 143.758 143.771 186 2010 2 1 0 0 1 31
Isto é um erro na documentação. A numeração dos dias de um ano começa em 0. Obrigado.
Compreendo que é mais complicado, mas parece ser mais familiar (para o leigo. Para o programador, está bem). O dia 1 de Janeiro é o 1º dia do ano. Parece-me correcto na ajuda.
Olá, pode ajudar-me a traduzir da função mt4 para mt5. Traduzi-o, mas não está certo, se não for difícil, por favor enviem-me o código certo, não sou muito bom em MQL. Estou apenas a começar a aprender.
//+------------------------------------------------------------------+
#property copyright "2010, MetaQuotes Software Corp."
#ligação de propriedade"http://www.mql5.com"
#propriedade versão "1.00"
//--- parâmetros de entrada
entrada duplo Lotes=0,1;
entrada bool MM = verdadeiro;
risco duplo de entrada = 10;
//+------------------------------------------------------------------+
//| Função de iniciação de peritos|
//+------------------------------------------------------------------+
int OnInit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Função de desinicialização de peritos|
//+------------------------------------------------------------------+
nulo OnDeinit(const int razão)
{
}
//+------------------------------------------------------------------+
//| função tick expert|
//+------------------------------------------------------------------+
nulo OnTick()
{
if( MM )double Lots = LotSon(); //chamada função LotSon
}
//+------------------------------------------------------------------+
duplo LotSon()
{
double LotMin = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MIN);
double LotMax = SymbolInfoDouble(_Symbol,SYMBOL_VOLUME_MAX);
double Lots = AccountInfoDouble(ACCOUNT_FREEMARGIN)/100000.0 * Risco;
double Lots = MathMin(Lotmax,MathMax(Lotmin,Lots));
if (LotMin < 0,1)Lots = NormalizeDouble(Lots,2);
senão
{
se (LotMin < 1,0)Lotes = NormalizarDuplo(Lots,1);
else Lots = NormalizeDouble(Lots,0);
}
se (Lotes < LotMin) Lotes = LotMin;
se (Lotes > LotMax) Lotes = LotMax;
}
Como é que se obtém o código a cores?
Como é que se consegue colorir o código?
Artigo comunitário MQL5 - Memo do utilizador:
O botão
destina-se a inserir o código fonte MQL no texto da mensagem. Uma janela vazia aparecerá assim que premir, na qual deverá inserir o código e depois premir o botão Inserir. Para cancelar a inserção do código, premir o botão Cancelar.
Não é recomendável codificar a negrito para que certos pedaços de código se destaquem de alguma forma. A questão é que as fontes monoespaciais são apresentadas de forma diferente em diferentes sistemas operativos e navegadores. Por exemplo, o Windows Vista utiliza a fonte Consolas monoespacial, que tem uma fonte em negrito para o tamanho 10 que é quase indistinguível de uma fonte normal.
Olá, pode ajudar-me a traduzir da função mt4 para mt5. Traduzi-o, mas não está certo, se não for difícil, por favor enviem-me o código certo, não sou muito bom em MQL. Estou apenas a começar a aprender.
Muito bem, vamos tentar. Obrigado a todos! Estou sequer a fazer estas perguntas? Ou preciso de ir a outro lugar? Obrigado antecipadamente pela resposta.
E nesta fase de desenvolvimento: parâmetros, chamada de função e a própria função devem ou não mostrar erros de tempo de compilação. Em caso afirmativo, porquê? Tenho erros a mostrar