시스템트레이딩 게시글

Iin_MA_Signal_MMRec: 메타트레이더5를 위한 거래 시스템 완벽 가이드

첨부파일
21969.zip (21.83 KB, 다운로드 2회)

Iin_MA_Signal 지표를 기반으로 한 이 거래 시스템은 이전 거래 결과에 따라 향후 거래의 거래량을 조정하는 능력을 제공합니다. 거래 신호는 바가 닫힐 때 형성되며, 트렌드가 변화했을 때(지표의 색상 레이블로 표시됨) 발생합니다.

거래 포지션의 거래량을 관리하기 위한 EA 변수 블록이 추가되었습니다:

input uint    BuyTotalMMTriger=5; // 손절매를 계산할 마지막 매수 거래 수
input uint    BuyLossMMTriger=3;  // 손실 매수 거래 수에 따라 MM을 줄입니다
input uint    SellTotalMMTriger=5;// 손절매를 계산할 마지막 매도 거래 수
input uint    SellLossMMTriger=3; // 손실 매도 거래 수에 따라 MM을 줄입니다
input double  SmallMM_=0.01;      // 손실 시 거래의 예치금 비율
input double  MM=0.1             // 일반 거래 시의 예치금 비율
input MarginMode MMMode=LOT;      // 로트 값 결정 방법

이와 같은 입력값을 설정하고 최근 5건의 거래 중 3건이 동일 방향에서 손실이 발생하면, EA는 동일한 방향으로 0.01 로트의 거래를 엽니다. 만약 최근 5건 중 손실 거래가 3건 미만이면 포지션의 거래량은 0.1로 설정됩니다.

이 EA는 Exp_Iin_MA_Signal EA의 개선된 버전입니다. EA 입력 블록이 코드에 추가되었고, 포지션 개설/종료 블록이 변경되었습니다:

//---- 거래 실행
//---- 매직 넘버로 롱 포지션 종료
   BuyPositionClose_M(BUY_Close,Symbol(),Deviation_,BuyMagic);

//---- 매직 넘버로 숏 포지션 종료  
   SellPositionClose_M(SELL_Close,Symbol(),Deviation_,SellMagic);

   double mm;
//---- 매직 넘버로 롱 포지션 개설
   if(BUY_Open)
     {
      mm=BuyTradeMMRecounterS(BuyMagic,BuyTotalMMTriger,BuyLossMMTriger,SmallMM_,MM); // 이전 거래 결과에 따라 롱 포지션 거래량 정의
      BuyPositionOpen_M1(BUY_Open,Symbol(),UpSignalTime,mm,MMMode,Deviation_,StopLoss_,TakeProfit_,BuyMagic);
     }

//---- 매직 넘버로 숏 포지션 개설
   if(SELL_Open)
     {
      mm=SellTradeMMRecounterS(SellMagic,SellTotalMMTriger,SellLossMMTriger,SmallMM_,MM); // 이전 거래 결과에 따라 숏 포지션 거래량 정의
      SellPositionOpen_M1(SELL_Open,Symbol(),DnSignalTime,mm,MMMode,Deviation_,StopLoss_,TakeProfit_,SellMagic);
     }

이 EA가 올바르게 작동하려면 컴파일된 Iin_MA_Signal.ex5 지표 파일이 <terminal_data_directory> MQL5\nIndicators 폴더에 있어야 합니다.

아래 테스트에서 사용된 기본 Expert Advisor의 입력 파라미터는 스톱이 없는 상태였습니다.

그림 1. 차트에서의 거래 예시

그림 1. 차트에서의 거래 예시

2017년 GBPJPY H1 테스트 결과:

그림 2. 테스트 결과 차트

그림 2. 테스트 결과 차트

연관 포스트

댓글 (0)