A janela do MetaTrader 5 mostra os valores Bid& Ask, que (tanto quanto sei) determinam o ganho/perda.
Contudo, quando tento usar citações minúsculas da história para testar a minha estratégia, estas citações não contêm os valores Bid eAsk, mas dão os valores " OPEN", "HIGH" "LOW", "CLOSE", "TICKVOL","VOL","SPREAD". Não é muito claro como fazer Bid eAsk a partir destes valores, bem como como calcular o spread.
Tudo é absolutamente claro. Descrever com mais detalhe o que se entende exactamente por "quando tento usar citações de história minuciosas"? O que está a fazer ou quer fazer exactamente?
longSymbolInfoInteger(
string name, // символ ENUM_SYMBOL_INFO_INTEGER prop_id // идентификатор свойства
);
2. Devolve verdadeiro ou falso, dependendo do sucesso da função. Se for bem sucedido, o valor do bem é colocado na variável de destino passada por referência pelo último parâmetro.
boolSymbolInfoInteger(
string name, // символ ENUM_SYMBOL_INFO_INTEGER prop_id, // идентификатор свойства long& long_var // сюда примем значение свойства
);
2. Devolve verdadeiro ou falso, dependendo do sucesso da função. Se for bem sucedido, o valor do bem é colocado na variável de destino passada por referência pelo último parâmetro.
#property copyright"Copyright 2018, Sergey S Morozov"#property link"https://www.mql5.com"#property version"1.00"#property strict//#property indicator_separate_window // Индик. рисуется в новом окне#property indicator_chart_window// Индик. рисуется в основном окне#property indicator_buffers1// Количество буферов#property indicator_color1 Red // Цвет первой линииexternint History =50; // Колич.баров в расчётной историиexternint Aver_Bars=5; // Количество баров для расчётаdouble ArrayBuff[];
//----------------------------------------------------------------------------------------------------intOnInit()
{
SetIndexBuffer(0,ArrayBuff);
SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,1);
return(INIT_SUCCEEDED);
}
intOnCalculate(
constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],
constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
int i, // Индекс бара
n, // Формальный параметр
Counted_bars; // Количество просчитанных баров double
Sum_H, // Сумма значений High за переиод
Sum_L; // Сумма значений Low за переиод//--------------------------------------------------------------------
Counted_bars=IndicatorCounted(); // Количество просчитанных баров
i=Bars-Counted_bars-1; // Индекс первого непосчитанногоif (i>History-1) // Если много баров то ..
i=History-1; // ..рассчитывать заданное колич.while(i>=0) // Цикл по непосчитанным барам
{
Sum_H=0; // Обнуление в начале цикла
Sum_L=0; // Обнуление в начале циклаfor(n=i;n<=i+Aver_Bars-1;n++) // Цикл суммирования значений
{
Sum_H=Sum_H + High[n]; // Накопление суммы макс.значений
Sum_L=Sum_L + Low[n]; // Накопление суммы мин. значений
}
ArrayBuff[i]=(Sum_H-Sum_L)/Aver_Bars; // Знач. 0 буфера на i-ом баре
i--; // Расчёт индекса следующего бара
}
return(rates_total);
}
//+------------------------------------------------------------------+
Comecei agora, ainda não sei como escrever nesta língua. Mas o problema é - se numa nova janela, o gráfico aparece. Mas não o posso exibir no actual... Qual é o meu erro? Considerando que eu próprio não consegui escrevê-lo e não consigo encontrar exemplos aqui. Mais ainda, não é claramente através de uma função como SetChartData(ponto1,ponto2); apenas acontece por si só...
E a variável parece estar definida(janela_cartão_de_indicador), mas mesmo assim não funciona....
Задавайте вопросы по техническому анализу, обсуждайте торговые системы и улучшайте свои навыки программирования торговых стратегий на языке MQL5. Общайтесь и обменивайтесь опытом на форуме с трейдерами всего мира и помогайте ответами новичкам — наше сообщество развивается вместе с вами. Как прописать расписание торговли робота? Здравствуйте...
Absolutamente tudo está disponível. Descrever com mais detalhe o que se entende exactamente por "quando tento usar citações de história minuciosas"? O que está a fazer ou quer fazer exactamente?
Para descarregar as citações do histórico carregar MetaTrader 5, clique no ícone com o símbolo dólar: "Symbol List Display" (ou pode pressionar CtrlU). A janela "Símbolos" irá aparecer. No separador "ESPECIFICAÇÃO" encontrar o par de moedas desejado, por exemplo GBPCHF. No separador "BARs" definir as cotações de minutos (M1) e as datas do início e do fim do período requerido. Após clicar no botão "REQUEST", será descarregado um ficheiro csv, que pode ser utilizado para testar estratégias com o Metatrader ou com os seus próprios programas.
Utilizando o EXCEL pode ver o conteúdo deste ficheiro, onde a primeira linha revela a informação no ficheiro, ou seja "data, hora" e depois" OPEN", "HIGH" "LOW", "CLOSE", "TICKVOL", "VOL", "SPREAD"
Sei exactamente o que estes dados significam, mas como fazer BIT e ASK a partir destes dados, que MetaTrader 5 utiliza?
Por favor informe-me onde em mt5 pode verificar informações sobre um símbolo? Lembro-me que no mt 4 se podia verificar no testador de estratégia, mas no testador mt5 ainda não encontrei esta função.
Basta adicionar outro conjunto CArrayObj ao CArrayObj: Adicionar() conjunto
Não funciona dessa forma. a conversão de parâmetros não é permitida
A propósito, se é que isso importa. O meu objecto a ser adicionado à matriz é uma classe herdada do CArrayObj.
Bem, jura na última linha - a conversão de parâmetros não é permitida.Caros membros do fórum, por favor, ajudem!!!
Quero atribuir uma etapa de preço a uma variável:
int V=SymbolInfoInteger(Symb,SYMBOL_POINT);
erro: 'SymbolInfoInteger' - nenhuma das sobrecargas pode ser aplicada à chamada de função
Qual é novamente o meu erro?
int V=(int)SymbolInfoInteger(Symb,SYMBOL_POINT);
Por isso, experimente.
Caros Membros do Fórum!
Por favor aconselhem!!!!
A janela do MetaTrader 5 mostra os valores Bid& Ask, que (tanto quanto sei) determinam o ganho/perda.
Contudo, quando tento usar citações minúsculas da história para testar a minha estratégia, estas citações não contêm os valores Bid e Ask, mas dão os valores " OPEN", "HIGH" "LOW", "CLOSE", "TICKVOL","VOL","SPREAD". Não é muito claro como fazer Bid e Ask a partir destes valores, bem como como calcular o spread.
Tudo é absolutamente claro. Descrever com mais detalhe o que se entende exactamente por "quando tento usar citações de história minuciosas"? O que está a fazer ou quer fazer exactamente?
Caros membros do fórum, por favor, ajudem!!!
Quero atribuir uma variável à etapa de preço:
int V=SymbolInfoInteger(Symb,SYMBOL_POINT);
erro: 'SymbolInfoInteger' - nenhuma das sobrecargas pode ser aplicada à chamada de função
Qual é o meu erro outra vez?
SymbolInfoInteger ajuda:
1. Devolve directamente o valor do imóvel.
2. Devolve verdadeiro ou falso, dependendo do sucesso da função. Se for bem sucedido, o valor do bem é colocado na variável de destino passada por referência pelo último parâmetro.
Isto é OR longo OR bool.
Caros membros do fórum, por favor, ajudem!!!
Quero atribuir uma etapa de preço a uma variável:
int V=SymbolInfoInteger(Symb,SYMBOL_POINT);
erro: 'SymbolInfoInteger' - nenhuma das sobrecargas pode ser aplicada à chamada de função
Qual é novamente o meu erro?
O ponto é um valor do tipo duplo. Quando recebido como int, terá um valor zero.
SymbolInfoInteger Ajuda:
1. Devolve directamente o valor do imóvel.
2. Devolve verdadeiro ou falso, dependendo do sucesso da função. Se for bem sucedido, o valor do bem é colocado na variável de destino passada por referência pelo último parâmetro.
Isto é OR longo OR bool.
Já está, obrigado)
Comecei agora, ainda não sei como escrever nesta língua. Mas o problema é - se numa nova janela, o gráfico aparece. Mas não o posso exibir no actual... Qual é o meu erro? Considerando que eu próprio não consegui escrevê-lo e não consigo encontrar exemplos aqui. Mais ainda, não é claramente através de uma função como SetChartData(ponto1,ponto2); apenas acontece por si só...
E a variável parece estar definida(janela_cartão_de_indicador), mas mesmo assim não funciona....
Absolutamente tudo está disponível. Descrever com mais detalhe o que se entende exactamente por "quando tento usar citações de história minuciosas"? O que está a fazer ou quer fazer exactamente?
Para descarregar as citações do histórico carregar MetaTrader 5, clique no ícone com o símbolo dólar: "Symbol List Display" (ou pode pressionar Ctrl U). A janela "Símbolos" irá aparecer. No separador "ESPECIFICAÇÃO" encontrar o par de moedas desejado, por exemplo GBPCHF. No separador "BARs" definir as cotações de minutos (M1) e as datas do início e do fim do período requerido. Após clicar no botão "REQUEST", será descarregado um ficheiro csv, que pode ser utilizado para testar estratégias com o Metatrader ou com os seus próprios programas.
Utilizando o EXCEL pode ver o conteúdo deste ficheiro, onde a primeira linha revela a informação no ficheiro, ou seja "data, hora" e depois" OPEN", "HIGH" "LOW", "CLOSE", "TICKVOL", "VOL", "SPREAD"
Sei exactamente o que estes dados significam, mas como fazer BIT e ASK a partir destes dados, que MetaTrader 5 utiliza?