보조지표

메타트레이더 4의 거래 전략 평가를 위한 효과적인 지표 소개
MetaTrader4
메타트레이더 4의 거래 전략 평가를 위한 효과적인 지표 소개

안녕하세요, 트레이더 여러분! 오늘은 메타트레이더 4에서 사용할 수 있는 거래 전략 평가 지표에 대해 이야기해보려고 해요. 많은 트레이더들이 특정 거래 전략의 결점을 시각적으로 확인하고 싶어 하는 경우가 많죠. 그리고 객관적인 거래 통계를 동시에 볼 수 있다면 정말 좋겠죠? MT4에는 백테스터가 있지만, EA의 각 수정에 대해 시각적 모드로 백테스트를 진행하는 것은 시간이 많이 소요됩니다. 게다가 시각적 기능도 제한적이어서 다중 통화 전략을 효율적으로 테스트하기는 어렵습니다. 이런 문제들을 해결하기 위해 제가 개발한 오픈소스 지표를 소개합니다. 이 지표는 거래 전략을 시각적으로 테스트할 수 있도록 설계되었습니다. 모든 용도에 완벽하게 맞는 지표를 만들기는 어렵지만, 현재 프레임워크는 특정 요구 사항에 맞게 쉽게 수정 및 확장할 수 있습니다 (예: 다중 통화 전략). 특히 스프레드 관리에 많은 주의를 기울였습니다. 이 지표는 실제 거래와 MT4 백테스터에서의 스프레드를 동일하게 반영합니다. 만약 지표를 수정할 경우, 스프레드 관리를 면밀히 연구해야 합니다. 그렇지 않으면 M1 차트에서 훌륭한 전략 결과를 보더라도 실제로는 재앙이 될 수 있습니다. :-) 이 지표를 활용하여 간단한 거래 전략으로 테스트를 시연해보겠습니다. 이 전략은 가격 행동에 따라 MA 교차를 기반으로 하며, 실제 교차 전에 거래를 배치할 수 있도록 설계되어 지연을 제거합니다. 또한 반대 신호와 느린 MA 교차를 이용한 청산 전략과 수정된 샹들리에 SL 전략을 통해 스톱로스를 관리합니다. 이 지표는 특정 요구에 맞게 확장할 수 있는 샘플을 제공하지만, 일부 트레이더들은 수동 거래에 사용하기에도 충분하다고 생각합니다. 시스템의 전반적인 아이디어 이 지표 시스템은 모듈 방식으로 구축되었습니다. 먼저, 거래 전략을 거래 지표에 구현해야 하며, 현재 두 개의 버퍼는 진입 신호에, 두 개는 청산 신호에, 하나는 스톱로스에 사용됩니다. 전체 기능을 갖춘 지표의 샘플은 첨부된 StrategyIndi_1.0입니다. 이 전략을 전략 테스트 지표인 StrategySym_1.0으로 평가할 수 있습니다. 결과에 만족하지 않는다면 거래 지표를 최적화하고, 변화의 결과를 실시간으로 객관적으로 통계로 볼 수 있습니다. 나중에 EA를 구현하고 싶다면, 커스텀 거래 지표를 호출하여 모든 진입 및 청산 신호와 SL 값을 쉽게 얻을 수 있습니다. 이 시스템을 사용하는 방법 및 개인의 요구에 맞게 조정하는 방법 현재 시스템을 사용하려면 두 지표를 MetaTrader\experts\indicators 폴더에 복사하세요. 사용하기 전에 터미널을 재시작하여 컴파일되도록 해주세요. 변경하고 싶은 설정이 있을 수 있는데, 대부분은 이름에서 명확하게 알 수 있으므로 다른 설정에 대해서만 설명하겠습니다: StrategyIndi 매개변수: ChandBars = 7 (샹들리에 SL 전략을 위한 바 수) ChandATRFact = 2.0 (장기 ATR을 곱할 팩터, 샹들리에 거리 계산) RiskPercent = 2.0 (출발 SL에 따라 로트 계산을 위한 계좌 잔고의 비율) Offset = 10 (차트에서 화살표를 배치할 바에서의 오프셋, 4자리 핍) BarsBack = 2000 (처리할 과거 바의 수) AlertSound = "alert.wav" (소리 경고를 위한 WAV 파일) UseSoundAlert = true (소리 경고 사용 여부) UsePopupAlert = true (팝업 알림 사용 여부) WriteToLog = false (디버깅을 위한 로그 세부사항 기록 여부) StrategySim 매개변수: MaxLossAtSL = 200.0 (각 SL에서 잃을 준비가 된 금액, 직관적일 수 있음) BarsBack = 2000 (전략 평가를 위한 처리할 바의 수) WriteToLog = false (디버깅을 위한 로그 세부사항 기록 여부) 시스템을 개인의 요구에 맞게 조정하려면, StrategySym 지표에 StrategyIndi 지표의 모든 매개변수를 추가해야 합니다. 이는 나중에 GetIndiSignals 메서드에서 사용되며, 나머지 매개변수는 고정값으로 설정하면 됩니다. 다른 용도로 사용하고 싶지 않다면 StrategySim에서 변경할 필요는 없습니다. 도움이 필요하시면 아래 웹 주소로 문의 주시면 기꺼이 도와드리겠습니다. 이 시스템을 통해 거래 전략을 평가하는 데 객관성을 제공하고자 합니다. 현재의 마케팅 접근 방식은 종종 조작적이며, 이로 인해 많은 초보자가 힘들게 번 돈을 잃게 됩니다. 트레이더 여러분, 성공적인 거래 되시길 바랍니다!감사합니다, 로버트 코멘트나 MT4 프로그래밍 관련 문의는 robert [dot] leskovar [at] gmail [dot] com으로 연락주세요. MQLTools 웹사이트는 더 이상 활성화되지 않습니다.

2010.04.01
메타트레이더 4용 마켓웨이 지표 소개와 활용 방법
MetaTrader4
메타트레이더 4용 마켓웨이 지표 소개와 활용 방법

아이디어: 이 지표의 아이디어는 오래되었지만 외환 시장만큼 오래된 것은 아닙니다. 오픈과 클로징의 차이가 생긴 이유는 ... 이 지표는 특정 기간 동안의 오픈과 클로징의 차이를 요약합니다. 주요 라인은 다음과 같습니다: 하락장 바만 합산 상승장 바만 합산 또한 전체 기간의 가중 평균을 추가하여 표시합니다. 장점: 오실레이터와 트렌드 지표의 가능성을 결합합니다. (중요!) 이해하기 쉽고 해석하기 간편합니다. 상승 또는 하락 움직임의 좋은 포인트를 제공합니다. 강세 및 약세 압력을 파악하고, 모션의 예상 양을 표시합니다. 이는 스탑 및 이익 설정에 중요한 역할을 할 수 있습니다. 횡보 움직임의 존재와 그 강도를 나타냅니다 (높음 또는 낮음). 과매수/과매도 수준을 명확하게 표시합니다. 가격 움직임의 파동 함수를 명확히 하고, 다이버전스/컨버전스 수준을 제공할 수 있습니다. 미래 가격 행동에 대한 결정을 내리고, 이 지표만으로 시장에 진입할 수 있습니다. (중요!) 모든 시간대의 데이터와 외환 외 다른 시장 데이터에도 잘 작동합니다. 추가 스무딩 없이도 동일 기간의 SMA를 돌파하는 잘못된 신호를 제거합니다. 단점: 항상 정산 기간이 필요하여 데이터 분석의 정확도가 떨어질 수 있습니다. 이는 모든 지표의 주요 문제입니다. 이 지표의 모든 가능성이 잘 연구되지 않았습니다. 추천 파라미터: extern int IdMain = 12; // 지표의 주요 라인 (차트에 그려짐), 항상 상승 및 하락 라인 사이에 위치하는 것이 좋습니다. extern int IdBull = 12; // 상승 라인, 이 값이 하락 및 주요 라인과 같으면 좋습니다. extern int IdBear = 12; // 하락 라인, 이 값이 상승 라인 및 주요 라인과 같으면 좋습니다. extern int IdArray = 12; // 모든 SMA 라인 - 차트의 모든 라인 스무딩 값, 소위 SIGNAL 라인입니다. 표시된 것은 상승 라인 (흰색 바)과 SMA, 하락 라인 (검은색 바) 및 SMA 간의 차이를 보여주는 히스토그램입니다. 추천 설정은 12의 배수이며, 3과 4로 나누어지는 수치가 좋습니다. 최대 108, 최소 12, 가능하면 9 및 7도 고려할 수 있습니다. 이 지표의 전략 테스터: 이 예시는 지표 증명을 위한 것입니다. 이것은 최적화되지 않았으며, 거래는 바가 열릴 때 이루어집니다. "모든 틱"을 테스트할 필요가 없으며, 1개의 거래를 바에서 열 수 있습니다. TF: 데일리, 도구: EURUSD, 기간: 1999년부터 2010년까지 사용 가능한 모든 기간. 스탑 로스 및 이익은 500포인트 수준입니다. 철수는 반대 거래 조건에 따라 이루어집니다. 지표 옵션: 모두 12. Lot: 0.1 연속. 롱 진입 조건: MainAccumulation1-MainSMA1 > 0 // 주요 라인이 스무딩 값 위에 있을 때 &amp;&amp; BullPressure1-Point > 0 // 강세 압력이 0 위에 있을 때 &amp;&amp; BearPressure1-Point > 0 // 약세 압력이 0 위에 있을 때 &amp;&amp; MainAccumulation1-Point > 0 // 주요 라인이 0 위에 있을 때 숏 진입 조건: MainAccumulation1-MainSMA1 < 0 // 주요 라인이 스무딩 값 아래에 있을 때 &amp;&amp; BullPressure1-Point < 0 // 강세 압력이 0 아래에 있을 때 &amp;&amp; BearPressure1-Point < 0 // 약세 압력이 0 아래에 있을 때 &amp;&amp; MainAccumulation1-Point < 0 // 주요 라인이 0 아래에 있을 때 출구 조건은 엄격히 반대입니다. 아래는 자산의 변화(자본) 그래프입니다(정확도 5자리). 거래를 발견한 후 자본이 -200포인트 아래로 떨어지는 경우는 드뭅니다.

2010.03.30
고급 시간 프레임 트렌드 지표 - MetaTrader 4에서 활용하기
MetaTrader4
고급 시간 프레임 트렌드 지표 - MetaTrader 4에서 활용하기

지표 설명 이 지표는 현재 차트에서 고급 시간 프레임의 전반적인 추세를 보여줍니다. 아래와 같은 방식으로 작동합니다:만약 고급 시간 프레임에서 MA_1 &lt; MA_2 &lt; MA_3 &lt; MA_4라면, 올바른 MA 순서가 설정되어 하락 추세가 진행 중임을 나타냅니다. 현재의 낮은 시간 프레임 차트에서 이 상태를 나타내는 빨간 선이 나타납니다. 이 빨간 선은 PCI(가격 채널 지수) 지표를 기반으로 하며 지지선으로 활용할 수 있습니다. 만약 내장된 RSI 지표가 활성화되어 있다면, RSI가 과매수 영역에 진입할 때마다 경고 알림이 발송되어 반전 가능성이 높다는 신호를 제공합니다. 즉, 낮은 시간 프레임의 추세가 고급 시간 프레임의 전반적인 추세로 복귀할 가능성이 큽니다. 빨간 PCI 지지선 아래에서 매수하는 것을 추천합니다. 아래의 예시 이미지를 참조하세요.반대로, MA_1 &gt; MA_2 &gt; MA_3 &gt; MA_4인 경우는 올바른 MA 순서가 설정되어 상승 추세가 진행 중임을 나타냅니다. 이 경우 현재 낮은 시간 프레임 차트에서 초록색 선이 나타나며, 이 초록색 선은 PCI 지표를 기반으로 하여 저항선으로 사용됩니다. RSI 지표가 활성화되어 있다면, RSI가 과매도 영역에 진입할 때마다 경고 알림이 발송되어 반전 가능성이 높다는 신호를 제공합니다. 따라서 초록색 PCI 저항선 위에서 매수하는 것을 추천합니다.회색 선은 고급 시간 프레임의 추세가 존재하지 않음을 나타냅니다.주의: 아래의 시간 프레임 조합을 사용하는 것을 추천합니다:고급 시간 프레임: 일간(Daily) / 현재 시간 프레임: 1시간(1hr)고급 시간 프레임: 4시간(4hr) / 현재 시간 프레임: 15분(15min)고급 시간 프레임: 1시간(1hr) / 현재 시간 프레임: 5분(5min)고급 시간 프레임: 5/15분 / 현재 시간 프레임: 1분(1min) 지표 이미지 속성 설정: extern int Upper_Timeframe = 240; // 고급 시간 프레임 (분 단위) - 예: 240 = 4시간 extern int Upper_Timeframe_MA_1 = 10; // MA_1은 가장 빠른 MA여야 합니다 extern int Upper_Timeframe_MA_2 = 20; extern int Upper_Timeframe_MA_3 = 50; extern int Upper_Timeframe_MA_4 = 100; // MA_4는 가장 느린 MA여야 합니다 extern bool RSI_Check_On = true; // RSI 과매수/과매도 조건 체크 extern bool RSI_Alert_On = true; // RSI 과매수/과매도 조건에 대한 오디오 알림 extern int RSI_Period = 12; // RSI 기간 extern int Upper_RSI_Limit = 70; // 과매수 조건을 나타내는 상한선 extern int Lower_RSI_Limit = 30; // 과매도 조건을 나타내는 하한선 extern int PCI_Period = 5; // PCI 기간. 예: 5로 설정하면 하락 추세에서 지지선이 지난 5개의 바의 최저치로 설정됩니다 extern int PCI_Shift = 1; // PCI 이동, 최적값은 1로 설정 extern double Entry_Buffer = 0.0002; // PCI 채널의 너비를 지정된 핍 수만큼 증가시킵니다. 즉, 하락 추세에서 지지선을 낮춥니다 extern color Dot_Color = Blue;

2010.03.26
MetaTrader 5를 위한 DemoBufferPattern 지표 소개
MetaTrader5
MetaTrader 5를 위한 DemoBufferPattern 지표 소개

안녕하세요, 트레이더 여러분! 오늘은 MetaTrader 5에서 사용할 수 있는 유용한 지표인 DemoBufferPattern에 대해 소개해 드릴게요. 이 지표는 캔들, 프랙탈, 지그재그, 그리고 색상 이동 평균을 활용하여 분석을 돕습니다. 이 지표는 다음과 같은 그리기 스타일을 사용합니다: 컬러 캔들 그리기 (DRAW_COLOR_CANDLES) 화살표 그리기 (DRAW_ARROW) 컬러 지그재그 그리기 (DRAW_COLOR_ZIGZAG) 컬러 선 그리기 (DRAW_COLOR_LINE) //+------------------------------------------------------------------+ //| 커스텀 지표 초기화 함수 | //+------------------------------------------------------------------+ int OnInit() &nbsp;&nbsp;{ //--- 지표 버퍼 매핑 &nbsp;&nbsp; SetIndexBuffer( 0,P1B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 1,P1B2,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 2,P1B3,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 3,P1B4,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 4,P1BC,INDICATOR_COLOR_INDEX); &nbsp;&nbsp; SetIndexBuffer( 5,P2B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 6,P3B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 7,P4B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 8,P4B2,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 9,P4BC,INDICATOR_COLOR_INDEX); &nbsp;&nbsp; SetIndexBuffer(10,P5B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer(11,P5BC,INDICATOR_COLOR_INDEX); //--- 중간 계산을 위한 보조 버퍼 &nbsp;&nbsp; SetIndexBuffer(12,P4M1,INDICATOR_CALCULATIONS); &nbsp;&nbsp; SetIndexBuffer(13,P4M2,INDICATOR_CALCULATIONS); //--- 표시할 모든 버퍼 뒤에 배치해야 합니다. //--- 화살표 설정 &nbsp;&nbsp; PlotIndexSetInteger(1,PLOT_ARROW,217); &nbsp;&nbsp; PlotIndexSetInteger(2,PLOT_ARROW,218); &nbsp;&nbsp; PlotIndexSetInteger(1,PLOT_ARROW_SHIFT,-iArrowShift); &nbsp;&nbsp; PlotIndexSetInteger(2,PLOT_ARROW_SHIFT,iArrowShift); &nbsp;&nbsp; PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,EMPTY_VALUE); &nbsp;&nbsp; PlotIndexSetDouble(2,PLOT_EMPTY_VALUE,EMPTY_VALUE); //--- 지그재그 설정 &nbsp;&nbsp; PlotIndexSetDouble(3,PLOT_EMPTY_VALUE,0.0); //--- 이동 평균 설정 &nbsp;&nbsp; maHandle=iMA(Symbol(),0,ExtPeriod,0,MODE_EMA,PRICE_CLOSE); &nbsp;&nbsp; return(0); &nbsp;&nbsp;} //+------------------------------------------------------------------+ //| 커스텀 지표 반복 함수 | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const int prev_calculated, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const datetime&amp; time[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; open[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; high[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; low[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; close[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const long&amp; tick_volume[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const long&amp; volume[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const int&amp; spread[]) &nbsp;&nbsp;{ //--- &nbsp;&nbsp; CalcCandles(rates_total,prev_calculated,open,high,low,close); &nbsp;&nbsp; CalcFractal(rates_total,prev_calculated,high,low,P2B1,P3B1); &nbsp;&nbsp; CalcZigzag (rates_total,prev_calculated,high,low,P4B1,P4B2,P4BC,P4M1,P4M2); &nbsp;&nbsp; CalcColorMA(rates_total,prev_calculated,P5B1,P5BC); //--- 다음 호출을 위한 prev_calculated 값 반환 &nbsp;&nbsp; return(rates_total); &nbsp;&nbsp;}

2010.03.25
메타트레이더 5용 거래 세션 인디케이터 소개
MetaTrader5
메타트레이더 5용 거래 세션 인디케이터 소개

안녕하세요, 트레이더 여러분! 오늘은 메타트레이더 5에서 사용할 수 있는 거래 세션 인디케이터에 대해 알아보려 합니다. 이 인디케이터는 DRAW_FILLING 버퍼를 기반으로 하여 설계되었습니다. 입력 매개변수는 없으며, TimeTradeServer()와 TimeGMT() 함수를 사용합니다. 거래 세션 시간에 약간의 오차가 있을 수 있습니다. 이는 제가 가장 먼저 찾은 사이트에서 가져온 값이기 때문입니다 :))상수 블록에서 값을 변경할 수 있으며, GMT 시간이 사용됩니다. // 그리니치 기준으로 시간 상수가 지정됩니다 const int&nbsp;&nbsp; AsiaOpen=0; const int&nbsp;&nbsp; AsiaClose=9; const int&nbsp;&nbsp; AsiaOpenSummertime=1;&nbsp;&nbsp; // 아시아 세션 전환 const int&nbsp;&nbsp; AsiaCloseSummertime=10; // 시간 변경 후 const int&nbsp;&nbsp; EuropaOpen=6; const int&nbsp;&nbsp; EuropaClose=15; const int&nbsp;&nbsp; AmericaOpen=13; const int&nbsp;&nbsp; AmericaClose=22; 여름 시간대 변경을 위해 사용할 수 있는 기회가 있습니다. 현재로서는 이 기능이 매우 기본적인 형태로 TimeDaylightSavings(); 함수로 구현되어 있습니다. //+--------------------------------------------------------------------+ // 여름 시간 판별은 향후 계산을 위해 예약되어 있습니다 //+--------------------------------------------------------------------+ bool Summertime(datetime time) { &nbsp;&nbsp; if(TimeDaylightSavings()!=0) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return(true); &nbsp;&nbsp; else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return(false); }&nbsp; 따라서 여름 시간으로 변경된 후에는 모든 역사적인 데이터의 시간이 변경됩니다. 이 인디케이터의 첫 번째 버전은 MQL4에 게시되었습니다.

2010.03.15
MT4를 위한 크로스 이동 평균 최적화 지표
MetaTrader4
MT4를 위한 크로스 이동 평균 최적화 지표

업데이트된 버전입니다. 아래 설명을 참고하세요. 크로스 이동 평균에 대한 믿음을 여전히 가지고 있으며, 프로그래머로서 항상 가장 간단한 솔루션을 찾고 있습니다. '크로스 MA에 마법 같은 설정은 없다'는 문구를 보았습니다. 이 지표는 시간대나 심볼이 변경될 때마다 또는 새로운 캔들이 생성될 때마다 여러 설정을 시도합니다. 마지막 100개의 캔들을 분석하여 가장 성공률이 높은 설정을 선택하는 방식입니다. 이는 마치 손절매 없이 거래하는 것처럼 짧은 신호와 긴 신호 사이의 거리를 측정하는 것입니다. 스프레드도 고려합니다. 하단 창에서는 짧은 이동 평균과 긴 이동 평균 간의 거리를 보여주며, 양수 값은 롱 트레이드를, 음수 값은 숏 트레이드를 나타냅니다. '이익 오실레이터'를 사용하면 롱/숏 트레이드 간의 최대 차이를 확인하여 이익을 보고 거래를 종료할 수 있습니다. 상단 라인에는 "MA 5/19로 오늘의 이익은 60핍"이라고 표시됩니다. 지표나 사용자가 빠른 MA에 5, 느린 MA에 19를 선택한 것입니다. 다음 텍스트 필드에는 어제의 결과와 롱 또는 숏 신호가 표시됩니다. 트레이더들은 차트에 두 개의 이동 평균을 추가하고 주어진 값으로 설정할 수 있습니다. 저는 문헌에서 더 다양한 MA 추천을 찾고 있습니다. 파라미터 PeriodShort=6; 빠른 MA의 기간입니다. 최적화가 true일 경우 무시됩니다. PeriodLong=40; 느린 MA의 기간입니다. 최적화가 true일 경우 무시됩니다. Method=0; iMA의 방법입니다. Optimize=true; 지표가 자동으로 빠른 MA와 느린 MA의 값을 선택합니다. DrawTringles=true; 차트에 삼각형을 그립니다. MinShortMA=2; MaxShortMA=20; MaxLongMA=100; 최적화를 위한 최소 및 최대 값으로, 빠른 MA는 2부터 20까지, 느린 MA는 7부터 100까지의 값을 시도합니다. StepLongMA=5; StepShortMA=5; 검색 속도를 높이기 위해 매 3번째 값을 시도합니다. CountOptimize=200; 과거 200개의 캔들을 분석합니다. 캔들이 많을수록 느려지며, 큰 숫자는 오히려 좋지 않은 결과를 초래할 수 있습니다. OptimizeOnNewCandle=false; 각 새로운 캔들마다 최적화를 시작합니다. 참고: 최적화는 시간이 걸릴 수 있으며 터미널 속도를 저하시킬 수 있습니다. Alarm=true; 새로운 신호가 발생하면 벨이 울립니다. 다음 단계로, 이 지표를 기반으로 한 전문가 어드바이저(EA)를 만들고 싶습니다. 하지만 크로스 MA로 거래하지 말아야 할 횡보 추세를 어떻게 감지할지 고민 중입니다. 지금까지 최적화된 크로스 MA를 기반으로 한 제 EA는 때때로 뛰어난 수익을 내지만, 다음 날에는 손실을 입기도 합니다. 업데이트된 버전 새로운 기능: - 지표가 이제 차트 내부에 이동 평균을 그리며, '이익 오실레이터'는 다른 지표(MAProfit2) 내부에 있으며, 두 지표는 전역 변수로 통신합니다. - MA 채널을 지원합니다 (www.vnchanger.org의 전자책 참조). 느린 이동 평균은 낮은 값과 높은 값으로 두 개의 라인으로 나뉘어 있으며, 이는 횡보 시장에서의 손실을 줄이는 데 도움을 줍니다. - 모든 조합을 테스트하는 대신, 문헌에서 발견된 특정 MA 범위를 테스트할 수 있습니다. 이를 위해 OptimizeAll을 false로 설정하고 OptimizeSystems를 true로 설정하세요. 시스템 테이블을 추가하거나 수정할 수 있습니다. 0,0,0,0,0,0으로 종료해야 합니다. extern bool OptimizeAll=false; extern bool OptimizeSystems=true; int Systems[] = {PRICE_MEDIAN,MODE_SMA,50, PRICE_MEDIAN,MODE_SMA,200, PRICE_MEDIAN,MODE_SMA,50, PRICE_MEDIAN,MODE_SMA,100, // Death Cross PRICE_MEDIAN,MODE_SMA,10, PRICE_MEDIAN,MODE_SMA,40, PRICE_MEDIAN,MODE_SMA,13, PRICE_MEDIAN,MODE_SMA,26, PRICE_MEDIAN,MODE_SMA,5, PRICE_MEDIAN,MODE_SMA,10, PRICE_CLOSE, MODE_EMA,5, PRICE_OPEN, MODE_EMA,6, PRICE_MEDIAN,MODE_SMA,3, PRICE_MEDIAN,MODE_SMA,8, 0,0,0,0,0,0}; - 새로운 알림은 음성으로 제공될 수 있으며, 이를 지원하기 위해 gspeak를 다운로드해야 합니다. 예를 들어 https://www.mql5.com/en/code/8621에서 다운로드할 수 있습니다. 음성이 필요하지 않다면 코드를 수정해야 합니다. #import "speak.dll"부터 #import까지의 줄을 제거하고 gSpeak 함수를 주석 해제하세요. 이 훌륭한 DLL을 제공해 주신 저자에게 감사드립니다. #import "speak.dll" void gRate(int rate); void gVolume(int rate); void gPitch(int rate); void gSpeak(string text); #import // 음성을 원하지 않으면 아래 주석을 해제하세요. /* void gSpeak(string x) { } */ 음성을 제거하지 않으면 수익이 발생한 후 "Oncle Sam"의 목소리를 듣는 것을 즐길 수 있습니다. - 첫 시작 시 또는 파라미터 변경 시, 첫 거래의 캔들을 기억하여 이전 거래를 다른 거래로 교체하는 것을 방지합니다. - 삼각형은 이제 세 가지 색상을 가지고 있습니다: 롱 트레이드는 초록색, 숏 트레이드는 빨간색, 손실 거래는 보라색입니다. 색상은 소스 코드에서 수정할 수 있습니다:int ColorLongTrade = MediumSpringGreen; int ColorShortTrade = Red; int ColorBadTrade = Violet; - MA 최적화 단계는 5로 설정되었습니다. - 이 지표의 내부 이름은 SMA(스마트 Ass...)로 변경되었습니다. 이는 거래 후 어떻게 거래했어야 했는지를 보여줍니다. MA 최적화기

2010.03.03
MAD 지표(Moving Average Delta) - 메타트레이더 4를 위한 유용한 도구
MetaTrader4
MAD 지표(Moving Average Delta) - 메타트레이더 4를 위한 유용한 도구

지표 설명 MAD는 이동 평균 델타(Moving Average Delta)의 약자로, 두 이동 평균 지점 간의 차이를 계산합니다. 이 곡선은 핍(Pip) 단위로 차이를 보여줍니다. 두 지점 간의 델타를 계산함으로써, 일반적으로 보기 힘든 이동 평균 곡선의 미세한 변화들을 확인할 수 있습니다. MAD 곡선은 간단한 이동 평균 곡선을 들여다보는 현미경과 같습니다. 이는 트렌드 변화가 발생하기 전에 예측하는 데 도움을 줄 수 있으며, 예시에서는 롱 포지션에서 숏 포지션으로의 트렌드 변화가 시작되는 모습을 보여줍니다. 가장 간단한 지표라고 하더라도, 여전히 이동 평균을 신뢰합니다. 시장은 여전히 느리기 때문에 트렌드 변화에는 시간이 필요합니다. 트렌드가 바뀌려면, 수많은 개인 투자자들이 매수(매도)를 시작하고, 그 뒤를 이어 더 많은 사람들이 따라오게 됩니다. 하락(상승) 곡선은 점점 느리게 하락하고, 멈춘 다음 반대 방향으로 전환됩니다. (이런 종류의 지표를 만든 사람이 아무도 없다는 게 신기하네요.) 이미지 MAD 지표 해석: MAD 곡선이 0보다 크면 이동 평균이 상승 중입니다. 트렌드 변화 전에 이동 평균이 평평해지고, MAD 곡선이 0으로 향합니다. 우리는 이동 평균의 최대 상승/하락을 확인하고 다가오는 트렌드 변화를 예측할 수 있습니다. 사용법: 차트에 간단한 이동 평균을 추가하고, 움직임에 가장 잘 맞는 기간을 설정하세요. 이동 평균 기간에 대한 "마법 같은" 설정은 없습니다. MA 선을 더블 클릭하여 다른 기간으로 설정할 수 있습니다. 차트에 MAD 지표를 추가하고, 간단한 이동 평균과 동일한 기간으로 설정하세요.

2010.03.02
처음 이전 337 338 339 340 341 342 343 344 345 346 347 다음 마지막