Teoria do Fluxo Aleatório e FOREX - página 43

 

A teoria do fluxo é um trabalho muito grande e fundamental. Fiz o melhor que pude para colocar isto em palavras aqui. A matemática é muito complicada. Mas pode ser usado para descrever matematicamente qualquer fluxo, pode ser um fluxo de eventos no mundo (tais como discursos de chefes de bancos centrais, taxas de juros, ações de Ben Laden, etc.). QUALQUER COISA!!!) Pode ser um fluxo de energia psicológica, um fluxo de ordens de venda etc. A matemática é dada ali, como e que fórmulas podem fazê-lo, como um fluxo irá interagir com outro e como identificá-lo e investigá-lo, etc.

Nuzhny obrigado, eu tenho um filtro Kalman e ele é implementado em vários idiomas. A questão não é sobre isso, é sobre o que está embutido naquele filtro. Que modelo. O procedimento de filtragem em si é padrão e bem conhecido. É como a transformação de Fourier, todos sabem disso, mas é preciso entender o que é e como. Muitas pessoas podem segurar um bisturi em suas mãos, mas nem todas são cirurgiões. Se você colocar modelos lineares em um filtro, ele será um filtro linear, e se você colocar modelos não lineares em um filtro, ele será um filtro não-linear. O procedimento é universal (há algumas variações dele, dependendo dos dados iniciais, mas não importa).

O fato de que muitas fórmulas de Bolshakov por mais de 50 anos não puderam ser resolvidas, enquanto Berg provou matematicamente que não é possível sua solução exata. E relativamente recentemente o chefe do instituto de pesquisa Slukin da Universidade Técnica Estadual de Bauman Moscou mostrou que é possível encontrar soluções com a chamada precisão suficiente para a prática.

Pela vontade do destino eu me deparei com estas pesquisas científicas, como eu poderia descrevê-las com referência ao mercado (muitas vezes explicando algo para os outros, eu coloco meus próprios mármores no lugar). Entendo que se o investidor tivesse a senha para a conta real com patrimônio líquido descansando no céu ou tivesse ganho o primeiro lugar em um concurso por 3 anos, o concurso teria tido mais peso. Espero que as idéias e pensamentos aqui expressos não sejam menos valiosos. Nuzhny, espero que aquelas 4 horas que você passou lendo não tenham sido em vão. Pelo menos eu acho que foi interessante e estimulante.

 

Favor aconselhar como melhorar o indicador. Escolhi este princípio por causa das razões descritas aqui 'Como escrever ziguezagues rápidos sem redesenhar'.

Aqui está o próprio modelo de indicador.

#property  indicator_chart_window
#property  indicator_buffers 2
#property  indicator_color1  Silver
#property  indicator_color2  MediumVioletRed

extern  int      MinBars = 0;

int      PreBars;
datetime BarTime;
int      StartPos;
int      pos;

