GRAIL로 가는 길에 엣지 효과 - 페이지 2

 
그리고 어떤 웨이블릿이 사용되었는지 Matlab에서 했습니다. 거기에는 에지 효과가 덜 눈에 띄는 것 같지만 물론 (먹을 수 밖에 없음) 확장 (근사)과 신경망을 적용하려고했습니다. 네트워크가 매우 멋진 학습 데이터에. 쉬운 그리드처럼 배우지만 새로운 그리드에서 - amba. 특히 지연 공간을 사용하는 경우 웨이블릿이 좋다는 결론에 도달했습니다. 그러나 거의 적용되지 않았습니다.
 
vladevgeniy писал(а) >>
그리고 어떤 웨이블릿이 사용되었는지 Matlab에서 했습니다. 거기에는 에지 효과가 덜 눈에 띄는 것 같지만 물론 (먹을 수 밖에 없음) 확장 (근사)과 신경망을 적용하려고했습니다. 네트워크가 매우 멋진 학습 데이터에. 쉬운 그리드처럼 배우지만 새로운 그리드에서 - amba. 특히 지연 공간을 사용하는 경우 웨이블릿이 좋다는 결론에 도달했습니다. 그러나 거의 적용되지 않았습니다.

Daubechies 웨이블릿을 사용했습니다. Meyer 웨이블릿은 에지 효과에 덜 취약하지만 아직 시도하지 않았다고 합니다.

사실 각 방법을 프로그래밍하는 데 많은 시간이 소요됩니다.

matlab 웨이블릿은 어떻습니까? matlab에서 일한 적이 없습니다.

확장 vsmysle 다항식? 얼마나 성공적이었습니까?

 
Desperado писал(а) >>

교차 수준은 매우 매력적인 결과를 제공하지 않습니다. 그것은 나에게도 일어났다.

지표에서 최고점과 최저점의 분포는 MO가 다른 경우에만 가우스 법칙을 따릅니다.

최고는 약 0.3이고 최저는 -0.3입니다.

막대가 높을수록 신호가 더 안정적이고 더 적습니다.

그리고 월 200포인트 적립도 재미없어요 :)

예, 불행히도 왜곡 또는 지연입니다.

나는 정규 가우스 분포를 좋아하지 않습니다. 더 나은 로그 노멀. 그러나 불행히도 이것은 모든 사람에게 적합하지 않습니다. 피팅으로 근사하는 것이 합리적이라는 결론에 이르렀습니다(위에서 설명한 대로). 결과가 있거나 흥미로운 것이 있으면 이미 분포 함수를 선택하십시오. 일반적으로 편차가 크지 않으므로 신뢰할 수 있습니다.

 
Desperado, Matlab 웨이블릿 도구 상자에 있는 모든 Matlab 것들. 필요한 전개도와 상세도 및 근사치를 구하는 것이 가능합니다. M 함수를 작성한 다음 transitional dll을 작성하고 dll을 통해 mt에 연결합니다. 나는 Mayer도 거기에 있다고 생각합니다. 아니면 아마 기억이 나지 않을 수도 있습니다. 그러나 Matlab 행렬을 일반 변수로 또는 그 반대로 변환하는 데 어려움을 겪었지만 프로그래밍 시간을 절약할 수 있습니다. 델파이로 작성된 잘 알려진 라이브러리를 C++로 다시 작성해 보았습니다(인터넷에 많은 곳이 있습니다). 그래서 가장 강한 에지 왜곡이 있었습니다. 그러나 Matlab에는 그런 것이 없지만 비뚤어지기는 합니다(추세와 함께 가장자리를 따라 갈고리를 그리는 것을 좋아함). matlab에서 원하는 웨이블릿을 빌드해 보십시오. 결과가 마음에 들면 dll을 통해 mt에 연결할 수 있습니다.
 
vladevgeniy писал(а) >>
Desperado, Matlab 웨이블릿 도구 상자에 있는 모든 Matlab 것들. 필요한 전개도와 상세도 및 근사치를 구하는 것이 가능합니다. M 함수를 작성한 다음 transitional dll을 작성하고 dll을 통해 mt에 연결합니다. 나는 Mayer도 거기에 있다고 생각합니다. 아니면 아마 기억이 나지 않을 수도 있습니다. 그러나 Matlab 행렬을 일반 변수로 또는 그 반대로 변환하는 데 어려움을 겪었지만 프로그래밍 시간을 절약할 수 있습니다. 델파이로 작성된 잘 알려진 라이브러리를 C++로 다시 작성해 보았습니다(인터넷에 많은 곳이 있습니다). 그래서 가장 강한 에지 왜곡이 있었습니다. 그러나 Matlab에는 그런 것이 없지만 비뚤어지기는 합니다(추세와 함께 가장자리를 따라 갈고리를 그리는 것을 좋아함). matlab에서 원하는 웨이블릿을 빌드해 보십시오. 결과가 마음에 들면 dll을 통해 mt에 연결할 수 있습니다.

매우 감사합니다. 사실 저는 델프를 사용했어요 :) 모듈만 있어서 라이브러리로 재작업했습니다.

먼저 Matlab을 찾아보겠습니다.

 
infinum13 писал(а) >>

나는 정규 가우스 분포를 좋아하지 않습니다. 더 나은 로그 노멀. 그러나 불행히도 이것은 모든 사람에게 적합하지 않습니다. 피팅으로 근사하는 것이 합리적이라는 결론에 이르렀습니다(위에서 설명한 대로). 결과가 있거나 흥미로운 것이 있으면 이미 분포 함수를 선택하십시오. 일반적으로 편차가 크지 않으므로 신뢰할 수 있습니다.

나는 당신의 알고리즘을 시도했습니다. 원칙적으로 예상대로 작은 소음을 제거합니다. 그것은 작은 기간과 큰 기간 동안 잘 작동합니다.

내가 그것으로 뭔가를 생각해낼 수 있는지 볼게요.

그 결과는 빨간색 선으로 표시됩니다. 그리고 녹색 선 같은 것이 필요합니다.

 

그것은 녹색 선과 같으며 높은 분해 수준에서 matlab에서 나타납니다. 이것은 한 줄의 코드로 수행됩니다. 특별한 웨이블릿 잡음 제거 모드가 있습니다. 웨이블릿 유형을 선택하는 데 몇 가지 매개 변수가 더 있습니다. 주요 작업은 전환 dll을 만드는 것입니다. 델파이 모듈의 에지에는 매우 강력한 효과가 있습니다. 그렇습니다. 어떻게 되었는지는 모르겠지만, matlab에서는 그것들이 많이 줄어들었고, 때로는 아예 존재하지 않는 것처럼 보이기도 했습니다.

마지막 matlab은 거의 4GB의 토렌트에 있습니다.)))) 사용하는 것이 좋습니다. 나는 확인했고 dll은 정상적으로 컴파일되고 잘 맞습니다.

 

첨부 파일의 기사에서:

우리의 응용 프로그램(예측)은 최종 값이 우리에게 매우 중요하다는 점을 지적합니다. 우리의 시계열은 유한하며 n, n-1, n-2, ... 값이 가장 중요합니다. 대칭 웨이블릿 함수는 이러한 경계(또는 에지)를 처리하는 데 문제가 있습니다. 또한 이러한 계수가 "미래" 데이터 값에서 계산된 경우 웨이블릿 계수를 사용할 수 없습니다. asymmetric filter 를 사용하면 이 문제를 해결할 수 있습니다. 이러한 웨이블릿 함수는 우리에게 중요한 에지를 적절하게 다룰 수 있습니다. 경계를 구성하는 우리 시계열의 첫 번째 값은 결과적으로 임의로 처리될 수 있지만 이는 실제적인 결과는 아닙니다.

내가 이해하는 비대칭 함수는 시계열의 이전 값에만 구축됩니다.

대칭 - 과거와 미래. 예를 들어 다음은 CDF 9/7 알고리즘에서 가져온 것입니다.

// 예측 1

a=-1.586134342;

(i=1; i<n-2; i+=2) {

x[n-1]+=2*a*x[n-2];

}

x[i]+=a*(x[i-1]+x[i+1]);

마지막 줄은 가장자리 효과를 만듭니다.

그런데 기사에 따르면 칠면조는 다음과 같이 썼습니다.

여기서 각 웨이블릿 계수는 시리즈의 이전 값에 대해서만 계산됩니다.

물론 다음을 정렬할 수 있습니다.

미지의 영역은 대칭 함수이며 x[n-1]+=2*a*x[n-2]와 같은 것으로 채워집니다.

이론상 다시 그려집니다.

누가 놀고 싶어하는지, 칠면조 가 여기 있습니다 .

 
vladevgeniy писал(а) >>

그것은 녹색 선과 같으며 높은 분해 수준에서 matlab에서 나타납니다. 이것은 한 줄의 코드로 수행됩니다. 특별한 웨이블릿 잡음 제거 모드가 있습니다. 웨이블릿 유형을 선택하는 데 몇 가지 매개 변수가 더 있습니다. 주요 작업은 전환 dll을 만드는 것입니다. 델파이 모듈의 에지에는 매우 강력한 효과가 있습니다. 그렇습니다. 어떻게 되었는지는 모르겠지만, matlab에서는 그것들이 많이 줄어들었고, 때로는 아예 존재하지 않는 것처럼 보이기도 했습니다.

마지막 matlab은 거의 4GB의 토렌트에 있습니다.)))) 사용하는 것이 좋습니다. 나는 확인했고 dll은 정상적으로 컴파일되고 잘 맞습니다.

RTFM 스타일의 질문에 대해 사과드립니다. 하지만 간단히 설명해 주시겠습니까?

MatLab에서 DLL을 만들고 MT4에서 호출하는 방법은 무엇입니까?

가능하시면 예시를 들어주세요.

 

아, 몇 달 전만 해도 쉬웠을 텐데. 지금은 이미 잊어버렸습니다. 그러나 표준에 따른 matlab에는 도움말에 설명이 있습니다. 일반적으로 matlab에는 매우 고품질의 도움말이 있습니다. 여기 보세요, 어렵지 않습니다. 컴파일 후에 dll과 lib 파일과 몇 가지 덜 중요한 파일이 생성됩니다. m 파일에는 Matlab 언어로 된 함수가 있으며 이 함수는 중간 dll에서 호출됩니다. 여기서 초기화를 먼저 호출하기만 하면 됩니다. 도움말에 있습니다. 하지만, 하지만 하나가 있습니다. 일반적인 sish 이중 문자열 변수 등을 mxArray로 추월한 다음 matlab 함수를 호출한 다음 sish 함수를 다시 호출해야 합니다.

C에서 mxArray로 작업하는 예

mxArray *inm = mxCreateDoubleMatrix(1, 크기, mxREAL); 입력 배열에 대해 크기 크기의 mxArray 변수가 생성됩니다.
memcpy(mxGetPr(inm), &in[0], size*sizeof(double)); 입력 배열의 변수로 채워짐

그런 다음 matlab 함수가 호출됩니다.

그런 다음 mxArray의 출력 배열은 double로 변환됩니다.

// ---------------------- mxArray를 double로 변환 ------
memcpy(출력, mxGetPr(출력), 크기*크기(이중));


이런, 지금 기억하기 어렵습니다.

mxArray 포함

#"mex.h" 포함

matlab 폴더에 있습니다