본문 바로가기
트레이딩/메타트레이더 코딩

MQL5. 포지션 함수, 클래스 활용코드 . 심볼1개의 모든 포지션등.

by i.got.it 2020. 11. 8.

 

 

1. 계정의 모든 심볼의 모든 포지션 정보들 확보하기. 


#include <Trade\PositionInfo.mqh>
 
CPositionInfo m_PosiInfo; 

int Proc_SupplyPosition()
{
   int num_position_all_symbol = PositionsTotal(); // 계좌의 모든 포지션 수량 반환됨. 
   
   
   for(int idx_posi = 0 ; idx_posi < num_position_all_symbol; idx_posi++)
   {
      m_PosiInfo.SelectByIndex(idx_posi); // 인덱스로 포지션 선택하고, 
      
      Proc_GetInfoPosi(); // 현재 선택된 포지션 1개에서 필요한 정보 확보. 

   }
         
   return 1; 
}

void Proc_GetInfoPosi()
{
	// 필요한정보들 m_PosiInfo 이용하여 확보. 
   long ticket_posi = m_PosiInfo.Ticket(); 
   long time_msec_posi_open = m_PosiInfo.TimeMsc();
   ...
   
}

 

 

 

 

2. EA 가 배치된 챠트의 심볼의 포지션 정보들만 확보하기 

- 상기 1의 for 루프내에서 선택된 포지션의 심볼이 챠트의 심볼인것만 선택적으로 처리하는부분 추가됨. 

 

#include <Trade\PositionInfo.mqh>
 
CPositionInfo m_PosiInfo; 

int Proc_SupplyPosition()
{
   int num_position_all_symbol = PositionsTotal(); // 계좌의 모든 포지션 수량 반환됨. 
   
    
   for(int idx_posi = 0 ; idx_posi < num_position_all_symbol; idx_posi++)
   {
      m_PosiInfo.SelectByIndex(idx_posi); // 인덱스로 포지션 선택하고, 
      
      if(m_PosiInfo.Symbol() == _Symbol) //포지션의 심볼이 ea 가 적용중인 챠트의 심볼과 같은것만 검출. 
      {
         Proc_GetInfoPosi(); // 현재 선택된 포지션에서 정보 확보. 
      }      

   }
         
   return 1; 
}

void Proc_GetInfoPosi()
{
	// 필요한정보들 m_PosiInfo 이용하여 확보. 
   long ticket_posi = m_PosiInfo.Ticket(); 
   long time_msec_posi_open = m_PosiInfo.TimeMsc();
   ...
   
}

 

 

 

연관

 

상위정리

 

메타트레이더 5. 체계정리. 활용법/지식

MetaTrader 5 메타트레이더 5 , 메타에디터, MQL5 활용정보 체계정리. 본 글에서 주요 정리대상 정보 1. 메타트레이더 5 사용법. 2. MQL5 언어 기반 "직접 코딩"하여 메타프레이더5에서 자동매매 달성하기

igotit.tistory.com

 

 

 

 

 

 


첫 등록 : 2020.11.08

최종 수정 : 2023.03.06

단축 주소 : https://igotit.tistory.com/2689


 

댓글



 

비트코인




암호화폐       외환/나스닥/골드       암호화폐/외환/나스닥/골드 암호화폐/외환/나스닥/골드   암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)     롤오버 이자 없는 스왑프리계좌
( 스왑프리 암호화폐도 거래 가능 )    
MT4, MT5 , cTrader 모두 지원     FTMO 계좌 매매운용. MT4,MT5