O estocástico tem a desagradável propriedade de mudar seus valores retroativamente, especialmente se os valores forem retirados de prazos mais altos.
Se não fosse por este problema - seria difícil encontrar um indicador melhor!
E é difícil encontrar um indicador melhor!
O estocástico tem a desagradável propriedade de mudar seus valores retroativamente, especialmente se os valores forem retirados de prazos mais altos.
Se não fosse por este problema, seria difícil encontrar um indicador melhor!
Isto é um absurdo. Onde você já viu um estocástico assim?
O estocástico não é de modo algum um indicador simétrico. Como muitas pessoas pensam. A faixa dinâmica do indicador devido à sua estrutura retrata de maneira diferente os movimentos de preços para cima e para baixo!
Não. 99/1.
Você sabia que o código estocástico completo está disponível em: 'Stochastic Oscillator, Stochastic' (Oscilador estocástico, estocástico)
Você se importaria de apontar seu dedo para onde no código que é responsável:
- "ao abrir uma posição de VENDA às vezes nos coloca inicialmente em desvantagem"?
- "O estocástico tem a desagradável propriedade de mudar seus valores retroativamente"?
Aqui está uma prova clara da assimetria do estocástico.
O canal pendurado no indicador está constantemente se estreitando na parte inferior e se alargando na parte superior. Ou será que temos que passar aborrecidamente pelos números aqui para descobrir a fórmula?
Se olharmos superficialmente para a fórmula estocástica, já podemos assumir com grande probabilidade que a unipolaridade do indicador é "a culpa" da assimetria!
E não posso dizer nada sobre a mudança dos "valores retrógrados", eu não me deparei com isso.
O que faria uma fórmula "espelho"?
%K = 100*SUM (MAX (HIGH, Pk)-CLOSE), Sk) / SUM (MAX (HIGH, Pk) - MIN (LOW, Pk)), Sk)
É difícil dizer logo de cara. Você provavelmente precisará escrever o código para o indicador do espelho. Compare sua configuração na tabela.
Para o comércio automatizado, qualquer diferença na exibição será significativa. Entre para Comprar usando um indicador normal. Use um indicador de espelho para entrar em Vender.
Bem, o código fonte está disponível, é fácil de substituir. Mas para a percepção será mais natural por idéia
%K = 100*(1-SUM (MAX (HIGH, Pk)-CLOSE), Sk) / SUM (MAX (HIGH, Pk) - MIN (LOW, Pk), Sk))
Se olharmos superficialmente para a fórmula estocástica, já podemos assumir com grande probabilidade que a unipolaridade do indicador é "a culpa" da assimetria!
E não posso dizer nada sobre a mudança dos "valores retrógrados", eu não me deparei com isso.
- No indicador padrão
iStochastic
High and Close formado por Bid - esse é que é o ponto. Este é um erro grosseiro!!! Especialmente para os estocásticos!!! E especialmente em períodos pequenos!!!Não sou um programador, não julgue severamente, melhorei o estocástico padrão para mim mesmo. Funciona corretamente:
//+------------------------------------------------------------------+ //| $Stochastic. mq4 | //| Vladimir | //+------------------------------------------------------------------+ #property indicator_separate_window #property indicator_minimum 0 #property indicator_maximum 100 #property indicator_level1 80 #property indicator_level2 50 #property indicator_level3 20 #property indicator_buffers 2 #property indicator_color1 LightSeaGreen #property indicator_color2 Red //---- input parameters extern int KPeriod=6; extern int DPeriod=2; extern int Slowing=1; //---- buffers double MainBuffer[]; double SignalBuffer[]; double HighesBuffer[]; double LowesBuffer[]; //---- int draw_begin1=0; int draw_begin2=0; double CHigh,CClose; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { string short_name; //---- 2 additional buffers are used for counting. IndicatorBuffers(4); SetIndexBuffer(2, HighesBuffer); SetIndexBuffer(3, LowesBuffer); //---- indicator lines SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0, MainBuffer); SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1, SignalBuffer); //---- name for DataWindow and indicator subwindow label short_name="Stochastic("+KPeriod+","+DPeriod+", "+Slowing+")"; IndicatorShortName(short_name); SetIndexLabel(0,short_name); SetIndexLabel(1,"Signal"); //---- draw_begin1=KPeriod+Slowing; draw_begin2=draw_begin1+DPeriod; SetIndexDrawBegin(0,draw_begin1); SetIndexDrawBegin(1,draw_begin2); //---- CHigh=MarketInfo(Symbol(),MODE_SPREAD)*MarketInfo(Symbol(),MODE_POINT);// Вычисляем спред CClose=CHigh/2.0;// Спред пополам //---- return(0); } //+------------------------------------------------------------------+ //| Stochastic oscillator | //+------------------------------------------------------------------+ int start() { int i,k; int counted_bars=IndicatorCounted(); double price; //---- if(Bars<=draw_begin2) return(0); //---- initial zero if(counted_bars<1) { for(i=1;i<=draw_begin1;i++) MainBuffer[Bars-i]=0; for(i=1;i<=draw_begin2;i++) SignalBuffer[Bars-i]=0; } //---- minimums counting i=Bars-KPeriod; if(counted_bars>KPeriod) i=Bars-counted_bars-1; while(i>=0) { double min=1000000; k=i+KPeriod-1; while(k>=i) { price=Low[k]; if(min>price) min=price; k--; } LowesBuffer[i]=min; i--; } //---- maximums counting i=Bars-KPeriod; if(counted_bars>KPeriod) i=Bars-counted_bars-1; while(i>=0) { double max=-1000000; k=i+KPeriod-1; while(k>=i) { price=High[k]+CHigh; if(max<price) max=price; k--; } HighesBuffer[i]=max; i--; } //---- %K line i=Bars-draw_begin1; if(counted_bars>draw_begin1) i=Bars-counted_bars-1; while(i>=0) { double sumlow=0.0; double sumhigh=0.0; for(k=(i+Slowing-1);k>=i;k--) { sumlow+=Close[k]+CClose-LowesBuffer[k]; sumhigh+=HighesBuffer[k]-LowesBuffer[k]; } if(sumhigh==0.0) MainBuffer[i]=100.0; else MainBuffer[i]=sumlow/sumhigh*100; i--; } //---- last counted bar will be recounted if(counted_bars>0) counted_bars--; int limit=Bars-counted_bars; //---- signal line is simple movimg average for(i=0; i<limit; i++) SignalBuffer[i]=iMAOnArray(MainBuffer,Bars,DPeriod, 0, MODE_SMA, i); //---- return(0); } //+------------------------------------------------------------------+
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Eu acho que - Stochastic é um indicador bastante promissor para o comércio automático.
Mas afinal não é tão simples assim! Fiz um Expert Advisor muito simples (cerca de dez linhas) baseado em estocástico sem nenhum "excesso".
Entrada - travessia da linha principal da linha de sinal. Portanto, o algoritmo é baseado no cruzamento da linha de sinal:
Em seguida, otimizei-o a olho nu e o testei durante um ano e meio. E aqui eu descobri, ou melhor, confirmei minha velha observação! O estocástico não é um indicador simétrico, como muitas pessoas pensam. A faixa dinâmica do indicador, devido à sua estrutura, reflete diferentemente os movimentos de preços para cima e para baixo!
É por isso que no comércio manual e automático às vezes estamos inicialmente em desvantagem ao abrir posições de VENDA.
Símbolo GBPUSD (Libra esterlina versus dólar americano) Período 4 Horas (H4) (2006.01.01 - 2007.08.31)
Modelo Todos os carrapatos (baseado em todos os menores períodos disponíveis com interpolação fractal de cada carrapato)
Qualidade de modelagem 90,00% Depósito inicial 10000,00
Lucro líquido 3667,00
Lucro total 9801.02
Perda total -6134.02 Rentabilidade 1,60
Pagamento previsto 13,94 Pagamento absoluto 202,02 Pagamento máximo 438,24 (3,25%) Pagamento relativo 3,25% (438,24)
Total de comércios 263
Posições curtas (% ganho) 134 (51,49%)
Posições longas (% ganho) 129 (67,44%)
Ofícios rentáveis (% do total) 156 (59,32%)
Perdas comerciais (% do total) 107 (40,68%)
O comércio mais lucrativo é de 130,00
Perda do negócio Deal Deal Loss -60,56
Comércio lucrativo médio 62,83
acordo perdido -57,33
Em quaisquer layouts, variantes e parâmetros, sempre se revela que negócios longos usando o indicador em vários pares são mais promissores do que negócios curtos.
Acontece sempre que o número de negócios lucrativos de longo prazo é de até 80
E das curtas - na melhor das hipóteses 50/55%.
E isto é verdade para as entradas pela linha de sinal, assim como pelos níveis de sobre-compra/sobre-venda, e até mesmo pela iOnArray.
A conclusão é que ao utilizar Stochastic, os parâmetros para compra e venda devem ser definidos separadamente. Isto é, aplicar dois indicadores.