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

 
Renat Fatkhullin #:
테스트 시스템은 세 가지 구성 요소로 구성됩니다:
1) 단일 로봇 템플릿
2) ONNX 모델에 데이터 입력/출력, 결과 해석 및 거래 생성을 제공하는 소스 코드의 model.mq5 래퍼
3) model.onnx - 신경 모델

MM에 대한 또 다른 질문, 여기에 제한이 있나요?

 
Maxim Dmitrievsky #:
나는 다른 사람의 실패를 희생하여 자신을 주장하려는 오프 토퍼의 욕망에 놀랐습니다. 분명히 그들은 흥미롭지 않은 존재 때문에 자신의 것이 충분하지 않은 것 같습니다 :))
이것은 명백한 이유로 더 합리적인 거래 방법을 사용할 수 없을 때 자신을 훌륭한 거래 실무자라고 느낄 수있게 해주는 것 같습니다).
 
Aleksey Vyazmikin #:

또 다른 MM 질문, 여기에도 제한이 있나요?

나는 또한 마틴 게일의 필요성에 대해 즉시 생각했습니다).
 
알겠습니다:
로봇 템플릿은 *.mq5 파일에 있는 조각으로 삽입해야 합니다.
코드의 일부로 삽입해야 하며, MQLInfoInteger() 속성인
MQL_TESTER?
 
Maxim Dmitrievsky #:

... 신경망은 아마도 파이썬에서만 더 어려울 것입니다.

이미 학습된 모델의 실행 수준에서 모든 전처리는 일반적으로 매우 간단하며 다른 NPS에서 다시 작성할 수 있습니다.

1. R의 신경망에는 문제가 없습니다. 포팅된 Torch(1.13.1)와 H2O가 있습니다. 둘 다 약간의 체조를 통해 ONNH로 변환할 수 있습니다.

2. 전처리의 복잡성은 프로그래머의 지식과 기술에 따라 달라집니다. 그리고 "어떤" 것도 다시 작성하거나 ONH로 변환할 수 없습니다.

콘테스트에 대한 질문은 다릅니다:

  • 자신의 예측자를 사용할 수 있습니까, 아니면 개발자가 제안한 일반적인 예측자를 모두가 사용할 수 있습니까?
  • 2023년 기록에 대해 테스트가 진행된다면 어떤 기간에 대해 모델을 학습시켜야 하나요? 같은 기간에 훈련된 모델을 제시할 수 있으며 테스트에서 좋은 결과를 보여줄 것입니다. 어떻게 테스트하나요?

" ONNX는 수학 함수의 전문 프로그래밍 언어에 비유할 수 있습니다. 필요한 모든 연산을 정의하고 머신 러닝 모델은이 언어로 출력 함수를 구현해야합니다." 이 "언어"가 지속적으로 확장되고 다소 빠르게 변경된다는 점을 고려하면 ONNX 코드 자체와 MCL에서의 구현을 디버깅하는 문제는 시간 낭비의 바다 일 것입니다.

그렇지 않으면 자유 시간이 많은 사람들에게 흥미로운 아이디어입니다.

행운을 빕니다.

 
도커가 진정한 솔루션이라고 말씀드리고 싶습니다.
모든 코드, 모든 언어, 모든 라이브러리.

하지만 그렇지 않습니다.
 
Vladimir Perervenko #:
  • 자체 예측자를 사용할 수 있나요, 아니면 개발자가 제안한 일반적인 예측자를 모두 사용할 수 있나요?
  • 2023년의 기록을 대상으로 테스트를 진행한다면 어느 기간에 모델을 학습시켜야 하나요? 같은 기간에 훈련된 모델을 제시할 수 있으며 테스트에서 좋은 결과를 보여줄 것입니다. 이를 어떻게 확인할 수 있나요?

제가 알기로는 자체 코드와 함께 자체 mqh 파일을 사용할 수 있다고 했으므로 자체 예측자를 사용할 수 있다고 생각합니다.

그러나 다시 말하지만 특별한 지표가 필요한 경우 리소스.... 를 통해 첨부 할 수 없습니다.
 

틱에 대해서만 표준 MA에서 템플릿을 확인합니다.

#include "EMA.mqh" // https://www.mql5.com/ru/code/download/22770/ema.mqh

input int inPeriod1 = 50;
input int inPeriod2 = 150;
input int inSensitivity = 100;

// https://www.mql5.com/ru/forum/86386/page3239#comment_49322318
double SignalONNX( const MqlTick &Tick )
{  
  static EMA EMA1(inPeriod1);
  static EMA EMA2(inPeriod2);
  static int Sensitivity = 0;
    
  const double Price = Tick.bid * Tick.ask;
  
  Sensitivity += Price ? 1 - ((EMA1.Get(Price) > EMA1.Get(Price)) << 1) : 0;  
  Sensitivity = MathMax(-inSensitivity, MathMin(Sensitivity, inSensitivity));

  return((Sensitivity == inSensitivity) ? 1 : -(Sensitivity == -inSensitivity));
} 



작업 템플릿.
 
fxsaber #:

표준 MA에서 패턴을 확인하며, 틱에 대해서만 확인합니다.



작업 패턴.

이제 실제 센트, 10 파운드로, 가급적이면 재투자하지 않고.

100% 잃을 겁니다.

실제 거래에서는 긍정적인 거래보다 부정적인 거래가 훨씬 더 많 기 때문입니다.

그리고 영광스러운 MO의 서사시는 마침내 끝날 것입니다.

 
Renat Akhtyamov #:

그리고 마침내 저명한 국방부와의 서사시가 끝납니다.

고문은 국방부와는 아무런 관련이 없습니다. 이것은 제안 된 템플릿의 기술 테스트입니다.

왜 MO 지점에 가서 MO가 작동하지 않는다고보고해야하는지 모르겠습니다.

사유: