시스템트레이딩

두 개의 이동 평균 교차 전략 - MetaTrader 5에서 활용하기
MetaTrader5
두 개의 이동 평균 교차 전략 - MetaTrader 5에서 활용하기

아이디어 제공자: ITM7 (영감을 받은 곳: 요청 및 아이디어 (MQL5 전용)) MQL5 코드 작성자: Vladimir Karputov. 추가 사항: 이동 평균(iMA) 호출이 사용자 정의 이동 평균 색상 입력 호출로 변경되었습니다. 테스터(시각 모드)에서 또는 차트에 부착했을 때, 이 EA는 다양한 색상으로 이동 평균 지표를 시각화합니다: 두 개의 이동 평균(iMA) 교차를 활용하며, 필터로 추가적인 이동 평균(iMA)을 사용합니다. 포지션 롯트 계산: 수동 또는 잔고의 리스크 비율에 따라 결정합니다. 거래 방식: 스탑, 시장 또는 리미트 주문을 사용할 수 있으며, EA는 스탑 로스, 테이크 프로핏, 트레일링 스탑도 설정합니다. 입력 매개변수: (추가된 부분은 강조됨) “첫 번째 이동 평균의 매개변수” 첫 번째 이동 평균의 기간 첫 번째 이동 평균의 시프트 첫 번째 이동 평균의 방법 첫 번째 이동 평균의 색상 “두 번째 이동 평균의 매개변수” 두 번째 이동 평균의 기간 두 번째 이동 평균의 시프트 두 번째 이동 평균의 방법 두 번째 이동 평균의 색상 “세 번째 이동 평균의 매개변수” 세 번째 지표 이동 평균 - 필터 세 번째 이동 평균의 기간 세 번째 이동 평균의 시프트 세 번째 이동 평균의 방법 세 번째 이동 평균의 색상 “머니 매니지먼트 매개변수” true -> 롯트를 수동으로 설정, false -> 잔고의 리스크 비율 롯트 수 (수동 롯트 크기만 사용할 경우) “거래 매개변수” 거래당 리스크 비율 (핍 단위) <0 -> 스탑 주문, =0 -> 시장, >0 -> 리미트 주문 스탑 로스 (핍 단위) 테이크 프로핏 (핍 단위) 트레일링 스탑 (“0” -> 트레일링 없음) 트레일링 스텝 (트레일링 스탑이 >0일 때 사용) 매직 넘버 슬리피지

2017.08.10
MetaTrader 5를 위한 Exp_ColorXMUV_Tm EA: 설정 및 활용 가이드
MetaTrader5
MetaTrader 5를 위한 Exp_ColorXMUV_Tm EA: 설정 및 활용 가이드

안녕하세요, 트레이더 여러분! 오늘은 MetaTrader 5에서 사용할 수 있는 Exp_ColorXMUV_Tm EA에 대해 소개해 드릴게요. 이 EA는 ColorXMUV 지표의 MA 신호를 기반으로 하며, 고정된 거래 시간 간격을 설정할 수 있는 기능을 가지고 있습니다. 거래 신호는 바가 닫힐 때 지표의 색상이 변경되면 생성됩니다. 거래 시간을 입력 파라미터에서 지정하여 특정 시간 간격에 맞춰 거래할 수 있습니다: input bool   TimeTrade=true;      //지정된 간격 내에서 거래 허용 input HOURS  StartH=ENUM_HOUR_0;  //거래 시작 시간 (시) input MINUTS StartM=ENUM_MINUT_0; //거래 시작 시간 (분) input HOURS  EndH=ENUM_HOUR_23;   //거래 종료 시간 (시) input MINUTS EndM=ENUM_MINUT_59;  //거래 종료 시간 (분) 거래 시작 시간과 종료 시간을 위한 두 개의 변수(시와 분)를 제공합니다. 기본 설정에서는 EA가 0:00부터 거래를 시작하고, 모든 포지션은 23:59에 종료됩니다. 만약 시작 시간이 끝나는 시간보다 늦다면, EA는 다음 날 지정된 시간에 포지션을 종료하게 됩니다. EA의 올바른 작동을 위해서는 ColorXMUV.ex5 컴파일된 지표 파일을 <terminal_data_folder>\MQL5\Indicators 폴더에 저장해야 합니다. 또한, TradeAlgorithms.mqh 라이브러리 파일을 사용하면 비제로 스프레드를 제공하는 브로커와 함께 EA를 사용할 수 있으며, 포지션 개시 시 손절매와 이익실현 설정이 가능합니다. 더 많은 라이브러리 변형은 다음 링크에서 다운로드할 수 있습니다: Trade Algorithms. 아래 테스트에서 보여지는 것처럼 기본 입력 파라미터가 사용되었습니다. 테스트 중에는 손절매와 이익실현이 사용되지 않았습니다. 그림 1. 차트에서의 거래 예시 2015년 GBPUSD H2에 대한 테스트 결과는 다음과 같습니다: 그림 2. 테스트 결과 차트

2017.08.10
MetaTrader 5를 위한 Exp_ColorJFatl_Digit_Tm EA 소개
MetaTrader5
MetaTrader 5를 위한 Exp_ColorJFatl_Digit_Tm EA 소개

안녕하세요, 트레이더 여러분! 오늘은 ColorJFatl_Digit 지표를 기반으로 한 Exp_ColorJFatl_Digit_Tm 전문가 시스템에 대해 알아보겠습니다. 이 EA는 특정한 거래 시간대를 설정할 수 있는 기능을 제공합니다. 거래 신호는 바가 닫힐 때 발생하며, 이때 지표의 색상이 변경되면 신호가 생성됩니다. 거래하려는 시간을 입력 파라미터에서 설정할 수 있습니다. 아래와 같은 코드를 통해 거래 시간대를 지정할 수 있습니다: input bool   TimeTrade=true;      //지정된 시간대에서 거래 허용 input HOURS  StartH=ENUM_HOUR_0;  //거래 시작 (시간) input MINUTS StartM=ENUM_MINUT_0; //거래 시작 (분) input HOURS  EndH=ENUM_HOUR_23;   //거래 종료 (시간) input MINUTS EndM=ENUM_MINUT_59;  //거래 종료 (분) 여기서 거래 시작 시간과 종료 시간을 각각 설정할 수 있습니다. 기본 설정은 EA가 0:00부터 거래를 시작하여 23:59에 모든 포지션을 종료하도록 되어 있습니다. 만약 시작 시간이 종료 시간보다 늦다면, EA는 다음 날 지정된 시간에 포지션을 종료합니다. 이 EA가 올바르게 작동하기 위해서는 ColorJFatl_Digit.ex5 컴파일된 지표 파일을 <terminal_data_folder>\MQL5\Indicators에 저장해야 합니다. 또한, TradeAlgorithms.mqh 라이브러리 파일은 비제로 스프레드를 제공하는 브로커와 함께 EA를 사용할 수 있도록 해주며, 포지션 개시 시 스톱 로스와 테이크 프라핏을 설정할 수 있는 옵션도 제공합니다. 다양한 라이브러리 버전은 다음 링크에서 다운로드 가능합니다: Trade Algorithms. 아래 테스트 결과는 기본 입력 파라미터를 사용하여 진행되었으며, 테스트 동안 스톱 로스와 테이크 프라핏은 사용되지 않았습니다. 그림 1. 차트에서의 거래 예시 2015년 EURUSD H4 테스트 결과: 그림 2. 테스트 결과 차트

2017.08.10
Exp_PercentageCrossover: 메타트레이더 5를 위한 시스템 트레이딩 EA
MetaTrader5
Exp_PercentageCrossover: 메타트레이더 5를 위한 시스템 트레이딩 EA

안녕하세요, 트레이더 여러분! 오늘은 메타트레이더 5에서 사용할 수 있는 Exp_PercentageCrossover 시스템 트레이딩 EA에 대해 알아보겠습니다. 이 EA는 PercentageCrossover 지표의 색상 변화에 기반하여 매매 신호를 생성합니다. 또한, 특정 시간대에만 거래를 할 수 있도록 설정할 수 있는 기능도 제공합니다. 거래 신호는 바가 마감할 때 지표의 방향, 즉 색상이 변화할 때 형성됩니다. 거래 시간 설정하기 거래 시간은 입력 매개변수에서 설정할 수 있습니다: input bool   TimeTrade=true;      // 지정된 시간대에 거래 허용 input HOURS  StartH=ENUM_HOUR_0;  // 거래 시작 시간 (시) input MINUTS StartM=ENUM_MINUT_0; // 거래 시작 시간 (분) input HOURS  EndH=ENUM_HOUR_23;   // 거래 종료 시간 (시) input MINUTS EndM=ENUM_MINUT_59;  // 거래 종료 시간 (분) 여기서 거래 시작과 종료를 위한 두 개의 변수(시간과 분)를 설정할 수 있습니다. 기본 설정으로는 EA가 0:00부터 23:59까지 모든 거래를 수행하도록 되어 있습니다. 만약 시작 시간이 종료 시간보다 늦다면, EA는 다음 날에 지정된 시간에 포지션을 종료하게 됩니다. EA의 올바른 작동을 위한 설정 이 EA가 제대로 작동하려면 TotalPowerIndicatorX.ex5 컴파일된 지표 파일을 <terminal_data_folder>\MQL5\Indicators 위치에 저장해야 합니다. 또한, TradeAlgorithms.mqh 라이브러리 파일을 사용하면 비제로 스프레드를 제공하는 브로커와 함께 EA를 사용할 수 있으며, 포지션 오픈 시 스톱 로스와 테이크 프라핏을 설정할 수 있는 옵션이 제공됩니다. 라이브러리의 다른 변형을 다운로드하려면 다음 링크를 참조하세요: Trade Algorithms. 아래에 소개하는 테스트 결과는 기본 입력 매개변수를 사용하여 진행한 것입니다. 테스트 중에는 스톱 로스와 테이크 프라핏을 사용하지 않았습니다. Fig. 1. 거래 차트 예시 2015년 USDJPY H4 테스트 결과입니다: Fig. 2. 테스트 결과 차트

2017.08.10
Exp_TotalPowerIndicatorX: 메타트레이더 5를 위한 시스템 트레이딩 도구
MetaTrader5
Exp_TotalPowerIndicatorX: 메타트레이더 5를 위한 시스템 트레이딩 도구

안녕하세요, 트레이더 여러분! 오늘은 TotalPowerIndicatorX 오실레이터를 기반으로 하는 Exp_TotalPowerIndicatorX 시스템 트레이딩 도구에 대해 알아보겠습니다. 이 도구는 특정한 거래 시간 간격을 설정할 수 있는 기능을 제공합니다. 거래 신호는 바가 닫힐 때 형성되며, 이때 지표 구름의 색상이 변경되면 (주 지표 선이 신호 선을 교차할 때) 거래 신호가 발생합니다. 입력 파라미터에서 거래 시간을 지정하여 원하는 시간 간격에 맞춰 거래할 수 있습니다: input bool   TimeTrade=true;      //지정된 간격에서 거래 허용 input HOURS  StartH=ENUM_HOUR_0;  //거래 시작 시간 (시간) input MINUTS StartM=ENUM_MINUT_0; //거래 시작 시간 (분) input HOURS  EndH=ENUM_HOUR_23;   //거래 종료 시간 (시간) input MINUTS EndM=ENUM_MINUT_59;  //거래 종료 시간 (분) 거래 시작 시간과 종료 시간을 설정하기 위해 두 개의 변수(시간 및 분)가 제공됩니다. 기본 설정으로는 이 전문가 어드바이저가 0:00부터 23:59까지 모든 거래 세션에서 거래를 수행합니다. 시작 시간이 종료 시간보다 늦게 설정된 경우, 이 전문가 어드바이저는 다음 날 지정된 시간에 포지션을 종료합니다. 전문가 어드바이저가 올바르게 작동하려면 TotalPowerIndicatorX.ex5 컴파일된 지표 파일을 <terminal_data_folder>\MQL5\Indicators 폴더에 저장해야 합니다. TradeAlgorithms.mqh 라이브러리 파일은 비제로 스프레드를 제공하는 브로커와 함께 전문가 어드바이저를 사용할 수 있게 해주며, 포지션 개설 시 손절매 및 이익실현 설정이 가능합니다. 추가적인 라이브러리 변형은 다음 링크에서 다운로드할 수 있습니다: Trade Algorithms. 아래 테스트에서 보여진 것처럼 전문가 어드바이저의 기본 입력 파라미터가 사용되었습니다. 테스트 중에는 손절매와 이익실현이 사용되지 않았습니다. Fig. 1. 거래 예시 2015년 GBPUSD H4에 대한 테스트 결과: Fig. 2. 테스트 결과 차트

2017.08.10
MetaTrader 5를 위한 효율적인 EA 사용법
MetaTrader5
MetaTrader 5를 위한 효율적인 EA 사용법

아이디어 저자: ef91 (관련 논의의 시작 #62) MQL5 코드 저자: Vladimir Karputov. 이 EA는 TP(테이크 프로핏)나 SL(스톱 로스)가 발동되면 반대 방향으로 포지션을 열어줍니다. 거래 요청을 보내기 전에 잔고가 충분한지를 체크합니다. 이 과정은 OnTradeTransaction 함수에서 처리됩니다. 예를 들어, 현재 Buy 포지션이 열려 있는 경우, TP나 SL이 발동되면 새로운 Sell 포지션이 열립니다. 이후 TP나 SL이 발동되면 다시 새로운 Buy 포지션이 열리게 됩니다. 거래 종료는 OnTradeTransaction에서 모니터링됩니다: //+------------------------------------------------------------------+ //| TradeTransaction 함수                                                | //+------------------------------------------------------------------+ void OnTradeTransaction(const MqlTradeTransaction &trans,                         const MqlTradeRequest &request,                         const MqlTradeResult &result)   { //--- 거래 유형을 열거형 값으로 가져오기    ENUM_TRADE_TRANSACTION_TYPE type=trans.type; //--- 거래가 기록에 추가된 결과인지 확인    if(type==TRADE_TRANSACTION_DEAL_ADD)      {       long     deal_entry        =0;       long     deal_type         =0;       string   deal_symbol       ="";       long     deal_magic        =0;       long     deal_time         =0;       if(HistoryDealSelect(trans.deal))         {          deal_entry=HistoryDealGetInteger(trans.deal,DEAL_ENTRY);          deal_type=HistoryDealGetInteger(trans.deal,DEAL_TYPE);          deal_symbol=HistoryDealGetString(trans.deal,DEAL_SYMBOL);          deal_magic=HistoryDealGetInteger(trans.deal,DEAL_MAGIC);          deal_time=HistoryDealGetInteger(trans.deal,DEAL_TIME);         }       else          return;       if(deal_symbol==m_symbol.Name() && deal_magic==m_magic)         {          if(deal_entry==DEAL_ENTRY_OUT)            {             if(deal_type==DEAL_TYPE_BUY || deal_type==DEAL_TYPE_SELL)               {                if(deal_type==DEAL_TYPE_BUY)                   m_close_pos_type=POSITION_TYPE_SELL;                else if(deal_type==DEAL_TYPE_SELL)                   m_close_pos_type=POSITION_TYPE_BUY;                else                   return;                m_is_trade=true;           }          }          else if(deal_entry==DEAL_ENTRY_IN)            {             m_is_trade=false;            }         }      }   } OrderSend 전에 거래량을 체크하세요 (Buy 포지션 개설을 예로 들면): //+------------------------------------------------------------------+ //| Buy 포지션 열기                                                | //+------------------------------------------------------------------+ void OpenBuy(double sl,double tp)   {    sl=m_symbol.NormalizePrice(sl);    tp=m_symbol.NormalizePrice(tp); //--- OrderSend 전에 거래량을 체크하여 "잔고 부족" 오류 방지    double check_volume_lot=m_trade.CheckVolume(m_symbol.Name(),InpLots,m_symbol.Ask(),ORDER_TYPE_BUY);    if(check_volume_lot!=0.0)      {       if(check_volume_lot>=InpLots)         {          if(m_trade.Buy(InpLots,NULL,m_symbol.Ask(),sl,tp))            {             if(m_trade.ResultDeal()==0)               {                Print("Buy -> false. Result Retcode: ",m_trade.ResultRetcode(),                      ", 설명: ",m_trade.ResultRetcodeDescription());               }               else               {                Print("Buy -> true. Result Retcode: ",m_trade.ResultRetcode(),                      ", 설명: ",m_trade.ResultRetcodeDescription());               }            }          else            {             Print("Buy -> false. Result Retcode: ",m_trade.ResultRetcode(),                   ", 설명: ",m_trade.ResultRetcodeDescription());            }         }       else         {          m_is_trade=false;         }      }    else      {       m_is_trade=false;      } //---   }

2017.08.10
MetaTrader 5를 위한 Exp_Kolier_SuperTrend_X2 시스템 트레이딩 소개
MetaTrader5
MetaTrader 5를 위한 Exp_Kolier_SuperTrend_X2 시스템 트레이딩 소개

안녕하세요, 트레이더 여러분! 오늘은 Exp_Kolier_SuperTrend_X2라는 트렌드 트레이딩 시스템을 소개해드릴게요. 이 시스템은 두 개의 Kolier_SuperTrend 지표의 신호를 기반으로 작동합니다. 첫 번째 지표는 느린 트렌드의 방향을 색상으로 판단하고, 두 번째 지표는 색상이 변할 때 거래를 열 시점을 결정합니다. 신호는 바가 닫힐 때 두 가지 조건이 충족되면 발생합니다: 빠른 트렌드와 느린 트렌드의 신호가 일치할 때; 빠른 트렌드의 방향이 변경되었을 때. Expert Advisor 입력 매개변수 //+-------------------------------------------------+ //| EA 지표의 입력 매개변수 | //+-------------------------------------------------+ input string Trade="거래 관리";    //+================ 거래 관리 ================+ input double MM=0.1;              //거래에서의 예치금 비율 input MarginMode MMMode=LOT;      //로트 값 결정 방법 input uint    StopLoss_=1000;     //스톱로스 포인트 input uint    TakeProfit_=2000;   //테이크프라핏 포인트 input string MustTrade="거래 허가";    //+=============== 거래 허가 ===============+ input int    Deviation_=10;       //최대 가격 편차 포인트 input bool   BuyPosOpen=true;     //롱 포지션 진입 허가 input bool   SellPosOpen=true;    //숏 포지션 진입 허가 //+-------------------------------------------------+ 위 코드는 EA 입력 창에서 시각적으로 더 나은 표시를 위해 텍스트가 포함된 문자열 변수입니다. Kolier_SuperTrend_HTF 지표는 전략 테스터에서 트렌드를 더 편리하게 시각화하기 위해 사용되며, 다른 운영 모드에서는 비활성화됩니다. 생성된 Expert Advisor의 원활한 작동을 위해 Kolier_SuperTrend.ex5와 Kolier_SuperTrend_HTF.ex5 컴파일된 파일을 <terminal_data_folder>\MQL5\Indicators 폴더에 배치해야 합니다. TradeAlgorithms.mqh 라이브러리 파일은 비제로 스프레드를 제공하는 브로커와 함께 Expert Advisor를 사용할 수 있게 해줍니다. 또한 거래 개시와 함께 스톱로스와 테이크프라핏을 설정할 수 있는 옵션이 있습니다. 다양한 라이브러리 변형은 다음 링크에서 다운로드할 수 있습니다: 거래 알고리즘. 아래의 테스트에서 사용된 기본 Expert Advisor 입력 매개변수입니다. 테스트 동안 스톱로스와 테이크프라핏은 사용하지 않았습니다. Fig. 1. 거래 예시 차트 2015년 EURUSD에 대한 테스트 결과, H6의 느린 트렌드에서 M30의 빠른 트렌드를 통해 진입한 결과입니다: Fig. 2. 테스트 결과 차트

2017.05.30
처음 이전 25 26 27 28 29 30 31 32 33 34 35 다음 마지막