• Registre-se

Assista a como baixar robôs de negociação gratuitos

Roteiro interessante?
Então poste um link sobre isto -
deixe que outros avaliem

Você gostou do roteiro? Experimente no terminal MetaTrader 5

Bibliotecas

Funções Statistics.mqh - biblioteca para MetaTrader 5

QSer29 | Portuguese English Русский 中文 Español Deutsch 日本語

Visualizações:
1514
Classificação:
votos: 39
Publicado:
2014.01.14 12:46
Atualizado:
2016.11.22 07:34
\MQL5\Include\\MQL5\Scripts\

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çãoDescriçã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 por MetaQuotes Software Corp
código original: https://www.mql5.com/ru/code/866

Script para o Cálculo Estatístico das Velas 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 Percentual de Tendência

Esse indicador é utilizado para o cálculo da tendência.

Clock-Indiсator Clock-Indiсator

O indicador mostra a data atual, o tempo, o spread atual e os níveis de stop.

ChartChanger ChartChanger

O script é atribuído a uma tecla de atalho para a mudança rápida de gráficos em círculo.