트레이딩의 머신러닝: 이론, 모델, 실전 및 알고리즘 트레이딩 - 페이지 90

 

이 기사에 설명된 방법을 포함하여 다양한 자체 작성 유효성 검사 방법을 시도했습니다. 내 결론은 다음과 같습니다.

forex에서는 대상 변수와 예측 변수 사이에 엄격한 관계가 없으며, forex는 새 데이터를 계산하기 위해 찾아 적용할 수 있는 공식이 아닙니다. 모델이 할 수 있는 모든 것은 패턴을 찾고 새로운 데이터에 대한 거래 결과를 외삽하는 것입니다.
즉, 여러 점(알려진 대상 변수)이 있는 특정 다차원 공간(차원은 예측 변수의 수와 동일)이 있습니다. 모델은 공간의 점을 분리하는 이 공간에 초평면을 구축합니다("구매" 클래스와 "판매" 클래스). 이 초평면을 만드는 방법은 무한히 많습니다(간단한 경우 시트에 4개의 점을 그리고 그 사이에 곡선을 그려 곡선의 오른쪽에 2개, 왼쪽에 2개가 있도록 합니다. 곡선을 그리는 방법은 무한합니다.) 따라서 구성된 모델이 예측 변수에 대한 대상 변수의 올바른 종속성을 반영한다는 보장은 없습니다. 모델의 적절성을 확인하기 위해 검증이 사용됩니다. 일부 포인트는 훈련 중에 사용되지 않았으며, 모델이 대처했는지, 이러한 테스트 포인트에서 결과를 올바르게 표시할지 여부를 쉽게 알 수 있습니다.

모델이 유효성 검사를 올바르게 통과하지 못했다면 다음과 같은 여러 가지 이유 때문일 수 있습니다.
- 모델은 훈련 예제에만 있는 존재하지 않는 일부 종속성을 찾았습니다.
- 훈련용 데이터에는 테스트용 데이터에는 없는 특정 의존성이 있었습니다. 예를 들어, 테스트를 위한 모든 데이터가 나중에 취해져서 forex 기호의 동작이 변경된 경우
- 모델 자체가 실패한 그레인으로 초기화됩니다. 동일한 데이터에 대해 훈련된 모델이 다시 훈련시키려는 많은 시도와 함께 유효성 검사 중에 다른 결과를 제공하는 경우가 종종 있습니다.

특정 경우에 좋지 않은 결과를 초래한 원인은 알려져 있지 않습니다. 평가할 수 있는 것은 모델이 평균적으로 얼마나 좋은지뿐입니다. 모델을 수십 번 빌드하고 검증을 평가하십시오. 훈련/검증 데이터는 매번 새로 나누어야 합니다.
내가 신뢰할 수 있는 방법이라고 생각하는 것은 데이터를 50% / 50% 비율로 무작위로 나누는 것입니다(시간 기준이 아니라 모든 것이 고르게 혼합되도록 합니다(예: 교육의 경우 1,2,5,7 행, 3,4). ,6, 8), 첫 번째 부분에서 모델을 훈련한 다음 두 번째 부분에서 유효성을 검사하고 정확도를 사용하여 모델을 평가합니다. 이것을 50회 반복합니다(데이터를 2개의 무작위 부분, 훈련, 검증으로 다시 분할). 그런 다음 훈련 데이터의 평균 정확도와 검증 데이터의 평균을 계산합니다. 훈련 세트의 평균 정확도가 90%, 검증 세트의 평균 정확도가 80%라고 가정합니다. 전면 테스트의 정확도는 훨씬 더 낮을 것입니다. 저는 이 경험 법칙을 사용합니다. 차이를 계산하고(90%-80%=10%), 유효성 검사 결과에서 빼십시오(80%-10% = 70%). 전면 테스트에서 이러한 모델의 평균 정확도는 약 70%인 것으로 나타났습니다. 다음으로, 이 추정치를 70%에서 늘리기 위해 모델 매개변수와 예측 변수를 유전적으로 선택합니다.

그러나 나는 이 결과가 단지 평균 일 뿐이고 보장이 없다는 것이 마음에 들지 않습니다. 거래할 때의 실제 정확도는 운이 얼마나 나쁜지에 따라 60%에서 80%, 심지어 50%에서 90%입니다. 아무리 노력해도 최고의 모델을 잡는 데는 어째서인지 소용이 없다. 아마도 유일한 해결책은 찾은 최고의 매개변수와 예측 변수를 사용하여 수십 개의 모델을 만들고 대다수가 보이는 곳(모델 회의)에서 결과를 취하는 것입니다.

