반응형
한국투자증권 API 모바일앱 - satps 주식 계좌 당일 잔고 현황 조회
가이드에는 없는 기능이다.
하지만 SampleOrderView.java 파일에 구현되어 있다.
SampleCode와 같이 m_OrderTranProc를 선언했다.
var m_JangoTranProc: ExpertTranProc? = null //잔고 조회
초기화 추가
m_JangoTranProc = ExpertTranProc(this@MainActivity)
m_JangoTranProc!!.InitInstance(this@MainActivity)
m_JangoTranProc!!.SetShowTrLog(false)
onDestroy() 추가
m_JangoTranProc!!.ClearInstance()
m_JangoTranProc = null
잔고 조회는 아래와 같이 구현했다.
fun getJango(){
var strPass = "비밀번호"
var strEncPass = ""
m_JangoTranProc!!.ClearInblockData()
if (tStatus == null) return
m_JangoTranProc!!.SetSingleData(0, 0, tStatus.getText().toString())
//상품코드
m_JangoTranProc!!.SetSingleData(0, 1, "01")
strEncPass = m_JangoTranProc!!.GetEncryptPassword(strPass)
m_JangoTranProc!!.SetSingleData(0, 2, strEncPass)
m_JangoTranProc!!.SetSingleData(0, 3, "N") //시간외 단일가여부
m_JangoTranProc!!.SetSingleData(0, 4, "N") //오프라인 여부
m_JangoTranProc!!.SetSingleData(0, 5, "01") //조회구분
m_JangoTranProc!!.SetSingleData(0, 6, "01") //단가구분
m_JangoTranProc!!.SetSingleData(0, 7, "N") //펀드결제분 포함여부
m_JangoTranProc!!.SetSingleData(0, 8, "N") //융자금액자동상환여부
m_JangoTranProc!!.SetSingleData(0, 9, "00") //처리구분
m_JangoTranProc!!.SetSingleData(0, 10, " ") //연속조회검색조건
m_JangoTranProc!!.SetSingleData(0, 11, " ") //연속조회키
m_nJangoRqId = m_JangoTranProc!!.RequestData("satps")
}
onTranDataReceived() 로 결과가 들어온다.
if (m_nJangoRqId == nRqId) {
var resultText = ""
//예수금 총금액
val strTotal1 = m_JangoTranProc!!.GetMultiData(1, 0, 0)
//총평가금액
val strTotal2 = m_JangoTranProc!!.GetMultiData(1, 14, 0)
//D-2 정산금액
val strD2price = m_JangoTranProc!!.GetMultiData(1, 9, 0)
val nCount = m_JangoTranProc!!.GetValidCount(0)
resultText = resultText + strTotal1 + " " + strTotal2 + " " + nCount + "\n"
for (i in 0 until nCount) {
//종목
val strCode = m_JangoTranProc!!.GetMultiData(0, 0, i)
val strName = m_JangoTranProc!!.GetMultiData(0, 1, i)
//잔고
val strQty = m_JangoTranProc!!.GetMultiData(0, 7, i)
var strAverPrice = m_JangoTranProc!!.GetMultiData(0, 9, i)
resultText = resultText + strCode + " " + strName + " " + strQty + "\n"
if(strCode.contains("114800")){
inverTotal = strQty
inverAverPrice = strAverPrice.toDouble()
} else if (strCode.contains("122630")) {
leverTotal = strQty
leverAverPrice = strAverPrice.toDouble()
}
}
tResultText.text = resultText
tTotalRaver.text = "레버리지 : " + leverTotal + " 인버스 : " + inverTotal
tStockData2.text = "" + (strTotal1.toInt() - strTotal2.toInt())
System.out.println("KospiEx 잔고조회 : " + resultText + ", D-2정산금액 : " + strD2price)
}
한국투자증권 OpenAPI 모바일앱 개발 전체 리스트
==================================================
한국투자증권 OpenAPI 관련 블로그 내용을 모아 편집하여 전자책을 만들었습니다.
블로그 내용과 거의 유사하므로 블로그를 참고하실 분은 구매하지 않으셔도 됩니다.
반응형
'프로그래밍 > 한국투자증권API' 카테고리의 다른 글
한국투자증권 RestAPI 사용법 - API 신청하기 (0) | 2023.03.11 |
---|---|
한국투자증권 RestAPI 사용법 - 모바일앱 개발 시작 (0) | 2023.03.11 |
한국투자증권 API 모바일앱 - kis_Expert_mobile_guide.pdf 리뷰 (0) | 2020.07.21 |
한국투자증권 API 모바일앱 - SMCP 주식 정정 취소 가능 주문 조회 (0) | 2020.07.20 |
한국투자증권 API 모바일앱 - SMCO 주식 정정 취소 주문 (0) | 2020.07.20 |