신경망을 이용한 외환 시장 예측


10

ANN을 사용하여 거래 통화, 바람직하게는 USD / EUR 또는 USD / GBP를 자동화하고 싶습니다. 나는 이것이 어렵고 간단하지 않을 수 있음을 알고 있습니다. 나는 이미 몇 가지 논문을 읽고 실험을 해 보았지만 많은 운이 없었습니다. 이 작업을 수행하기 위해 전문가로부터 조언을 얻고 싶습니다.

여기까지 내가 한 일이 있습니다.

  1. 2013 년 7 월 한 달 동안의 틱 데이터가 표시됩니다. 입찰 / 요청 / 입찰 수량 / 요청 수량이 있습니다.
  2. 하루 종일 오후 12 시부 터 오후 14 시까 지 모든 진드기를 추출했습니다.
  3. 이 데이터에서 각 항목이 n 개의 입찰 값으로 순서대로 구성된 데이터 세트를 작성했습니다.
  4. 이 데이터를 사용하여 n-1 개의 입력으로 ANN을 훈련시키고 출력은 예측 된 n 번째 입찰 값입니다.
  5. ANN은 n-1 개의 입력 뉴런, (n-1) * 2 + 1 개의 숨겨진 뉴런 및 1 개의 출력 뉴런을 가졌다. 입력 레이어에는 선형 TF가 있고 숨겨진에는 로그 TF가 있고 출력에는 선형 TF가있었습니다.
  6. 먼저 n-125로 백 전파 한 다음 10으로 네트워크를 학습했습니다.

두 n 모두에 대해 MSE는 0.5 미만으로 떨어지지 않았으며 전체 교육 중에 해당 값을 유지했습니다. 이것이 시계열이 완전히 임의적 일 수 있다고 가정하면, R 패키지를 사용하여 데이터 세트 (pacf)에서 부분 자기 상관을 찾았습니다. 이것은 2 및 3 시차에 대해서만 0이 아닌 값을 제공했습니다.

질문 1 : 이것이 정확히 무엇을 의미합니까?

그런 다음 허스트 지수를 사용하여 임의성을 평가했습니다. R에서 hurst (values)는 0.9 이상의 값을 나타 냈습니다.

질문 2 : 그것은 거의 무작위로되어 있습니다. 0.5에 가까운 값을 가져야합니까?

나는 n = 3으로 ANN 훈련을 반복했다. ANN은 교육을 받았으며 MSE에 대해 상당히 낮은 가치를 얻을 수있었습니다. 그러나이 ANN의 계산 결과는 (n-1) 번째 입찰 값과 크게 다르지 않습니다. ANN은 다음 입찰로 마지막 입찰을하는 것 같습니다! 다른 네트워크 구조 (모든 멀티 레이어 인식), 다른 교육 매개 변수 등을 시도했지만 결과는 동일합니다.

질문 3 : 정확도를 어떻게 향상시킬 수 있습니까? 역 전파 이외의 다른 훈련 방법이 있습니까?


과거 값을 미래의 지표로 사용할 때 1 / f 노이즈를 예측하는 것보다 더 잘 수행 할 것인지 잘 모르겠습니다. scholarpedia.org/article/1/f_noise#Stock_markets_and_the_GNP- 지금까지의 결과는 그와 일치하는 것 같습니다. 아마도 향후 환율과 상관이있는 다른 가능한 기능을 살펴보아야 할 것입니다. 이것이 쉬웠다면 더 풍부한 데이터 과학자가있을 것입니다.
Neil Slater

예, 아마도 다른 변수가 시계열 값 자체보다 더 많은 다음 값에 기여하고 있습니다. 포인터 주셔서 감사합니다.
user1300

답변:


6

보고있는 결과는 교육 제품의 부산물 neural nets이 아니라이 작업에 적합하지 않습니다. Neural nets효과적으로 여러 간단한 함수를 구성하여 고차 비선형 함수를 생성하는 수단입니다. 신경망을 매우 복잡한 패턴에 맞출 수 있기 때문에 이것은 종종 정말 좋은 것입니다.

그러나 증권 거래소에서는 복잡한 패턴을 거래 할 때 빠르게 쇠퇴합니다. 복잡한 패턴을 감지하면 일반적으로 단기적으로 복잡한 패턴이므로 유용한 결과를 생성하지 않습니다. 또한 선택한 측정 항목에 따라 실제로 투자에서 보상하지 않는 여러 가지 방법 (예 : 마지막 값을 예측하는 것)이 있습니다.

또한 주식 시장은 놀랍게도 혼란스러워 neural net과적 합을 초래할 수 있습니다 . 이는 학습 패턴이 일반화되지 않음을 의미합니다. 하루 종일 재고가 감소하고 재고가 상대적으로 단기적으로 만 보이기 때문에 항상 감소 할 것이라고 결정하는 라인을 따라 뭔가가 있습니다. 대신 보다 일반적이고 덜 복잡한 패턴을 식별하는 ridgeand와 같은 기술 robust regression이 더 좋습니다.

비슷한 이유로 Kaggle의 경쟁에서 이겼습니다 robust regression. 신경망의 복잡한 복잡한 함수보다 낮은 다항식 차수의 함수를 찾는 얕은 학습 모델로 전환하면 더 나은 결과를 볼 수 있습니다.


큰 감사합니다. 나는 강력한 회귀를 평가하고 어떻게 진행되는지 볼 것이다.
user1300

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.