이것은 SanSanych가 주제의 시작 부분에서 말한 것과 밀접한 관련이 있습니다. 그의 조언에 따라 마지막 대조 샘플에 대해 알려진 데이터의 마지막 부분을 제거하는 것도 가능합니다. 이 데이터를 학습 및 검증에 사용하지 말고 모델 학습이 끝날 때까지 별도로 저장하면 됩니다. 그런 다음 이 데이터에 대해 완성된 모델 또는 의회를 확인하십시오. 이점은 모델이 제 시간에 새로운 데이터에 대처하는 방법을 보여줄 수 있다는 것입니다. 단점은 훈련 및 검증을 위해 남은 데이터가 적고 거래를 시작할 때 모델이 이미 약간 구식이라는 것입니다. 여기에 작은 뉘앙스가 있습니다. 이러한 제어 데이터의 결과가 마음에 들지 않고 이 섹션에서 좋은 결과를 보여줄 모델을 선택하기 시작했다면 이 데이터를 각각 검증에 사용하기 시작했습니다. 모델은 이미 그것들을 고려하여 선택되었습니다. 즉, 미래에 대한 작은 전망이 있음을 의미합니다. 제어 및 전체 작업은 의미를 잃습니다. 이 경우 제어 샘플을 전혀 만들지 않는 것이 더 쉽습니다.

 
트레이더 박사 :

이 기사에 설명된 방법을 포함하여 다양한 자체 작성 유효성 검사 방법을 시도했습니다. 내 결론은 다음과 같습니다.

forex에서는 대상 변수와 예측 변수 사이에 엄격한 관계가 없으며, forex는 새 데이터를 계산하기 위해 찾아 적용할 수 있는 공식이 아닙니다. 모델이 할 수 있는 모든 것은 패턴을 찾고 새로운 데이터에 대한 거래 결과를 외삽하는 것입니다.
즉, 여러 점(알려진 대상 변수)이 있는 특정 다차원 공간(차원은 예측 변수의 수와 동일)이 있습니다. 모델은 공간의 점을 분리하는 이 공간에 초평면을 구축합니다("구매" 클래스와 "판매" 클래스). 이 초평면을 만드는 방법은 무한히 많습니다(간단한 경우 시트에 4개의 점을 그리고 그 사이에 곡선을 그려 곡선의 오른쪽에 2개, 왼쪽에 2개가 있도록 합니다. 곡선을 그리는 방법은 무한합니다.) 따라서 구성된 모델이 예측 변수에 대한 대상 변수의 올바른 종속성을 반영한다는 보장은 없습니다. 모델의 적절성을 확인하기 위해 검증이 사용됩니다. 일부 포인트는 훈련 중에 사용되지 않았으며, 모델이 대처했는지, 이러한 테스트 포인트에서 결과를 올바르게 표시할지 여부를 쉽게 알 수 있습니다.

모델이 유효성 검사를 올바르게 통과하지 못했다면 다음과 같은 여러 가지 이유 때문일 수 있습니다.
- 모델은 훈련 예제에만 있는 존재하지 않는 일부 종속성을 찾았습니다.
- 훈련용 데이터에는 테스트용 데이터에는 없는 특정 의존성이 있었습니다. 예를 들어, 테스트를 위한 모든 데이터가 나중에 취해져서 forex 기호의 동작이 변경된 경우
- 모델 자체가 실패한 그레인으로 초기화됩니다. 동일한 데이터에 대해 훈련된 모델이 다시 훈련시키려는 많은 시도와 함께 유효성 검사 중에 다른 결과를 제공하는 경우가 종종 있습니다.

특정 경우에 좋지 않은 결과를 초래한 원인은 알려져 있지 않습니다. 평가할 수 있는 것은 모델이 평균적으로 얼마나 좋은지뿐입니다. 모델을 수십 번 빌드하고 검증을 평가하십시오. 훈련/검증 데이터는 매번 새로 분할되어야 합니다.
내가 신뢰할 수 있는 방법이라고 생각하는 것은 데이터를 50% / 50% 비율로 무작위로 나누는 것입니다(시간 기준이 아니라 모든 것이 고르게 혼합되도록 합니다(예: 교육의 경우 1,2,5,7 행, 3,4). ,6, 8), 첫 번째 부분에서 모델을 훈련한 다음 두 번째 부분에서 유효성을 검사하고 정확도를 사용하여 모델을 평가합니다. 이것을 50회 반복합니다(데이터를 2개의 무작위 부분, 훈련, 검증으로 다시 분할). 그런 다음 훈련 데이터의 평균 정확도와 검증 데이터의 평균을 계산합니다. 훈련 세트의 평균 정확도가 90%, 검증 세트의 평균 정확도가 80%라고 가정합니다. 전면 테스트의 정확도는 훨씬 더 낮을 것입니다. 저는 이 경험 법칙을 사용합니다. 차이를 계산하고(90%-80%=10%), 유효성 검사 결과에서 빼십시오(80%-10% = 70%). 전면 테스트에서 이러한 모델의 평균 정확도는 약 70%인 것으로 나타났습니다. 다음으로, 이 추정치를 70%에서 늘리기 위해 모델 매개변수와 예측 변수를 유전적으로 선택합니다.

그러나 나는 이 결과가 단지 평균일 뿐이고 보장이 없다는 것이 마음에 들지 않습니다. 거래할 때의 실제 정확도는 운이 얼마나 나쁜지에 따라 60%에서 80%, 심지어 50%에서 90%입니다. 아무리 노력해도 최고의 모델을 잡는 데는 어째서인지 소용이 없다. 아마도 유일한 해결책은 찾은 최고의 매개변수와 예측 변수를 사용하여 수십 개의 모델을 만들고 대다수가 보이는 곳(모델 회의)에서 결과를 취하는 것입니다.

이것은 SanSanych가 주제의 시작 부분에서 말한 것과 밀접한 관련이 있습니다. 그의 조언에 따라 마지막 대조 샘플에 대해 알려진 데이터의 마지막 부분을 제거하는 것도 가능합니다. 이 데이터를 학습 및 검증에 사용하지 말고 모델 학습이 끝날 때까지 별도로 저장하면 됩니다. 그런 다음 이 데이터에 대해 완성된 모델 또는 의회를 확인하십시오. 이점은 모델이 적시에 새로운 데이터에 대처하는 방법을 보여줄 수 있다는 것입니다. 단점은 훈련 및 검증을 위해 남은 데이터가 적고 거래를 시작할 때 모델이 이미 약간 구식이라는 것입니다. 여기에 작은 뉘앙스가 있습니다. 이러한 제어 데이터의 결과가 마음에 들지 않고 이 섹션에서 좋은 결과를 보여줄 모델을 선택하기 시작했다면 이 데이터를 각각 검증에 사용하기 시작했습니다. 모델은 이미 그것들을 고려하여 선택되었습니다. 즉, 미래에 대한 작은 전망이 있음을 의미합니다. 제어 및 전체 작업은 의미를 잃습니다. 이 경우 제어 샘플을 전혀 만들지 않는 것이 더 쉽습니다.

모든 것을 올바르게 수행했습니다! ©

그러나 한 가지 중요한 뉘앙스가 있습니다. 교차 검증 및 상위 중첩 이력서 레이어의 경우 시간 내에 별도의 관찰을 수행해야 합니다. 글쎄, 또는 적어도 상위 계층의 경우 훈련 및 하위 CV와 일치하지 않는 날짜에서 희소 샘플을 가져옵니다.

결과는 더 나빠야 하지만 더 진실해야 합니다.

CV의 결과와 중첩된 CV(상관) 사이의 관계를 얻는 경우. 따라서 모델이 데이터에 적합합니다.
 
마법사_ :
아직 아님)))
7 보았다. 컷은 1년 반 전이나, 언제 봤는지 정확히 기억나지 않는 버전보다 좋지 않다. 창과 파일 통계에서 다르게 씁니다. 입력의 의미 선택
논쟁의 여지가 있고, rf 및 그 이상과 정면으로 비교되며 완전히 중요하지 않은 것에 높은 우선 순위를 지정할 수 있습니다. 가장 좋은 컷(창문에서)을 취하면 여전히 얼음이 아닙니다.
이 데이터에서 나는 적어도 92%를 얻습니다. 스트레이(있는 그대로)는 아직 실용상 거의 사용되지 않습니다. 개발 시도와 생각의 비행 - 존중.

물론 모든 IMHO. 지금 당장)))


우리가 Reshetov와 같은 수준의 사람을 다룰 때 다음을 안전하게 요구할 수 있습니다.

1. 아날로그 개요

2. 이러한 유사체에서 극복해야 할 단점의 표시

3. 이러한 단점을 제거하기 위한 메커니즘 표시(시장 경제에서 세부 사항을 숨길 수 있음)

4. 유사체와 개발의 비교. 이 비교는 기존 유사체의 이전에 나열된 모든 단점이 제거되었음을 증명해야 합니다. 그리고 그 결과는 아날로그보다 나쁘지 않은 도구였습니다.

이것이 Reshetov 수준의 사람이 수행하지 않은 경우 : 개발 및 생각의 비행 시도 - 존중.

 
산산이치 포멘코 :

그러면 다음을 안전하게 요구할 수 있습니다.

)))))))
 
마법사_ :
아직 아님)))
7 보았다. 컷은 1년 반 전이나, 언제 봤는지 정확히 기억나지 않는 버전보다 좋지 않다. 창과 파일 통계에서 다르게 씁니다. 입력의 의미 선택
논쟁의 여지가 있고, rf 및 그 이상과 정면으로 비교되며 완전히 중요하지 않은 것에 높은 우선 순위를 지정할 수 있습니다. 가장 좋은 컷(창문에서)을 취하면 여전히 얼음이 아닙니다.
이 데이터에서 나는 적어도 92%를 얻습니다. 스트레이(있는 그대로)는 아직 실용상 거의 사용되지 않습니다. 개발 및 생각의 비행 시도 - 존중.

물론 모든 IMHO. 지금 당장)))


HResults 창은 두 가지 모델로 구성된 위원회입니다. 예측자가 2개의 모델을 창에 저장한 파일을 보면, 이것은 이 두 모델의 위원회의 결과입니다. 이 같은....
 
마법사_ :
분명히 노트북은 압축되어 있지만 뒤틀리지 않았습니다.))) 그러나 비교를 위해 창에서 가져 왔습니다.
누군가에게 유용할 수도 있지만 불필요한 것으로 즉시 삭제했습니다 ...
일반적으로 나는 당신이 이 작업을 헛되이 했다고 생각합니다. 첫째, 그것은 출력 데이터와 관련하여 입력 데이터에 포함된 일반화 정보의 비율이라는 매우 중요한 질문에 답합니다. 그리고 둘째, 유리가 내가 그에게 제안한 것을 들으면 많은 질문을 닫을 폭탄이 될 것입니다. 불행히도 나는 모델이 미래에 어떻게 작동하는지 보기 위해 내 데이터에 대해 모델을 100% 훈련하지 못했습니다(가상으로 밝혀진 것처럼 일반화 능력을 증가시키는 데이터 조작 없이). 그러나 위원회의 일반화를 100% 얻은 후에는 각 모델이 동일한 100%, 즉 입력이 출력을 완전히 설명할 때 있는지 확인해야 합니다. 그러면 보일 것이다.... 그 동안 옵티마이저의 작동불능에 대한 결론은 시기상조이다. 또 다른 것은 우리 각자가 IDEAL 출력에 대한 모델을 구축하려고 한다는 것입니다. 불가능하지는 않더라도 매우 어렵습니다. 글쎄요, 출력이 이상적이지는 않지만 약간의 오류가 있는 경우..... 그게 흥미로운 점입니다..... 이익이 100핍인 신호가 아니라 -30핍 이상의 이익.... 이 가정에 대해 알면 신호에 대해 30핍 더 잘 발생하고 문제는 일반화 수준이 100%인 모델을 작성할 수 있다면 해결됩니다.
 
일반적으로 분류 모델을 구축할 때 기록의 순서는 그다지 중요하지 않고 모델이 100% 학습하는 것이 중요하며 가까운 장래에 동일한 이벤트에 대한 시장 반응이 동일해야 한다는 것이 중요합니다. 즉, 모순되는 데이터가 없다는 것입니다. 또 다른 점은 예측 모델의 경우 기록 순서가 중요하기 때문입니다. 이것은 분류와 예측의 차이점 중 하나입니다 .....
 

이것이 우리에게 도움이 될지 궁금합니다 .... 그래서 나는 그러한 것의 컴퓨팅 능력이 몇 배는 아니더라도 훨씬 더 높다는 것을 이해합니다 ....

https://hi-tech.mail.ru/news/compact-quantum-computer/?frommail=1

 
산산이치 포멘코 :
마이클 마르쿠카이테스 :
그리고 원하는 모든 사람. z1 아카이브에는 두 개의 파일 train 및 test가 포함되어 있습니다. Target의 경우 기차에서 모델을 빌드하고 테스트에 적용하고 결과를 %로 배치합니다(성공적으로 예측
사례) 두 샘플 모두(열차 = xx%, 테스트 = xx%). 방법과 모델은 말할 필요가 없고 숫자만 있으면 됩니다. 모든 데이터 조작이 허용됩니다.
및 추출 방법.
파일:
z1.zip  43 kb
 
마법사_ :
그리고 원하는 모든 사람. z1 아카이브에는 두 개의 파일 train 및 test가 포함되어 있습니다. Target의 경우 기차에서 모델을 빌드하고 테스트에 적용하고 결과를 %로 배치합니다(성공적으로 예측
사례) 두 샘플 모두(열차 = xx%, 테스트 = xx%). 방법과 모델은 말할 필요가 없고 숫자만 있으면 됩니다. 모든 데이터 조작이 허용됩니다.
및 추출 방법.

고맙습니다! 노력하겠습니다.

훈련된 모델이 평가되는 순간까지 테스트를 조사하지 않는다는 데 동의합시다. 나는 전에 이것에 대해 틀렸다.

즉, 우리는 얼굴이 파랗게 질릴 때까지 기차에서 최고의 모델을 훈련합니다. 2~3개의 모델이 있을 수 있습니다. 그런 다음 테스트를 위한 일회성 테스트입니다.

사유: