시스템트레이딩 게시글

MetaTrader 4를 위한 exp_iCustom_v1 EA: 최적화 및 기능 소개

첨부파일
7632.zip (41.38 KB, 다운로드 0회)

EA의 목적

이 EA는 구매/판매 화살표를 그리는 모든 커스텀 인디케이터와 함께 사용하도록 설계되었습니다. 단, 문자열 매개변수를 가진 인디케이터는 제외됩니다.

EA의 매개변수에서 커스텀 인디케이터의 이름과 구매/판매 화살표를 그리기 위한 인디케이터 매개변수 목록 및 버퍼 번호가 지정됩니다.

문자열 매개변수 목록을 사용하는 것에도 불구하고, 인디케이터의 최대 다섯 개 매개변수를 최적화할 수 있습니다. iCustomParam 문자열 목록의 변수 대신 Opt_1_Value - Opt_5_Value의 값을 사용할 수 있습니다.

EA의 매개변수

  • TimeFrame - EA가 작동하는 차트의 시간 프레임: 0 - 현재 차트의 시간 프레임, 또는 1,5,15,30,60,240,1440과 같은 특정 값.
  • iCustomName - 커스텀 인디케이터의 이름.
  • iCustomParam - 매개변수 목록, "/"로 구분. 불리언 변수의 경우 true 대신 1, false 대신 0을 사용합니다. 문자열 변수가 포함된 인디케이터 매개변수는 EA에서 작동하지 않습니다!
  • iBuyBufIndex - 구매 화살표의 버퍼 인덱스.
  • iSellBufIndex - 판매 화살표의 버퍼 인덱스.
  • iShift - 인디케이터 오프셋. 1 - 형성된 바에서 작업, 0 - 형성 중인 바(권장하지 않음). 2, 3, 4와 같은 값을 입력할 수 있습니다.
  • Opt_1_Use - 최적화할 변수 1의 사용 활성화. 최적화할 변수가 활성화되면 iCustomParam 문자열에서 Opt_X_Index 변수로 정의된 값 대신 Opt_X_Value 변수가 사용됩니다.
  • Opt_1_Index - 매개변수 배열에서 최적화할 변수 2의 인덱스(iCustomParam 문자열 내). 번호는 0부터 시작합니다.
  • Opt_1_Value - 최적화할 변수 1의 값.
  • Opt_2_Use - 최적화할 변수 2의 사용 활성화.
  • Opt_2_Index - 매개변수 배열에서 최적화할 변수 2의 인덱스(iCustomParam 문자열 내). 번호는 0부터 시작합니다.
  • Opt_2_Value - 최적화할 변수 2의 값.
  • Opt_3_Use - 최적화할 변수 3의 사용 활성화.
  • Opt_3_Index - 매개변수 배열에서 최적화할 변수 3의 인덱스(iCustomParam 문자열 내). 번호는 0부터 시작합니다.
  • Opt_3_Value - 최적화할 변수 3의 값.
  • Opt_4_Use - 최적화할 변수 4의 사용 활성화.
  • Opt_4_Index - 매개변수 배열에서 최적화할 변수 4의 인덱스(iCustomParam 문자열 내). 번호는 0부터 시작합니다.
  • Opt_4_Value - 최적화할 변수 4의 값.
  • Opt_5_Use - 최적화할 변수 5의 사용 활성화.
  • Opt_5_Index - 매개변수 배열에서 최적화할 변수 5의 인덱스(iCustomParam 문자열 내). 번호는 0부터 시작합니다.
  • Opt_5_Value - 최적화할 변수 5의 값.
  • MMMethod - 자금 관리 방법: 0-로트, 1-자유 마진의 일부(위험), 2-자유 마진의 일부를 평균 단계로 정규화.
  • Lots - MMMethod=0일 때의 로트 수.
  • Risk - 위험. FixedLot=false 기준으로 자금에 따라 결정됩니다.
  • MeansType - 로트 계산에 사용되는 자금의 유형. 1 - 잔액, 2 - 자본, 3 - 자유 마진.
  • MeansStep - 자금의 단계. MMMethod=2에서 사용됩니다.
  • LotsDigits - 로트 값의 소수점 자리 수.
  • Slippage - 요청 가격에서 허용되는 편차.
  • StopLoss - 손실 중지.
  • TakeProfit - 이익 취득.
  • Magic_N - 매직 번호.
  • MaxOrdersCount - 허용된 총 주문 수. -1 - 제한 없음.
  • MaxBuyCount - 허용된 구매 주문 수. -1 - 제한 없음.
  • MaxSellCount - 허용된 판매 주문 수. -1 - 제한 없음.
  • SleepBars - 주문 개설 후 대기 시간(작업 시간 프레임의 바 수).
  • CancelSleeping - 반대 방향으로 주문을 개설할 때 대기 시간 취소 기능 활성화.
  • CloseOnRev - 주문 개설 전에 반대 방향의 주문을 닫기.
  • TrailingStop_Use - 트레일링 스톱 기능 활성화.
  • TrailingStopStart - 트레일링 스톱을 활성화하기 위한 주문 이익.
  • TrailingStop - 트레일링 스톱 레벨.
  • BreakEven_Use - 손익 분기점 기능 활성화.
  • BreakEvenStart - 손익 분기점 활성화 시 주문 이익.
  • BreakEvenLevel - 손익 분기점 활성화 가격에서 손실 중지를 배치할 레벨.

참고

전문가와 함께 제공되는 아카이브에는 ind_Test 인디케이터(두 개의 MA 교차)의 설정 예제가 포함된 test_example.set 파일이 있습니다. 최적화할 변수가 포함되어 있습니다. ind_Test 인디케이터가 첨부되어 있습니다.

버전 2

1. 개방 및 종료 신호를 위한 다양한 인디케이터를 사용할 수 있는 기능이 추가되었습니다. 개방 인디케이터의 매개변수는 _O_ 접두사로 시작하고, 종료 인디케이터는 _C_ 접두사로 시작합니다.

개방 및 종료 인디케이터를 사용하는 세 가지 가능한 모드가 있습니다(_OС_Mode 변수로 정의됨):

  • 모드 1 - 종료를 위해 인디케이터가 사용되지 않습니다. 종료는 손실 중지 및 이익 취득만 가능합니다.
  • 모드 2 - 종료 인디케이터가 사용되지 않습니다. 손실 중지 및 이익 취득 외에, 반대 주문의 종료는 개방 신호에 의해 이루어집니다. 손실 중지 및 이익 취득을 비활성화할 수 있습니다 - StopLoss 및/또는 TakeProfit 변수에 0 값을 설정합니다(모든 모드에 적용).
  • 모드 3 - 종료 인디케이터(_C_)를 기반으로 하는 별도의 종료 신호를 사용합니다. 이 모드에서는 개방 인디케이터의 매개변수를 종료 인디케이터의 매개변수로 복사하는 추가 모드를 사용할 수 있습니다(변수 C_UseOpenParam). 이 모드는 개방 및 종료 신호를 생성하는 인디케이터에 대해 최적화 속도를 높이기 위해 만들어졌습니다(최적화된 매개변수도 복사됩니다).

2. 화살표가 아닌 선을 가진 인디케이터도 사용할 수 있게 되었습니다. 두 개의 선(주요 및 신호선의 교차)과 하나의 선(레벨과의 교차)을 사용할 수 있습니다. 인디케이터 유형을 선택하려면 _O_Mode 변수(종료 블록에서는 _С_Mode)를 사용합니다.

  • 모드 1 - 인디케이터가 화살표를 그립니다. _O_M1_iBuyBufIndex 및 _O_M1_iSellBufIndex 변수를 사용하여 버퍼 번호를 지정하며, 종료 블록에서는 _C_M1_iCloseBuyBufIndex 및 _C_M1_iCloseSellBufIndex를 사용합니다.
  • 모드 2 - 인디케이터의 주요선과 신호선을 사용합니다. 주요선이 신호선을 아래에서 교차할 때 구매 또는 판매 종료 신호가 발생합니다. _O_M2_iMainBufIndex, _O_M2_iSignalBufIndex 및 _C_M2_iMainBufIndex, _C_M2_iSignalBufIndex 변수를 사용하여 버퍼를 지정합니다.
  • 모드 3 - 하나의 인디케이터 선을 사용합니다. 버퍼 번호는 _O_M3_iBufIndex 변수(또는 종료 블록에서 _С_M3_iBufIndex)로 지정됩니다. _O_M3_BuyLevel 및 _O_M3_SellLevel(_O_M3_CloseBuyLevel 및 _C_M3_CloseSellLevel는 종료 블록에서)로 레벨 값을 지정합니다. 아래에서 구매 레벨을 교차할 때 구매 신호, 위에서 판매 레벨을 교차할 때 판매 신호가 발생합니다.

버전 3

또 다른 _O_Mode 모드(및 _S_Mode)가 추가되었습니다.

모드 4 - 세 점의 극대값. 하나의 인디케이터 선을 사용합니다. 버퍼 번호는 _O_M4_iBufIndex(또는 종료 블록에서 _С_M4_iBufIndex) 변수로 지정됩니다.



버전 4

1. 대기 주문 작업 추가.
2. 속성 창에서 구분선 추가(문자열 변수에서).

주문 유형 선택은 OrdType 변수로 수행됩니다: 0 - 시장, 1 - 정지, 2 - 제한(변수는 "주문" 섹션에 있습니다).

대기 주문 운영 관리를 위한 "대기 주문" 변수 섹션:

  • PendLevel - 현재 시장 가격에서 대기 주문을 배치할 레벨
  • PendPromPrice - 대기 주문을 배치할 가격은 제로 바의 가격을 기준으로 계산됩니다. PendPromPrice=0이면 현재 시장 가격에서, 1이면 배트 오픈 가격에서 계산됩니다.
  • PendNewSigMode - 새로운 거래 신호에 대한 대기 주문 제어 방법: 0 - 주문이 이미 배치된 경우 새로운 거래 신호 발생 시 아무런 조치 없음, 1 - 새로운 신호에서 주문 교체, 2 - 새로운 신호에서 주문을 "더 좋은 레벨"로만 교체 - 구매 정지는 오직 하향, 구매 제한은 오직 상승, 판매 정지는 오직 상승, 판매 제한은 오직 하향.
  • PendPriceFollow - 가격 추적 모드. PendPromPrice의 특정 변수가 변경될 때마다 주문이 수정됩니다. 주문은 "더 좋은 가격"으로만 교체됩니다(변수 PendNewSigMode의 설명 참조).
  • PendDelete - 반대 거래 신호에서 대기 주문 삭제. false 값에서는 서로 다른 방향으로 두 개의 대기 주문이 동시에 존재할 수 있습니다.
  • PendExpiration - 주문 만료 시간(최소 값은 11분).

연관 포스트

댓글 (0)