Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1107
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
você não pode executar algo longo no OnInit - o terminal pode descarregar o código
no indicador não deve escorregar
Sim, eu sou burro... Talvez, em vez de um loop infinito no OnInit, volte da OnCalculate com a mesma condição? - deve haver um número definido quando não há login, seja -1, ou 0, ou EMPTY_VALUE
Cumprimentem os comerciantes e programadores!
Você poderia me dizer se é possível usar um método não padrão para calcular o período para o MA(Moving Average) ? Quero dizer que a posição do MA na barra atual (zero) não será determinada pelas últimas 20 (por exemplo) barras, mas a cada 5m das últimas 100, ou apenas especificando o número de barras na história, a partir da barra atual. E, se houver tal possibilidade, é possível especificar a função diretamente no código indicador?
Obrigado pela informação.
Olá. Como exibir o símbolo do triângulo para baixo e para cima?
Aqui está o código
bool OutText(const string name="Label",
const string text="Label", // texto
const int x=0, // coordenada X
const int y=0, // coordenada ao longo do eixo Y
const color clr=clrYellow, // cor
const ENUM_ANCHOR_POINT anchor=ANCHOR_LEFT_UPPER, // método de ancoragem
const ENUM_BASE_CORNER canto=CORNER_LEFT_UPPER, // canto do gráfico para âncora
const int font_size=12, // tamanho da fonte
const string font="Arial", // font
const duplo ângulo=0,0, // inclinação do texto
const bool back=false, // back
const bool selection=false, //select for moving
const bool hidden=true, // escondido na lista de objetos
const long z_ordem=0,
const int sub_janela=0, // número de subjanela
const long chart_ID=0 // ID do gráfico
) // clicar prioridade
{
//--- reajuste o valor do erro
ResetLastError();
//--- criar uma marca de texto
if(ObjectFind(chart_ID,name)==-1)
{
if(!ObjectCreate(chart_ID,name,OBJ_LABEL,sub_window,0,0))
{
Imprimir(__FUNÇÃO__, ": falhou na criação do rótulo de texto! Código de erro = ",GetLastError()));
// retorno(falso);
}
}
//--- definir as coordenadas do marcador
ObjectSetInteger(chart_ID,name,OBJPROP_XDISTANCE,x);
ObjectSetInteger(chart_ID,name,OBJPROP_YDISTANCE,y);
//--- definir o ângulo do gráfico, em relação ao qual as coordenadas do ponto serão determinadas
ObjectSetInteger(chart_ID,name,OBJPROP_CORNER,corner);
//... -- definir o texto
ObjectSetString(chart_ID,name,OBJPROP_TEXT,text);
//--- definir fonte de texto
ObjectSetString(chart_ID,name,OBJPROP_FONT,font);
//... - estabelecer o tamanho da fonte
ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size);
//--- definir ângulo de inclinação do texto
ObjectSetDouble(chart_ID,name,OBJPROP_ANGLE,angle);
//... -- fixar o método de ancoragem
ObjectSetInteger(chart_ID,name,OBJPROP_ANCHOR,anchor);
//... - cor definida
ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr);
//--- exibição em primeiro plano (falso) ou em segundo plano (verdadeiro)
ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back);
//--- ligar (verdadeiro) ou desligar (falso) o modo de mover a marca com o mouse
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection);
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection);
//--- ocultar (verdadeiro) ou exibir (falso) o nome do objeto gráfico na lista de objetos
ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden);
//--- definir o evento do clique do mouse prioridade do recebimento
ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);
//--- execução bem sucedida
retorno(true);
}
Como faço para levantar o símbolo do triângulo?
O que deve ser escrito
OutText("LabelBuy1", ">", 100, 20, clrWhite, ANCHOR_UPPER,CORNER_LEFT_UPPER,14, "Arial");
Para fazer um triângulo?
Antes eu fiz uma pergunta sobre como simular a função Print() do lado da biblioteca para verificar os dados que chegam às funções da biblioteca e para procurar por erros, fui aconselhado a usar recursos C++: ou seja, para escrever informações no arquivo a partir do lado dll da biblioteca. Em geral a biblioteca não pode criar um arquivo para escrever as informações lá, o arquivo não é criado nem no projeto de diretório, nem na pasta com o robô, tentou especificar o caminho padrão não funciona, a saída de informações via cout também não funciona, mas provavelmente não pode porque não é uma aplicação de console. Quem pode aconselhar?
Como substituir a figura padrão na descrição por ...
... posso colocar a minha própria?
Como substituir a figura padrão na descrição por ...
... posso colocar a minha própria?
# ícone de propriedade
Como é simples... Obrigado!
Olá!
Você poderia me dizer como implementar a detecção de objetos gráficos desenhados manualmente em um gráfico (horizontal ou linha de tendência, por exemplo) e depois recuperar suas propriedades (nível de preço no momento certo)?
Olá!
Você poderia me dizer como implementar a detecção de objetos gráficos desenhados manualmente em um gráfico (horizontal ou linha de tendência, por exemplo) e depois recuperar suas propriedades (nível de preço no momento certo)?
Olá!
Você poderia me dizer como implementar a detecção de objetos gráficos desenhados manualmente em um gráfico (horizontal ou linha de tendência, por exemplo) e depois recuperar suas propriedades (nível de preço no momento certo)?
Eles têm um prefixo padronizado, por exemplo: número Trenler. Você pode pesquisar da seguinte forma: no loop if(StringFind(ObjectName(0,i), "Trendline")==0) para os antigos ou para os novos if(StringFind(sparam, "Trendline")==0))