푸리에 변환을 사용하여 미래 예측 - 페이지 2

 
ANG3110 :

첨부된 지표를 그리지 않는 것만이 있습니다.

무승부. 차트를 왼쪽으로 스크롤하면 볼 수 있습니다.

 

병렬 스레드에서 '이것은 마시키노의 일이 아닙니다!' "이상적인 MA"를 사용한 예측에 대한 논의가 있습니다. 완벽한 평활화는 여기에서 수행된 것처럼 푸리에와 임계값을 사용해야만 얻을 수 있다고 생각합니다. 가장 정확한 추정치는 샘플링 창의 중간에 있습니다. MA가 아닌 유사한 연구를 수행해야하지만이 알고리즘을 기본으로 수행해야합니다.

둘째, 임계값( porog )의 값을 수학적으로 정당화할 수 있으므로 이 값의 열거(최적 검색) 값을 제거할 수 있습니다.

셋째, 예측 시간을 늘리려면 값의 현재 측정 정확도를 높이는 것이 필요합니다. 이는 두 가지 방법으로 가능합니다. 여러 통화를 동시에 분석하거나 견적 제공자 수를 늘리는 것입니다. 여기에 대해 'Tick Collectors'를 참조하세요. 최적화. VB(VBA)의 DDE'

 

미래를 보려면

차트 창의 설정에서 " 차트 이동 " 상자를 체크해야 합니다.

외부 정수 InPast=0,

extern int Futur=100-예측 막대 수

 

porog의 경우 기본적으로 이 부분을 다시 실행합니다. 그렇지 않으면 주파수가 임계값을 통과할 때 그래프가 크게 변경됩니다. 아마도 klot처럼 그대로 두거나 부드럽게 감소시킬 것입니다.

 

웃긴 새끼, 고마워!

이제 실제 상황에서 말하자면 테스터에서 테스트했습니다. 때로는 예보가 일치하기도 하고 때로는 정반대의 거울상을 보여주기도 하는데, 특히 이것은 강한 움직임이 있기 전이나 강한 움직임이 끝날 때 자주 발생합니다.

서로 다른 2의 거듭제곱 매개변수를 가진 3개의 지표(예: 8, 9 및 10)를 차트에 한 번에 적용하면 매우 흥미로운 그림을 얻을 수 있지만 종종 다른 방향을 봅니다. 하지만 주어진 3개의 지표 사이의 평균값을 사용하려고 하면???

시도하지 않았습니까?

 
m_keeper :

porog의 경우 기본적으로 이 부분을 다시 실행합니다. 그렇지 않으면 주파수가 임계값을 통과할 때 그래프가 크게 변경됩니다. 아마도 klot처럼 그대로 두거나 부드럽게 감소시킬 것입니다.

한 가지 더 해야 할 일은 FFT에서 벗어나는 것입니다(2의 거듭제곱은 최적의 창을 찾기 위한 최선의 선택이 아닙니다). 더 나은 이산 변환.

문턱에 대해서는 이상적인 관찰자인 니만 피어슨에 대한 기준이 있다. 이 이론을 적용하면 최적화(기록에서 최적 값 검색)에서 벗어날 수 있고 적응 임계값을 만들 수 있으며 구현 옵션이 상당히 많습니다.

 

디지털 카메라의 모서리가 이제이 주제에있는 것 같습니다. :) 그런 다음 여기에 그러한 생각 질문이 있습니다. 가격 차트에 대한 평균 스펙트럼 밀도를 취하면 이러한 유형의 그림이 나타납니다.


저주파의 경우 이것은 좋은 1/f이지만 고주파의 경우 이 법칙에서 눈에 띄는 편차가 있음을 알 수 있습니다. 이것은 얼마 전에 논의되었으며 기본 버전에서는 일종의 디지털화 노이즈가 있다고 제안했습니다. 이 구성 요소를 필터링하는 것이 유용할 수 있습니다. 즉, 전체 주파수 범위에 대해 깨끗한 1/f를 남겨둡니다. 그리고 문제는 그것을 하는 방법입니다. 이론적으로 스펙트럼 밀도 배열을 입력으로 수신하고 디지털 필터 계수를 출력으로 출력하는 일종의 절차가 필요합니다. 원칙적으로는 푸리에 진폭에 대한 가중치 함수를 염두에 두고 간단히 계산하지만 디지털 필터를 사용하는 것이 더 경제적입니다.
 

라이브러리에는 이제 __lib_FFT.mq4 파일이 포함되고 표시기 텍스트에는 #_lib_FFT.mq4가 포함되므로 그려지지 않습니다.

 
Prival :
m_키퍼 :

porog의 경우 기본적으로 이 부분을 다시 실행합니다. 그렇지 않으면 주파수가 임계값을 통과할 때 그래프가 크게 변경됩니다. 아마도 klot처럼 그대로 두거나 부드럽게 감소시킬 것입니다.

한 가지 더 해야 할 일은 FFT에서 벗어나는 것입니다(2의 거듭제곱은 최적의 창을 찾기 위한 최선의 선택이 아닙니다). 더 나은 이산 변환.

문턱에 대해서는 이상적인 관찰자인 니만 피어슨의 기준이 있다. 이 이론을 적용하면 최적화(기록에서 최적 값 검색)에서 벗어날 수 있고 적응 임계값을 만들 수 있으며 구현 옵션이 상당히 많습니다.

원칙적으로 학위 2는 제거하기가 매우 쉽습니다.

 w = 2 * pi / T ;

for ( int k = 0 ; k <= N ; k ++ )
   {                                                               
       sum_cos = 0.0 ; 
       sum_sin = 0.0 ;                                           
       for ( int n = 0 ; n < T ; n ++ ) 
       {
         sum_cos += Close [ n ] * MathCos ( k * n * w ) ; 
         sum_sin += Close [ n ] * MathSin ( k * n * w ) ;
       }
       ak [ k ] = sum_cos * 2 / T ; 
       bk [ k ] = sum_sin * 2 / T ;
   }
   ak [ 0 ] = ak [ 0 ] / 2 ;
   //------------------------------------
   for ( n = T - 1 ; n >= 0 ; n -- )
   {                                                         
       sum = 0.0 ;                                       
       for ( k = 0 ; k <= N ; k ++ )
       {                                                              
         sum += ak [ k ] * MathCos ( k * n * w ) + bk [ k ] * MathSin ( k * n * w ) ;
       }                                                              
       fx [ n ] = sum ;
   }

N은 고조파 수,

T - 기간.


최적의 창 또는 최적의 기간 T는 2가지 기준, 최소 표준 편차 및 고조파 진폭의 최대 합에 따라 선택하기 가장 쉽습니다. 그러나 시장 그림의 다중 파장 특성으로 인해 몇 가지 최적의 창이 있을 것입니다.

그리고 외삽을 시도할 때 사인과 코사인의 주기적인 특성으로 인해 이전 주기적인 구성 요소가 끝에 추가될 것이며 반복 확률이 상당히 높지만 위상, 특히 진폭은 여전히 다를 것이며 실제로 여기에서는 위상 검출기와 같이 위상을 조정하는 시간과 같은 모든 것이 필요합니다.


위상을 MathArctan() 으로 정의하는 것은 좋지 않습니다. arctan의 속성으로 인해 최소한 +/- pi/2를 고려해야 합니다.

위상을 조금 다르게 정의하는 것이 좋습니다.

 

FFT를 떠날 필요가 없으며 실제로 시리즈를 히트로 정확하게 나눌 필요가 없으며 카운팅 속도를 높이기 위해 나누는 것이지 엄격하게 2로 나누어야하기 때문이 아닙니다. 나는 어떤 길이의 시리즈와도 작동하는 FFT로 어떻게든 작업한 다음 어떻게든 mql에서 다시 작성할 것입니다.


이제 잘못된 예측을 결정할 수 있는 징후가 무엇인지 확인하려고 합니다.

여기에 n=9 및 n=10인 두 개의 사진이 있습니다.

두 경우 모두 창의 꼬리가 날카로운 점프를 했고 아마도 미래에 부딪쳤을 것입니다.

이제 시리즈의 전처리를 실험하고 있는데 갑자기 도움이 될 것입니다.


스무딩 조건을 변경했는데 이제 차트 저크가 없고 모든 것이 원활하게 작동합니다.


그래프가 다시 그려졌다는 사실에 관해서는 - 나는 이것에 아무런 문제가 없다고 본다.

종가 는 아직 과거가 아니지만 파동(푸리에의 경우)은 과거입니다.

그리고 우리는 각각의 새로운 바에서 그들에 대해 더 많이 배웁니다.

파일: