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

 
안드레이 딕 :
몇시에?

내가 알기로는 기사의 코드는 이미 발견된 포인트에 대한 거래를 시뮬레이션하는 데 적합하며 그냥 사용할 수 있습니다. ) 훌륭합니다.

예를 들어, 며칠(또는 일주일) 동안 기계를 작동한다고 가정해 보겠습니다. 어느 정도 예측 가능한 기간이라고 가정해 보겠습니다.

 
알렉세이 버나코프 :

내가 알기로는 기사의 코드는 이미 발견된 포인트에 대한 거래를 시뮬레이션하는 데 적합하며 그냥 사용할 수 있습니다. ) 훌륭합니다.

글쎄, 며칠 동안 기계를 작동한다고 가정 해 봅시다.

알고리즘 자체는 작동하고 있으며 개선이 필요하지 않지만(실제로 결함을 찾지 못한다면) 이상적인 zz가 있는 코드 섹션은 원칙적으로 약간의 개선으로 거래의 모방으로 사용될 수 있습니다.

며칠 동안? - 아니요, 몇 시간 또는 몇 분이라도 훨씬 빠르게 좋은 결과를 얻을 수 있다고 생각합니다. 기사에서 검색은 몇 초 정도 걸렸지만 100 막대가있었습니다. 귀하의 경우에는 당연히 더 길어질 것입니다. 실험적으로, 주어진 시간 내에 주어진 정확도로 결과를 얻을 수 있도록 Epoch 수를 선택할 수 있습니다.

 
안드레이 딕 :

알고리즘 자체는 작동하고 있으며 개선이 필요하지 않지만(실제로 결함을 찾지 못한다면) 이상적인 zz가 있는 코드 섹션은 원칙적으로 약간의 개선으로 거래의 모방으로 사용될 수 있습니다.

며칠 동안? - 아니요, 몇 시간 또는 몇 분이라도 훨씬 빠르게 좋은 결과를 얻을 수 있다고 생각합니다. 기사에서 검색은 몇 초 정도 걸렸지만 100 막대가있었습니다. 귀하의 경우에는 당연히 더 길어질 것입니다. 실험적으로, 주어진 시간 내에 주어진 정확도로 결과를 얻을 수 있도록 Epoch 수를 선택할 수 있습니다.

그래서. 고맙습니다. 나는 노력할 것이다. 기록 전체에 걸쳐 분 막대에 대한 항목을 생성하고 싶습니다. 그리고 실험에서 대체하십시오.

당신이 한 훌륭한 일. 그리고 이상적인 입력이 반드시 33의 논리와 일치하지 않는다는 사실은 사소하고 중요한 결론입니다.

 
알렉세이 버나코프 :

그래서. 고맙습니다. 나는 노력할 것이다. 기록 전체에 걸쳐 분 막대에 대한 항목을 생성하고 싶습니다. 그리고 실험에서 대체하십시오.

당신이 한 훌륭한 일. 그리고 이상적인 입력이 반드시 33의 논리와 일치하지 않는다는 사실은 사소하고 중요한 결론입니다.

그리고 감사합니다. 어떤 이유로 대담한 것에주의를 기울인 사람은 거의 없었습니다 ...

추가하고 싶습니다. 이 기사 는 상품의 평균 스프레드를 고려한 IIZ의 최적화 에 대해 다루지만, 잠시 후 나는 최적화가 스프레드 없이 수행되어야 하고 테스트 거래가 되어야 한다는 아이디어에 이제 기울어지거나 확신할 수 있습니다. 런은 이미 스프레드로 계산되어야 합니다.

 
안드레이 딕 :

그리고 감사합니다. 어떤 이유로 대담한 것에주의를 기울인 사람은 거의 없었습니다 ...

추가하고 싶습니다. 이 기사는 상품의 평균 스프레드를 고려한 IIZ의 최적화에 대해 다루지만, 잠시 후 나는 최적화가 스프레드 없이 수행되어야 하고 테스트 거래가 되어야 한다는 아이디어에 이제 기울어지거나 확신할 수 있습니다. 런은 이미 스프레드로 계산되어야 합니다.

"각 막대에서"를 최적화하려면 스프레드를 당연히 고려해야 합니다. 그렇지 않으면 다음 시작 가격 방향으로 각 막대에 어리석은 거래가 있을 것입니다. 스프레드는 문제를 비선형으로 만들고 최적의 트랜잭션 구성을 결정합니다.
 
알렉세이 버나코프 :

LSTM은 나중에 논의될 것입니다.

지금까지 제 동료와 저는 테스트에서 R^2 0.2에 이르렀습니다. 완전 연결 계층의 여러 컨볼루션 필터와 여러 뉴런. 이론적으로 재발이 필요하지 않습니다. 기능의 올바른 분리가 필요합니다.

지금까지 내 작업의 결과는 다음과 같습니다(테스트 세트의 모든 R^2 추정).

아리마: 0.14

MLP(완전히 연결된 NN): 0.12-0.15

GBM: 0.1

Convolutional Net(단순, 잘 발달되지 않음): 최소 0.2

따라서 모델링 된 종속성은 실제로 그렇게 간단하지 않고 인기있는 방법이 대처하지 못하는 것으로 나타났습니다. 우리는 convolutional network 를 개선할 것입니다.

그럼에도 불구하고 누군가가 문제(일종의 반복적인 네트워크)를 해결하려고 할 시간이 있다면 그 결과를 공유해 주십시오.

 
알렉세이 버나코프 :

지금까지 내 작업의 결과는 다음과 같습니다(테스트 세트의 모든 R^2 추정).

아리마: 0.14

MLP(완전히 연결된 NN): 0.12-0.15

GBM: 0.1

Convolutional Net(단순, 잘 발달되지 않음): 최소 0.2

따라서 모델링 된 종속성은 실제로 그렇게 간단하지 않고 인기있는 방법이 대처하지 못하는 것으로 나타났습니다. 우리는 convolutional network를 개선할 것입니다.

그럼에도 불구하고 누군가가 문제(일종의 반복적인 네트워크)를 해결하려고 할 시간이 있다면 그 결과를 공유해 주십시오.

여전히 그의 문제를 해결하기 위해 노력하고 있습니다. 또한 맨 위에 완전히 연결된 레이어가 있는 컨볼루션 신경망을 사용했습니다.

테스트에서 얻은 최상의 R^2 결과는 0.23입니다.

천정인것 같습니다. 네트워크의 복잡성을 증가시키는 것은 더 이상 아무 것도 제공하지 않습니다. 그러나 네트워크의 출력은 완벽하지 않습니다. 이것은 모델에 대한 응답의 산점도입니다. 좁은 경사 구름이 예상됩니다. 실제로 복잡한 응답 함수는 네트워크에 의해 완전히 모델링되지 않음(점프는 인식되지 않음)을 알 수 있습니다. 네트워크에서 내보낸 기능은 내가 넣은 것보다 훨씬 부드럽습니다.


아마도 NN에 직접 익숙한 사람들은 그러한 복잡한 기능을 모델링하는 방법에 대해 생각할 것입니다(예):

레이어의 수를 늘리면 뉴런?

사실 입력 변수를 준비하지 않고 인기있는 모든 방법을 병합했습니다. 컨볼루션은 잠재적으로 필요한 기능(적분, 미분, 비선형 평활화)을 잠재적으로 찾아낼 수 있으며 신경망은 이미 이에 대해 정상적으로 훈련되었습니다. 이것이 컨볼루션의 힘입니다.

그건 그렇고, 신경망에 관한 그의 기사에서 Mr. Perervenko는 이러한 유형의 네트워크에 대해 아무 말도 하지 않았습니다. 글 전체에서 단 하나의 언급만 찾았습니다. 그리고 시계열에 대한 적용 가능성의 문제를 (사려 깊게) 여는 것이 가능할 것입니다.

알렉세이

 

가장 중요한 것은 더 많은 정보를 제공하는 것입니다.

그리고 학습 예.

 
바딤 쉬쉬킨 :

가장 중요한 것은 더 많은 정보를 제공하는 것입니다.

그리고 학습 예.

충분 해.
 

은닉층에 뉴런이 많을수록 뉴런으로 설명할 수 있는 기능이 더 복잡해지고 그 안에 더 많은 은닉층과 뉴런이 필요합니다.

그러나 문제는 뉴런이 목표를 설명하기 위해 연속적인 덧셈과 곱셈(예: 활성화 함수의 S자형)을 사용한다는 것입니다. 즉, 분명히 원래 함수가 아니라 일종의 근사값이 될 것입니다. 그리고 이 근사값은 훈련 데이터의 일부 기능을 기억할 것이므로 새 데이터에서 올바르게 작동하지 않을 것입니다. 따라서 때때로 훈련을 중단하고 테스트 세트의 오류가 감소했는지 확인하고 모든 것이 정상이면 추가 훈련을 계속해야 합니다. 어느 시점에서 테스트 데이터의 오류가 커지기 시작하면 학습을 완전히 중지해야 합니다.

또한 뉴런의 출력은 활성화 함수에 의해 제한됩니다. 대중적인 것의 경우, sigmoid는 (0; 1), relu는 [0; inf)입니다. 목표 값은 다른 간격으로 조정해야 하며 간격(-7, 7)의 출력은 많은 패키지에서 단순히 달성할 수 없습니다.

사유: