본문 바로가기

프로그래밍/한국투자증권API

한국투자증권 API 모바일앱 - SDOC 주식 일별 주문 체결 조회

반응형

한국투자증권 API 모바일앱 - SDOC 주식 일별 주문 체결 조회

 

 

SampleCode와 같이 m_TestTranProc 를 선언했다.

var m_TestTranProc: ExpertTranProc? = null //Test 조회

 

초기화 추가

//Test 조회 - 체결조회 잔고금액조회
m_TestTranProc = ExpertTranProc(this@MainActivity)
m_TestTranProc!!.InitInstance(this@MainActivity)
m_TestTranProc!!.SetShowTrLog(false)

 

onDestroy() 추가

m_TestTranProc!!.ClearInstance()
m_TestTranProc = null

 

 

fun runSDOC(mStrCode:String) {   //주식 일별 주문 체결 조회
        var strPass = "비밀번호"
        var strEncPass = ""
        //계좌번호
        m_TestTranProc!!.SetSingleData(0, 0, tStatus.text.toString())
        //상품코드
        m_TestTranProc!!.SetSingleData(0, 1, "01")
        //비밀번호
        strEncPass = m_OrderTranProc!!.GetEncryptPassword(strPass)
        m_TestTranProc!!.SetSingleData(0, 2, strEncPass)

        val now = System.currentTimeMillis()
        val date = Date(now)
        val CurDate = SimpleDateFormat("yyyyMMdd")
        val strDate = CurDate.format(date)

        val calendar = Calendar.getInstance()
        calendar.add(Calendar.DATE, -5)
        val CurDate2 = SimpleDateFormat("yyyyMMdd")
        val strDate2 = CurDate2.format(calendar.time)

        m_TestTranProc!!.SetSingleData(0, 3, strDate2) //조회시작일시
        m_TestTranProc!!.SetSingleData(0, 4, strDate) //조회종료일시
        m_TestTranProc!!.SetSingleData(0, 5, "00") //매도매수구분코드 00 전체
        m_TestTranProc!!.SetSingleData(0, 6, "00") //조회구분   00역순
        m_TestTranProc!!.SetSingleData(0, 7, mStrCode) //상품번호
        m_TestTranProc!!.SetSingleData(0, 8, "00") //체결구분  00전체
        m_TestTranProc!!.SetSingleData(0, 9, " ") //주문채번지점번호
        m_TestTranProc!!.SetSingleData(0, 10, " ") //주문번호
        m_TestTranProc!!.SetSingleData(0, 11, "00") //조회구분3     00 전체, 01 현금, 02 융자, 03 대출, 04 대주
        m_TestTranProc!!.SetSingleData(0, 12, " ") //조회구분1    없음:전체  1 : ELW , 2 : 프리보드
        m_TestTranProc!!.SetSingleData(0, 13, " ") //연속조회검색조건100
        m_TestTranProc!!.SetSingleData(0, 14, " ") //연속조회키100
        m_TestTranProc!!.RequestData("sdoc")
    }

 

onTranDataReceived() 로 결과가 들어온다.

 

if (sTranID!!.contains("sdoc")) //주식 일별 주문 체결 조회
        {
            val nCount = m_TestTranProc!!.GetValidCount(0)
            for (i in 0 until nCount) {
                val strDate = m_TestTranProc!!.GetMultiData(0, 0, i) //주문일자
                val strOrderNumber = m_TestTranProc!!.GetMultiData(0, 2, i) //주문번호
                val strSellBuy = m_TestTranProc!!.GetMultiData(0, 6, i) //매도매수구분명
                val strCode = m_TestTranProc!!.GetMultiData(0, 7, i) //상품번호
                val strNo = m_TestTranProc!!.GetMultiData(0, 31, i) //주문조직번호
                System.out.println("StockLog SDOC : " + strDate + strOrderNumber + strSellBuy + strCode + strNo)
            }
            var nQty = 0
            val strQty = m_TestTranProc!!.GetSingleData(1, 0) //총주문수량
            if (!strQty.isEmpty()) nQty = strQty.toInt()
            var nQty2 = 0
            val strQty2 = m_TestTranProc!!.GetSingleData(1, 1) //총체결수량
            if (!strQty2.isEmpty()) nQty2 = strQty2.toInt()
            var nPrice = 0.0
            val strPrice = m_TestTranProc!!.GetSingleData(1, 2) //매입평균가격
            if (!strPrice.isEmpty()) nPrice = strPrice.toDouble()
            System.out.println(String.format("sdoc:주식 일별 주문 체결 조회 : 총주문수량:%s 총체결수량:%s 매입평균가격:%s ", nQty, nQty2, nPrice))
        }

 

 

한국투자증권 OpenAPI 모바일앱 개발 전체 리스트

stockant.tistory.com/304

 

==================================================

한국투자증권 OpenAPI 관련 블로그 내용을 모아 편집하여 전자책을 만들었습니다.

블로그 내용과 거의 유사하므로 블로그를 참고하실 분은 구매하지 않으셔도 됩니다.

kmong.com/gig/248964

 

 

 

 

 

 

 

반응형