Skip to content
조회 수 2314 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

파이썬 키움증권 open api 분할매매 주문하기

 

 


import os
import json
import time
import sys
from PyQt5.QtWidgets import *
from PyQt5.QAxContainer import *
from PyQt5.QtCore import *
sys.path.insert(0, '"H:/python/kiwoomapi/anaconda3/PACKAGE_DIR')
from 키움증권.config.errCode import *

from pykiwoom.kiwoom import *
kiwoom = Kiwoom()
kiwoom.CommConnect(block=True)

TR_REQ_TIME_INTERVAL = 0.2

# 주식계좌
accounts = kiwoom.GetLoginInfo("ACCNO")
stock_account = accounts[0]

# 피라미드 주문
account_num = "계좌번호"

item_num = "128540"                 # 종목명

order_money=5250                 #현재가를 변수에 담기
max_order_money=1500000
mom_ea=int(max_order_money/order_money)                             # 총매매금액 나누기 현재가 = 총매매 수량
rate=0.01
합계=0
sellbuy_ea=[]

print("총매매 주식수 : ", mom_ea)
print("총매매금액 : ", max_order_money)
print("총매매금액 : %s, 현재가 : %s, 총수량 %s" %(max_order_money,order_money,mom_ea))
for i in range(0,10):
    sellbuy_ea.append(int(mom_ea * rate))
    rate = rate + 0.02
    합계 = int(int(mom_ea * rate) + 합계)

print("총매매 주식수 : ", mom_ea)
print("총매매금액 : ", max_order_money)

print(order_money*합계,sellbuy_ea)

# 0.5% ~ 10%까지의 매수호가/매도호가 생성
sell_m = []
buy_m = []
rate_v = 0.005
for i in range(0, 40):  ## 20 = 10%에 대한 매도호가 생성 / 40 = 20%에 대한 매도호가 생성
    sell_m.append(order_money + (order_money * rate_v))
    buy_m.append(order_money - (order_money * rate_v))
    rate_v = rate_v + 0.005
# print("매도호가",sell_m)
# 0.5% ~ 10%까지의 폭

## 호가를 자리수에따라 반올림하면서 정수화 함.
buyQ = []
sellQ = []
for i in range(0, len(buy_m)):
    if buy_m[i] < 1000:
        buyQ.append(int(round(buy_m[i], 0)))
    elif buy_m[i] < 5000:
        buyQ.append(int(round(buy_m[i], -1)))
    elif buy_m[i] < 10000:
        buyQ.append(int(round(buy_m[i], -1)))
    elif buy_m[i] < 50000:
        buyQ.append(int(round(buy_m[i], -2)))
    elif buy_m[i] < 100000:
        buyQ.append(int(round(buy_m[i], -2)))
    elif buy_m[i] < 500000:
        buyQ.append(int(round(buy_m[i], -3)))
    elif buy_m[i] < 1000000:
        buyQ.append(int(round(buy_m[i], -3)))

for i in range(0, len(sell_m)):
    if sell_m[i] < 1000:
        sellQ.append(int(round(sell_m[i], 0)))
    elif sell_m[i] < 5000:
        sellQ.append(int(round(sell_m[i], -1)))
    elif sell_m[i] < 10000:
        sellQ.append(int(round(sell_m[i], -1)))
    elif sell_m[i] < 50000:
        sellQ.append(int(round(sell_m[i], -2)))
    elif sell_m[i] < 100000:
        sellQ.append(int(round(sell_m[i], -2)))
    elif sell_m[i] < 500000:
        sellQ.append(int(round(sell_m[i], -3)))
    elif sell_m[i] < 1000000:
        sellQ.append(int(round(sell_m[i], -3)))
#print("매도호가:", sellQ, "\n매수호가:", buyQ)

print("계좌번호 : %s / 종목번호 : %s\n 주문개수 : %s\n 매수가격 : %s" % (account_num, item_num, sellbuy_ea, buyQ)) #buyQ 40호가 까지 / sellbuy_ea 10개까지)
kiwoom.SendOrder("피라미드매수", "0101", account_num, 1, item_num, sellbuy_ea[0], buyQ[0], "00", "")
kiwoom.SendOrder("피라미드매수", "0101", account_num, 1, item_num, sellbuy_ea[1], buyQ[2], "00", "")
kiwoom.SendOrder("피라미드매수", "0101", account_num, 1, item_num, sellbuy_ea[2], buyQ[4], "00", "")
kiwoom.SendOrder("피라미드매수", "0101", account_num, 1, item_num, sellbuy_ea[3], buyQ[7], "00", "")
kiwoom.SendOrder("피라미드매수", "0101", account_num, 1, item_num, sellbuy_ea[4], buyQ[9], "00", "")
kiwoom.SendOrder("피라미드매수", "0101", account_num, 1, item_num, sellbuy_ea[5], buyQ[12], "00", "")
print("지정가 매수완료")


 

 

로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
2344 종교와철학 "박근혜 '애' 낳는 그림 그린 홍씨, 누군가 자신의 어머니를 저런식으로 그렸다면? file 2012.11.19 6344
2343 AutoHotKey #ifwinactive & #ifwinexist 윈도우창 마다 핫키의 용도를 다르게 사용하는 방법 2011.02.14 16518
2342 만들기 <!--f644fe64217d47f8abef1fe9b7150c48--> secret 2010.10.29 3929
2341 Excel 'C:Documents.xlsx' 을(를) 찾을 수 없습니다. 라는 오류 메시지가 나오는 경우 대처방법 2015.01.28 4765
2340 유용한상식 '작업의 정석' 과외받는 남자들 12 2013.03.04 7133
2339 WindowsTip (nPDF) 프린터 인쇄 내용을 PDF 파일로 변환하기 2015.01.24 2271
2338 재미재미 (쇼킹한 음료광고)Thailand funny slimming greentea commercial 1 2 2012.08.25 5530
2337 일상 (펌)개성공단에서 4월 13일 나온 근무자입니다 2013.04.17 20444
2336 유용한상식 (해외송금)SWIFT 국민은행 송금 및 은행별 SWIFT CODE LIST 2014.02.03 17062
2335 재미재미 * 바람피운 남편을 어떻게...* 2010.12.19 5309
Board Pagination Prev 1 2 3 4 5 ... 235 Next
/ 235

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소