Participe de nossa página de fãs
Coloque um link para ele, e permita que outras pessoas também o avaliem
Avalie seu funcionamento no terminal MetaTrader 5
- Visualizações:
- 3498
- Avaliação:
- Publicado:
- Atualizado:
-
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance
Esta biblioteca contém um conjunto de funções estatísticas básicas necessárias para o processamento de dados do usuário.
Esta biblioteca foi publicado pela primeira vez na CodeBase no MQL4 - Statistica.mqh, funções da biblioteca.
Alguns erros foram detectados e corrigidos durante a transferência das funções para MQL5. O código tornou-se mais intuitivamente claro. A maioria das funções foram escritas usando os algoritmos do livro de S. Bulashov, "Estatísticas para os traders" .
As funções da biblioteca são as seguintes:
| Função | Descrição: |
|---|---|
| Mediana | Cálculo Mediano |
| Mediana50 | Cálculo da mediana em 50% de intervalo interquantile |
| Average | Exemplo aritmético demonstrando o calculo |
| Average50 | Exemplo aritmético demonstrando o cálculo em 50% de intervalo interquantile |
| SweepCenter | Cálculo do centro de varredura |
| AverageOfEvaluations | O cálculo do valor médio de cinco avaliações superiores |
| Variance | Exemplo de cálculo de variância |
| ThirdCentralMoment | Cálculo do terceiro momento central |
| FourthCentralMoment | Cálculo do quarto momento central |
| Asymmetry | Exemplo do cálculo de assimetria |
| Excess | Exemplo de cálculo do excesso |
| Excess2 | Um outro método de amostra de cálculo de excesso |
| Gamma | Cálculo da função gama de Euler, x>0. |
| GammaStirling | Cálculo da função gama de Euler, for x>33 (Aproximação de Stirling) |
| VarianceOfSampleVariance | Calculando a variância de uma amostra de variância |
| VarianceOfStandartDeviation | Cálculo da variância de um desvio padrão |
| VarianceOfAsymmetry | Exemplo de cálculo da variância assimétrica |
| VarianceOfExcess | Exemplo de cálculo da variância de excesso |
| VarianceOfAverage | Amostra significando cálculo da variância |
| Log | Cálculo do Logaritmo |
| CensorCoeff | Censurando cálculo da razão |
| HistogramLength | Calculando o número ideal das colunas do histograma |
| Resize | Calculando o número ideal de os elementos array para o histograma |
| Histogram | Criando o histograma para o arquivo *.csv |
| Cov | Amostra de cálculo de covariação |
| Corr | Amostra de cálculo de correlação |
| VarianceOfCorr | Amostra do cálculo de variância de correlação |
| AutoCorr | Cálculo de autocorrelação |
| AutoCorrFunc | Cálculo da função de autocorrelação |
| aCoeff | Calculando a relação "a" na equação de regressão linear (y=a*x+b) |
| bCoeff | Calculando a relação "b" na equação de regressão linear (y=a*x+b) |
| LineRegresErrors | Calculando os erros de regressão linear |
| eVariance | Calculando os erros de variância da regressão linear |
| aVariance | Calculando a regressão linear do parâmetro "a" da variação |
| bVariance | Calculando a regressão linear do parâmetro "b" da variação |
| DeterminationCoeff | Cálculo do índice de determinação |
| ArraySeparate | Dividindo a array arr[n][2] em duas arrays |
| ArrayUnion | Juntando as duas arrays para a array do tipo arr[n][2] |
| WriteArray | Escrevendo a array unidimensional para o arquivo *.csv |
| WriteArray2 | Escrevendo a array bidimensional para o arquivo *.csv |
O arquivo pode ser incluído nos projetos que requerem processamento de parâmetros de amostragem aleatória, sua avaliação dos parâmetros, histogramas etc
Vamos examinar a chamada de algumas funções:
//+------------------------------------------------------------------+ //| test.mq5 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" #include <Statistics.mqh> //+------------------------------------------------------------------+ //| Programa Script para iniciar a função | //+------------------------------------------------------------------+ void OnStart() { //--- especificando dois exemplos de valores. double arrX[10]={3,4,5,2,3,4,5,6,4,7}; double arrY[10]={7,4,1,2,1,6,9,2,1,5}; //--- cálculo da média double mx=Average(arrX); double my=Average(arrY); //--- usando a média para calcular a variação double dx = Variance(arrX,mx); double dy = Variance(arrY,my); //--- assimetria do valor e excesso double as=Asymmetry(arrX,mx,dx); double exc=Excess(arrX,mx,dx); //--- covariação e correlação dos valores double cov=Cov(arrX,arrY,mx,my); double corr=Corr(cov,dx,dy); //--- mostrando resultados no arquivo log PrintFormat("mx=%.6e",mx); PrintFormat("my=%.6e",my); PrintFormat("dx=%.6e",dx); PrintFormat("dy=%.6e",dy); PrintFormat("As=%.6e",as); PrintFormat("exc=%.6e",exc); PrintFormat("cov=%.6e",cov); PrintFormat("corr=%.6e",corr); }
Como você pode ver, a maioria das funções requerem os valores (como parâmetros de entrada) que podem ser calculados usando outras funções.
Por exemplo:
double dx = Variance(arrX,mx);
Para calcular a variância, temos que calcular a média em primeiro lugar. Isso dá uma certa vantagem em relação à otimização dos cálculos. No caso é necessário calcular a variância por diversas vezes, será melhor para encontrar a média, ao invés de fazê-la várias vezes dentro da função. Isso vai economizar tempo.
Esse recurso se aplica à maioria das funções da biblioteca.
Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/866
Script para o Cálculo Estatístico das Velas
O script realiza um cálculo estatístico das velas (os valores mínimos, máximos e médios do corpo e das sombras das velas) do gráfico atual.
Percentual de Tendência
Esse indicador é utilizado para o cálculo da tendência.
Clock-Indiсator
O indicador mostra a data atual, o tempo, o spread atual e os níveis de stop.
ChartChanger
O script é atribuído a uma tecla de atalho para a mudança rápida de gráficos em círculo.