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
번호 분류 제목 날짜 조회 수
56 파이썬 파이썬 변수전달하기 2021.09.05 1375
55 파이썬 파이썬 키움증권 OPEN API 매수/매도/정정/취소 주문방법 2021.09.05 3984
54 파이썬 키움증권 OpenAPI 당황스러움 file 2021.09.06 1691
53 파이썬 파이썬 매수할 피라미드 매수전략 2021.09.06 1833
» 파이썬 파이썬 키움증권 open api 분할매매 주문하기 2021.09.07 2314
51 파이썬 키움 증권 API를 이용하여 주식 자동 매매 프로그램 개발 3 2021.09.07 3836
50 파이썬 파이썬 오류모음(에러모음) file 2021.09.09 3708
49 파이썬 파이썬 any, all 사용하기(배열데이터 안에 값이 하나라도 있는지 또는 모두 있는지 비교) 2021.09.11 1938
48 파이썬 파이썬 datetime 모듈로 초간단 날짜 표현하기 2021.09.11 2654
47 파이썬 파이썬 openyxl 엑셀파일(xlsx) 저장하기 2021.09.11 2594
46 파이썬 파이썬 dictionary 딕셔너리 조작 2021.09.13 2532
45 파이썬 키움증권 openAPI 지정가분할매수주문.py 2021.09.13 3488
44 파이썬 파이썬 키움openAPI 원하는 종목리스트 10호가까지 피라미드 매수주문하기 2021.09.16 3509
43 파이썬 파이썬 키움openAPI 보유종목 종목리스트 피라미드 매도주문하기 2021.09.16 2537
42 파이썬 파이썬 키움openAPI 보유종목 종목리스트 피라미드 매수주문하기 2021.09.16 3019
41 파이썬 파이썬 웹크롤링 오류 대처방법(verify=False)requests.exceptions.SSLError: 2021.09.16 3615
40 파이썬 python 에서 구글 캘린더 api 이용하기(server to server) 2021.09.17 3233
39 파이썬 Python 메타블로그 글쓰기(제로보드, xpressengine blog api) 2021.09.18 3433
38 파이썬 파이썬 음력에서 양력변환 또는 양력에서 음력변환방법 2021.09.22 3754
37 파이썬 파이썬 팍스넷 추천종목 특정페이지 크롤링 2021.09.23 3444
Board Pagination Prev 1 2 3 Next
/ 3

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소