728x90
현재 잔고를 가져오기 위해서는 TR 코드의 OPW00004 를 이용하면 됩니다
우선 SetInputValue 를 진행 후 TRData를 요청합니다
m_axKHOpenAPI.SetInputValue("계좌번호", "계좌번호");
m_axKHOpenAPI.SetInputValue("비밀번호", "");
m_axKHOpenAPI.SetInputValue("상장폐지조회구분", "0");
m_axKHOpenAPI.SetInputValue("비밀번호입력매체구분", "00");
m_axKHOpenAPI.CommRqData("계좌평가현황요청", "OPW00004", 0, "0200");
이후 수신받은 ReceiveTrData 에서 처리 구문을 추가하면 됩니다
private void m_axKHOpenAPI1_OnReceiveTrData(object sender, AxKHOpenAPILib._DKHOpenAPIEvents_OnReceiveTrDataEvent e)
{
if (e.sRQName.IndexOf("계좌평가현황요청") >= 0)
{
string[] strRQData = e.sRQName.Split(';');
int nCnt = m_axKHOpenAPI.GetRepeatCnt(e.sTrCode, e.sRQName);
if (nCnt > 0)
{
for (int nIdx = 0; nIdx < nCnt; nIdx++)
{
string str종목코드 = m_axKHOpenAPI.GetCommData(e.sTrCode, e.sRQName, nIdx, "종목코드").Trim();
string str종목명 = m_axKHOpenAPI.GetCommData(e.sTrCode, e.sRQName, nIdx, "종목명").Trim();
int i보유수량 = int.Parse(m_axKHOpenAPI.GetCommData(e.sTrCode, e.sRQName, nIdx, "보유수량").Trim());
double d평균단가 = double.Parse(m_axKHOpenAPI.GetCommData(e.sTrCode, e.sRQName, nIdx, "평균단가").Trim());
double d매입금액 = double.Parse(m_axKHOpenAPI.GetCommData(e.sTrCode, e.sRQName, nIdx, "매입금액").Trim());
double d현재가 = double.Parse(m_axKHOpenAPI.GetCommData(e.sTrCode, e.sRQName, nIdx, "현재가").Trim());
//...
}
}
}
}
제 글이 도움이 되셨다면 댓글 & 공감 부탁드려요 😀
728x90
반응형
'Application > C# (WinForm)' 카테고리의 다른 글
[C# WinForm] 키움 증권 OpenAPI 당일 순익률 가져오기 (0) | 2023.03.06 |
---|---|
[C# WinForm] wav 음원 출력 하기 (0) | 2023.03.03 |
[C# WinForm] 키움 증권 Open API 전 종목 실시간 데이터 등록하기 (0) | 2023.02.28 |
[C# WinForm] 키움 증권 Open API 사용법 (OCX 사용) (0) | 2023.02.24 |
[C# WinForm] 시간 차 구하기 (DateTime, TimeSpan) (0) | 2023.02.23 |