double   Kalman[], Prognoz[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init() {
  SetIndexBuffer(0, Kalman);
  SetIndexBuffer(1, Prognoz);
  SetIndexStyle(0,DRAW_LINE);
  SetIndexStyle(1,DRAW_LINE);
//---- Устанавливает значение пустой величины  
  SetIndexEmptyValue(0,0.0);
  SetIndexEmptyValue(1,0.0);
  SetIndexLabel(0,"Kalman");
  SetIndexLabel(1,"Prognoz");
  return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit() {
  return(0);
}
//+------------------------------------------------------------------+
//|расчеты при инициализации и сбоях                                 |
//+------------------------------------------------------------------+
int Reset() {
  if ( MinBars == 0) MinBars = Bars-2;
  StartPos = MinBars;
  PreBars = 0;
  BarTime = 0;
// .......
  StartPos++;
  return( StartPos);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {
double K_1=1, K_2=1;
//  Работаем только по закончившимся барам
  if (Bars == PreBars) return(0);  
//  Проверим, достаточно ли баров на графике
  if (Bars < MinBars) {
    Alert("Калман: Недостаточно баров на графике");
    return(0);
  }  
//  Если не было докачки истории, обсчитываем только закончившийся бар
  if (Bars- PreBars == 1 && BarTime==Time[1]) StartPos = 1;
//  Иначе пересчитываем заданное в функции Reset() количество баров 
  else StartPos = Reset();
// Модифицируем контрольные переменные
  PreBars = Bars;  
  BarTime = Time[0];
// Цикл по истории
  for ( pos= StartPos; pos>0; pos--) {
// алгоритм расчета .....
// ......
// истинное (оцененное) значение цены 
   Kalman[ pos]= K_1*Close[ pos];      // в качестве примера
// наносим прогноз на график
   Prognoz[ pos-1]= K_2* Kalman[ pos]; // в качестве примера

  }  //  pos=StartPos;pos>0;pos--) 
  return(0);
}

Como fazer o indicador para obter dados de um período de tempo de 5, 15, 30, etc. definido por uma variável externa, e exibi-los corretamente no gráfico.

Obrigado de antemão.

Z.I. O indicador é construído com base no princípio de que não importa o que foi ontem, uma hora atrás ou um minuto atrás. É importante qual preço agora e precisão da previsão = matriz de transição = matriz do sistema (no exemplo tomado número) respectivamente K_1 (correção) e K_2 (responsável pela precisão da previsão).

Arquivos anexados:
 
Prival >> :

Como fazer um indicador em um gráfico de minutos, que pegaria os dados do intervalo de tempo 5, 15, 30, etc., definidos por uma variável externa, e os exibiria corretamente no gráfico.

Agradecemos antecipadamente.

A substituição de Close por iClose não funcionará?

Somente você precisa usar um mecanismo adicional para pré-carga (antes de ligar para iClose) de citações dos prazos exigidos

 
sabluk писал(а) >>

Não substituiria Close por iClose?

Você só precisa usar um mecanismo adicional para pré-calendar (antes da chamada iClose) as citações dos prazos exigidos.

Este mecanismo deve ser acionado somente pela barra formada. Não deve ser capaz de ler entre eles (ver abaixo)

Acho que é simples, mas não entendo o que deve ser acrescentado ao se

 
_
Arquivos anexados:
 
Prival писал(а) >>

Não é a questão, é o que é colocado neste filtro. Que modelo. O procedimento de filtragem em si é padrão e bem conhecido. É como a transformação de Fourier, todos sabem como fazê-lo, mas é preciso entender o que está lá e como. Muitas pessoas podem segurar um bisturi em suas mãos, mas nem todas são cirurgiões. Se você colocar modelos lineares em um filtro, ele será um filtro linear, e se você colocar modelos não lineares em um filtro, ele será um filtro não-linear. O procedimento é universal (embora haja algumas variações dependendo dos dados iniciais, mas isso não importa).

Oi Sergei !

Será que é possível utilizar o modelo estatístico no filtro Kalman? Tanto o modelo linear como não linear e qualquer outro modelo determinístico é uma coisa, mas o modelo estatístico é outra.

 

Eis o que Sergei respondeu ao meu posto alguns meses atrás, Yuri.

 
Yurixx писал(а) >>

Oi Sergei !

Será que é possível utilizar um modelo estatístico no filtro Kalman? Um modelo linear ou não linear ou qualquer outro modelo determinístico é uma coisa, mas um modelo estatístico é outra bem diferente.

Também existem modelos estatísticos por aí. Aqui anexei um arquivo "Teoria dos fluxos aleatórios e FOREX" para ver como e a partir de que suposições o modelo de Singer é feito. Não é muito complicado. Se você precisar de algum esclarecimento, estou freqüentemente no Skype.

 
Mathemat >> :

Ao subtrair o valor atual da LR do preço, nos livramos perfeitamente das tendências, incluindo as não lineares.

Olá, caro Mathemat.
Peço desculpas antecipadamente se minha pergunta lhe parece muito simples e desinteressante, mas é muito importante para mim.
Em geral, sua discussão aqui me interessou muito.
Na página 17 deste tópico em 22.11.2007 às 14:12 você escreveu o seguinte:
"Ao subtrair o valor atual da LR do preço, nos livramos perfeitamente das tendências, incluindo as não lineares".
Você obtém novos valores de preço como resultado de tal operação, ou seja, uma nova série de cotações?
Agradeço antecipadamente, estou esperando por uma resposta.

 
prostoleha >> :

"Ao subtrair o valor atual da LR do preço, nos livramos perfeitamente das tendências, inclusive as não lineares".
Você obterá novos valores de preço como resultado de tal operação, ou seja, uma nova série de cotações?

Se você subtrair a regressão linear dos preços, é claro, você obtém algo mais flutuando em torno de zero, ao invés de preços.