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

 
도서관 :
당신은 로봇입니까?
낮과 밤 당신은 잠과 휴식없이 일합니다)))))

시간대 ... 그러나 여전히 인상적입니다))))

 
도서관 :

7글자면 충분하다

다음은 균형 히스토그램입니다. 파란색 새 모델, 빨간색 구형 모델입니다.

모든 설정은 동일합니다.

예측 변수의 중요성



모델은 시간을 최대한 활용합니다. 좋다 나쁘다 말하기는 어렵지만, 유사체와의 유사성으로 인해 어떤 예측변수가 우위를 점하게 되면 나쁜 것 같습니다.

상기하다

정도

결국 - 차이가 있습니다. 물론 크지는 않지만 여전히 그렇습니다.

밸런스가 좋습니다.


 
알렉세이 비아즈미킨 :

다음은 균형 히스토그램입니다. 파란색 새 모델, 빨간색 구형 모델입니다.

모든 설정은 동일합니다.

예측 변수의 중요성



모델은 시간을 최대한 활용합니다. 좋다 나쁘다 말하기는 어렵지만, 아날로그와 유사해서 어떤 예측변수라도 유리하게 작용하면 나쁜 것 같다.

상기하다

정도

결국 - 차이가 있습니다. 물론 크지는 않지만 여전히 그렇습니다.

밸런스가 좋습니다.


시간의 사인 + 코사인이 숫자보다 낫습니까?
당신은 이전 버전에서 분을 제공합니까? 그렇지 않은 경우 적절한 비교를 위해 제출하십시오. 사인 + 코사인 버전에서는 고려됩니다. 더 빠른 경우 파란색 + 브레이드에서 분을 제거하십시오.
 
도서관 :
시간의 사인 + 코사인이 숫자보다 낫습니까?
당신은 이전 버전에서 분을 제공합니까? 그렇지 않은 경우 적절한 비교를 위해 제출하십시오. 사인 + 코사인 버전에서는 고려됩니다. 더 빠른 경우 파란색 + 브레이드에서 분을 제거하십시오.

측정치를 제공했는데 더 나빠 보입니다. 그 이유는 시간 관련 예측자 트리의 분할을 구축하기 위해 임의의 예측자 세트에 들어갈 가능성이 높기 때문입니다.

예, 이전 버전에서 분을 사용하지 않았습니다.

 
알렉세이 비아즈미킨 :

측정치를 제공했는데 더 나빠 보입니다. 그 이유는 시간 관련 예측자 트리의 분할을 구축하기 위해 임의의 예측자 세트에 들어갈 가능성이 높기 때문입니다.


캣버스트 했어? 예측 변수의 무작위 선택이 없어야 합니다. 모든 예측자는 부스트에 사용되지만 얕은 나무입니다.

임의의 숲에서 - 그렇습니다. 예를 들어 설정

max_features {"auto", "sqrt", "log2"}, int 또는 float, default="auto"

최상의 분할을 찾을 때 고려해야 할 기능의 수:


알렉세이 비아즈미킨 :

예, 이전 버전에서 분을 사용하지 않았습니다.

어쩌면 그들은 결과를 악화 시켰습니까? 새 버전에서 제거하십시오.

따라서 이전 버전과 완전히 유사해야 합니다.

if(nameInd[nInd]=="Hour")        {CopyTime        (sim,per,startDt,n_bar+1,dtm);TimeToStruct(dtm[0],dts);ArrayResize(tmp,1);tmp[0]= (double)(dts.hour)*360.0/24.0 ;tmp[0]=(buf==0?MathSin(tmp[0]*pi/180.0):MathCos(tmp[0]*pi/180.0));}

if(nameInd[nInd]=="WeekDay")     {CopyTime        (sim,per,startDt,n_bar+1,dtm);TimeToStruct(dtm[0],dts);ArrayResize(tmp,1);tmp[0]= (double)(dts.day_of_week)*360.0/7.0 ;tmp[0]=(buf==0?MathSin(tmp[0]*pi/180.0):MathCos(tmp[0]*pi/180.0));}


 
도서관 :

캣버스트 했어? 예측 변수의 무작위 선택이 없어야 합니다. 모든 예측자는 부스트에 사용되지만 얕은 나무입니다.

임의의 숲에서 - 그렇습니다. 예를 들어 설정


어쩌면 그들은 결과를 악화 시켰습니까? 새 버전에서 제거하십시오.

따라서 이전 버전과 완전히 유사해야 합니다.

if(nameInd[nInd]=="Hour")        {CopyTime        (sim,per,startDt,n_bar+1,dtm);TimeToStruct(dtm[0],dts);ArrayResize(tmp,1);tmp[0]= (double)(dts.hour)*360.0/24.0 ;tmp[0]=(buf==0?MathSin(tmp[0]*pi/180.0):MathCos(tmp[0]*pi/180.0));}

if(nameInd[nInd]=="WeekDay")     {CopyTime        (sim,per,startDt,n_bar+1,dtm);TimeToStruct(dtm[0],dts);ArrayResize(tmp,1);tmp[0]= (double)(dts.day_of_week)*360.0/7.0 ;tmp[0]=(buf==0?MathSin(tmp[0]*pi/180.0):MathCos(tmp[0]*pi/180.0));}


임의성에 관해서는 - 충분합니다.

내가 사인과 코사인을 모두 사용하는 시간이 따로 있다는 사실에 놀라지 않으셨겠지만, 이제 이해하는 바와 같이 하나가 있어야 하는데 사인이나 코사인 중 하나가 사용되나요?

따라서 buf는 무엇이며 0과 같을 때 코사인을 취하는 이유는 무엇입니까?

 
알렉세이 비아즈미킨 :

임의성에 관해서는 - 충분합니다.

내가 사인과 코사인을 모두 사용하는 시간이 따로 있다는 사실에 놀라지 않으셨겠지만, 이제 이해하는 바와 같이 하나가 있어야 하는데 사인이나 코사인 중 하나가 사용되나요?

따라서 buf는 무엇이며 0과 같을 때 코사인을 취하는 이유는 무엇입니까?

buf는 버퍼 번호입니다.
시간에는 2개가 있습니다.1 버퍼가 있는 표시기가 있고 2 이상이 있습니다.

훈련 세트의 열을 컴파일할 때 루프의 버퍼 수를 반복합니다.

한 가지가 아니라 사인과 코사인을 모두 적용해야 합니다. 설명 이유 - 여기 https://megaobuchalka.ru/9/5905.html

숫자 데이터 는 인코딩할 필요가 없는 것 같습니다. 그러나 어떤 경우에는 숫자 데이터도 인코딩하는 것이 좋습니다[22]. 숫자 데이터를 인코딩할 때 데이터의 의미 있는 값, 값 범위 내 값의 위치, 데이터 측정의 정확도를 고려해야 합니다. 예를 들어 이것을 보여줍시다. 예를 들어 코딩을 통해 데이터의 내용 값을 고려할 수 있습니다. 네트워크 입력이 바람의 방향과 같이 두 방향 사이의 각도인 경우 어떤 경우에도 네트워크 입력이 각도 값(도 또는 라디안)이 되어서는 안 됩니다. 이러한 공급은 네트워크가 0도와 360도가 동일하다는 사실을 "배울" 필요성으로 이어질 것입니다. 이 각도의 사인과 코사인 을 입력으로 제공하는 것이 더 합리적입니다. 네트워크 입력 신호의 수가 증가하지만 가까운 입력 값은 가까운 입력 신호로 인코딩됩니다.

Виды трансформации данных — Мегаобучалка
Виды трансформации данных — Мегаобучалка
  • megaobuchalka
  • megaobuchalka.ru
Трансформация данных — это преобразование данных к определенному представлению, формату или виду, оптимальному с точки зрения конкретного метода анализа [6]. Для разных задач анализа могут потребоваться разные методы трансформации. Типичными средствами трансформации данных являются следующие. Преобразование временны́х данных . Оптимизация...
 
도서관 :

buf는 버퍼 번호입니다.
시간에는 2개가 있습니다.1 버퍼가 있는 표시기가 있고 2 이상이 있습니다.

훈련 세트의 열을 컴파일할 때 루프의 버퍼 수를 반복합니다.

한 가지가 아니라 사인과 코사인을 모두 적용해야 합니다. 설명 이유 - 여기 https://megaobuchalka.ru/9/5905.html

그래서 나는 처음에 모든 것을 올바르게 했습니다. 나는 내가 한 일을 기억하지 못합니다 ...

   double tmp[ 4 ];
   int nInd= 0 ;
   MqlDateTime dts;
   double pi= 3.1415926535897932384626433832795 ;
   for ( int buf= 0 ; buf< 2 ; buf++)
   {
       TimeToStruct ( iTime ( Symbol (), PERIOD_CURRENT , 0 ),dts);
      tmp[buf]=( double )(dts.hour* 60 +dts.min)* 360.0 / 1440.0 ;
       //tmp[buf]=(double)(dts.hour*60+dts.min)*360.0/24.0;
      tmp[buf]=(buf== 0 ? MathSin (tmp[ 0 ]*pi/ 180.0 ): MathCos (tmp[ 0 ]*pi/ 180.0 ));

       TimeToStruct ( iTime ( Symbol (), PERIOD_CURRENT , 0 ),dts);
      tmp[buf+ 2 ]=( double )(dts.day_of_week* 1440 +dts.hour* 60 +dts.min)* 360.0 / 10080.0 ;
       //tmp[buf+2]=(double)dts.day_of_week*360.0/7.0;
      tmp[buf+ 2 ]=(buf== 0 ? MathSin (tmp[ 0 ]*pi/ 180.0 ): MathCos (tmp[ 0 ]*pi/ 180.0 ));
   }
 
아니면 4개 대신 하나의 입력으로 처리할 수 있습니까?
월요일 0:00 이후의 분 수 =
dts.day_of_week* 1440 +dts.hour* 60 +dts.min
나쁜 생각이긴 하지만. 예를 들어, 매 시간의 처음 10분을 얻으려면 많은 스플릿을 해야 합니다.
아마도 당신보다 나을 것입니다 - 단지 며칠, 몇 시간. 글쎄, 아마도 몇 분.
 
도서관 :
아니면 4개 대신 하나의 입력으로 처리할 수 있습니까?
월요일 0:00 이후의 분 수 = 나쁜 생각입니다. 예를 들어, 매 시간의 처음 10분을 얻으려면 많은 스플릿을 해야 합니다.
아마도 당신보다 나을 것입니다 - 단지 며칠, 몇 시간. 글쎄, 아마도 몇 분.

나는 이미 몇 분없이 훈련을 시작했습니다. 우리는 보게 될 것입니다.

나는 또한 1/4 바 시간(시간, 4시간, 일)을 사용합니다.

사유: