고문을 위한 추세 지표. - 페이지 5

 
Petros Shatakhtsyan :

가장 빠르고 가장 정확한 지표는 시각적 차트를 즉시 처리하는 우리의 두뇌입니다.

손으로 거래하는 방법을 모르는 사람은 수익성있는 조언자를 결코 개발할 수 없습니다.

Forex는 컴퓨터가 기능을 사용하여 예를 들어 지문을 빠르게 결정하거나 기계 학습을 사용하여 로봇이 걷는 것을 가르치는 경우가 아닙니다.

Forex에서는 모든 것이 작동하지 않습니다. 축구 경기처럼 예측할 수 없습니다.

두뇌 예. 그것들은 컴퓨터보다 정말 멋지지만, 저는 두뇌가 아니라 이 스레드에서 트렌드 칠면조에 대해 논의하고 싶습니다.

그래서 동의합니다. 나는 펜으로 거래하는 법을 배우고 내 접근 방식을 알고리즘으로 관리했습니다. 수익성있는 올빼미를 썼습니다 (방법 중 하나).

 
Aleksey Ivanov :

두뇌 예. 그것들은 컴퓨터보다 정말 멋지지만, 저는 두뇌가 아니라 이 스레드에서 트렌드 칠면조에 대해 논의하고 싶습니다.

그래서 동의합니다. 나는 펜으로 거래하는 법을 배우고 내 접근 방식을 알고리즘으로 관리했습니다. 수익성있는 올빼미를 썼습니다 (방법 중 하나).

당신은 이미 대답했습니다. 현재 추세를 결정할 수 있는 지표는 없습니다. 그리고 아무도 과거를 필요로 하지 않습니다.

 
Alexey Volchanskiy :

그것을 손익분기점에 걸어두면 행복이 있을 것입니다. 페트로스가 제대로 지적했듯이 시작과 끝을 단정 짓는 것은 불가능하다.

그런 다음 채널을 돌파해 보세요. 최소한 무언가를 제공합니다.

네, 잘 이해합니다. 여기에서 트렌드 칠면조에 대한 긍정적인 의견을 듣고 싶지만 여전히 부정적입니다(어쩌면 이것이 진실일 수도 있음).
 
Aleksey Ivanov :

주님!   인터넷에서   에 사용되는 수천 개의 지표를 찾을 수 있습니다.   추세 식별.

            문제   활성 개발자가 있습니다.   조언자   공부했다   이 문제에   관행:   "어떤 종류의   지표, 실제로 귀하의 의견으로는,   약속하는   Expert Advisors에서 확실히 사용   추세의 시작을 결정 ?

            조언자에게는 바람직하다고 생각합니다.   논의하다   (장점과 단점) 척도가 있는 지표(예: 추세의 강도)   -1에서 변경   ~ 전에   하나.   

트렌드 식별의 복잡성은 플랫과 트렌드의 경계가 퍼지 논리의 주제라는 것입니다.

이 문제는 "거래자 의 위험을 줄이는 방법" 기사에서 부분적으로 고려됩니다. https://www.mql5.com/en/articles/4233

Как снизить риски трейдера
Как снизить риски трейдера
  • www.mql5.com
В первую очередь, эта статья пригодится начинающим трейдерам и аналитикам, которые работают над созданием собственной торговой системы. Надеюсь, что многие вопросы будут интересны и опытным участникам рынка. Это, например, классификация видов риска, использование свечного анализа для определения зон перекупленности/перепроданности, взаимосвязь...
 
Petros Shatakhtsyan :

가장 빠르고 가장 정확한 지표는 시각적 차트를 즉시 처리하는 우리의 두뇌입니다.

손으로 거래하는 방법을 모르는 사람은 수익성있는 조언자를 결코 개발할 수 없습니다.

Forex는 기능을 사용하는 컴퓨터가 예를 들어 지문을 빠르게 결정하거나 기계 학습을 사용하여 로봇이 걷는 것을 가르치는 경우가 아닙니다.

Forex에서는 모든 것이 작동하지 않습니다. 축구 경기처럼 예측할 수 없습니다.

다시 말하지만 당신은 엄격한 범주성에 의해 옳지 않습니다. ATS는 시장 문제에 대한 차분한 토론 방식으로 두뇌 활동의 결과를 구현하며 두뇌는 적절한 솔루션을 재생산해야 합니다. 당신의 두뇌는 수백 번 생각의 기차를 확인하고 재확인하고 올바른 판단을 내립니다. 그리고 실제 거래를 하는 과정에서 시간이 부족한 상황에서 뇌가 실수를 할 수 있고 이를 눈치채지 못할 수도 있습니다. 자신의 통제하에 있지 않은 잠재의식도 작용하기 때문입니다. 그리고 컴퓨터는 자동 전화 교환의 틀 안에서 당신의 두뇌의 뜻을 정확하고 오류 없이 실행합니다. ATS에 반대하는 다른 주장이 있습니까?

 
Aleksey Ivanov :
네, 잘 이해합니다. 여기에서 트렌드 칠면조에 대한 긍정적인 의견을 듣고 싶지만 여전히 부정적입니다(어쩌면 이것이 진실일 수도 있음).

긍정이 너무 긍정...

라인 추세 표시기?

무역, 여기 있습니다(올바른 것을 말합시다):

EA의 신호가 몇 번이나 변경되었습니까?

 
Petros Shatakhtsyan :

당신은 이미 대답했습니다. 현재 추세를 결정할 수 있는 지표는 없습니다. 그리고 아무도 과거를 필요로 하지 않습니다.

나는 당신의 의견을 이해합니다. 고맙습니다. 다른 의견을 듣고 싶습니다.

 
Aleksandr Masterskikh :

트렌드 식별의 복잡성은 플랫과 트렌드의 경계가 퍼지 논리의 주제라는 것입니다.

이 문제는 "거래자의 위험을 줄이는 방법" 기사에서 부분적으로 고려됩니다. https://www.mql5.com/en/articles/4233

고맙습니다. 나는 그 기사를 공부하려고 노력할 것이다. 칠면조 형태의 장치에서 찌꺼기가 있습니까?
 
Aleksey Ivanov :
여기 사례가 있습니다. 하나의 칠면조가 이미 구성되었습니다. 용접(코드 작성) - 5분이면 됩니다. 본론으로 들어가 봅시다.
 //+------------------------------------------------------------------+
//|                                                      MAScale.mq5 |
//|                        Copyright 2018, MetaQuotes Software Corp. |
//|                             https://mql5.com/ru/users/artmedia70 |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, MetaQuotes Software Corp."
#property link        "https://mql5.com/ru/users/artmedia70"
#property version    "1.00"
#property description "Scale of moving average"
#property indicator_separate_window
#property indicator_buffers 5
#property indicator_plots    1
//--- plot MASC
#property indicator_label1    "MASC"
#property indicator_type1    DRAW_COLOR_HISTOGRAM
#property indicator_color1    clrRoyalBlue , clrOrangeRed , clrDarkGray
#property indicator_style1    STYLE_SOLID
#property indicator_width1    2
//--- input parameters
input uint                  InpPeriod         =   14 ;             // Period
input ENUM_APPLIED_PRICE    InpAppliedPrice   =   PRICE_CLOSE ;   // MA Applied price
input ENUM_MA_METHOD        InpMethod         =   MODE_EMA ;       // MA method
input ENUM_APPLIED_PRICE    InpByPrice        =   PRICE_CLOSE ;   // Distance from:
//--- indicator buffers
double          BufferMASC[];
double          BufferColors[];
double          BufferMA[];
double          BufferMA1[];
double          BufferATR[];
//--- global variables
int             period;
int             handle_ma;
int             handle_ma1;
int             handle_atr;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
  {
//--- set global variables
   period= int (InpPeriod< 1 ? 1 : InpPeriod);
//--- indicator buffers mapping
   SetIndexBuffer ( 0 ,BufferMASC, INDICATOR_DATA );
   SetIndexBuffer ( 1 ,BufferColors, INDICATOR_COLOR_INDEX );
   SetIndexBuffer ( 2 ,BufferATR, INDICATOR_CALCULATIONS );
   SetIndexBuffer ( 3 ,BufferMA1, INDICATOR_CALCULATIONS );
   SetIndexBuffer ( 4 ,BufferMA, INDICATOR_CALCULATIONS );
//--- setting indicator parameters
   IndicatorSetString ( INDICATOR_SHORTNAME , "Scale of moving average (" +( string )period+ ")" );
   IndicatorSetInteger ( INDICATOR_DIGITS , Digits ());
//--- setting buffer arrays as timeseries
   ArraySetAsSeries (BufferMASC, true );
   ArraySetAsSeries (BufferColors, true );
   ArraySetAsSeries (BufferATR, true );
   ArraySetAsSeries (BufferMA1, true );
   ArraySetAsSeries (BufferMA, true );
//--- create MA's handles
   ResetLastError ();
   handle_ma1= iMA ( NULL , PERIOD_CURRENT , 1 , 0 , MODE_SMA ,InpByPrice);
   if (handle_ma1== INVALID_HANDLE )
     {
       Print ( "The iMA(1) by " , EnumToString (InpByPrice), " object was not created: Error " , GetLastError ());
       return INIT_FAILED ;
     }
   handle_ma= iMA ( NULL , PERIOD_CURRENT ,period, 0 ,InpMethod,InpAppliedPrice);
   if (handle_ma== INVALID_HANDLE )
     {
       Print ( "The iMA(" ,( string )period, ") object was not created: Error " , GetLastError ());
       return INIT_FAILED ;
     }
   handle_atr= iATR ( NULL , PERIOD_CURRENT ,period);
   if (handle_atr== INVALID_HANDLE )
     {
       Print ( "The iATR(" ,( string )period, ") object was not created: Error " , GetLastError ());
       return INIT_FAILED ;
     }
//---
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
//--- Проверка и расчёт количества просчитываемых баров
   if (rates_total< fmax (period, 4 )) return 0 ;
//--- Проверка и расчёт количества просчитываемых баров
   int limit=rates_total-prev_calculated;
   if (limit> 1 )
     {
      limit=rates_total- 2 ;
       ArrayInitialize (BufferMASC, EMPTY_VALUE );
       ArrayInitialize (BufferATR, 0 );
       ArrayInitialize (BufferMA, 0 );
     }
//--- Подготовка данных
   int count=(limit> 1 ? rates_total : 1 ),copied= 0 ;
   copied= CopyBuffer (handle_ma, 0 , 0 ,count,BufferMA);
   if (copied!=count) return 0 ;
   copied= CopyBuffer (handle_ma1, 0 , 0 ,count,BufferMA1);
   if (copied!=count) return 0 ;
   copied= CopyBuffer (handle_atr, 0 , 0 ,count,BufferATR);
   if (copied!=count) return 0 ;

//--- Расчёт индикатора
   for ( int i=limit; i>= 0 && ! IsStopped (); i--)
     {
      BufferMASC[i]=(BufferATR[i]!=0 ? (BufferMA1[i]-BufferMA[i])/BufferATR[i] : 0);
      BufferColors[i]=(BufferMASC[i]>BufferMASC[i+ 1 ] ? 0 : BufferMASC[i]<BufferMASC[i+ 1 ] ? 1 : 2 );
     }

//--- return value of prev_calculated for next call
   return (rates_total);
  }
//+------------------------------------------------------------------+
 
Aleksey Ivanov :

주님!   인터넷에서   에 사용되는 수천 개의 지표를 찾을 수 있습니다.   추세 식별.

            문제   활성 개발자가 있습니다.   조언자들   공부했다   이 문제에   관행:   "어떤 종류의   실제로 귀하의 의견으로는 지표,   약속하는   Expert Advisors에서 확실히 사용   추세의 시작을 결정 ?

            조언자에게는 바람직하다고 생각합니다.   논의하다   (장점과 단점) 척도가 있는 지표(예: 추세의 강도)   -1에서 변경   ~ 전에   하나.   

좋은 점은 통계적 추세 모델을 먼저 결정하는 것이 좋습니다(단순한 모델일지라도). TS 시리즈 또는 DS 시리즈의 두 가지 주요 옵션이 있습니다. 이것은 지나치게 복잡해 보일 수 있지만 나중에 유용할 수 있습니다. 예를 들어, 이것은 추세의 중단과 수정을 구별하는 일부 기능을 제공할 수 있습니다.