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

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

파이썬 키움증권 open api 분할매매 수식구하기

장시작 또는 현재가에서 지정한 투자금액에 따라 매수는 피라미드형, 매도는 역피라미드형으로 매매주문하기

 

 

 


#코스피
#5,000 ~ 10,000 = 10#10,000 ~ 50,000 = 50#50,000 ~ 100,000 = 100#100,000 ~ 500,000 = 500#500,000 ~ 1,000,000 = 1000
#코스닥
#5,000 ~ 10,000 = 10#10,000 ~ 50,000 = 50#50,000 ~ 100원단위

order_money=5100                                 #현재가
max_order_money=1000000                          #총매매금액
mom_ea=int(round(max_order_money/order_money,0)) #총매매금액 나누기 현재가 = 총매매 수량

print("총매매 주식수 : ",mom_ea)
sellbuy_ea=[]
rate_sb=0.027

for i in range(0,10):
    sellbuy_ea.append(int(mom_ea*rate_sb))
    rate_sb = (rate_sb + 0.008) * 1.115

temp=0
for i in range(0,10):
    temp=temp+sellbuy_ea[i]
    temp1=order_money*temp
print("실투자수량:",temp,"실투자금액:",temp1)
print("매수호가주문수량",sellbuy_ea)


#0.5% ~ 10%까지의 매수호가/매도호가 생성
sell_m=[]
buy_m=[]
rate_v=0.005
for i in range(0,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)


## 상한가 구하기
highlow = 0.28
max_money=order_money + order_money * highlow
min_money=order_money - order_money * highlow
#print(order_money,max_money,min_money)

## 상한가 자리수에 따라 반올림하고 정수화하기
if order_money < 1000:
    max_money = int(round(order_money + order_money * highlow, 0))
    min_money = int(round(order_money - order_money * highlow, 0))
    print('현재가:',order_money,'상한가:',max_money,'하한가:',min_money)

if order_money < 5000:
    max_money = int(round(order_money + order_money * highlow, -1))
    min_money = int(round(order_money - order_money * highlow, -1))
    print('현재가:',order_money,'상한가:',max_money,'하한가:',min_money)

elif order_money < 10000:
    max_money = int(round(order_money + order_money * highlow, -1))
    min_money = int(round(order_money - order_money * highlow, -1))
    print('현재가:',order_money,'상한가:',max_money,'하한가:',min_money)

elif order_money < 50000:
    max_money = int(round(order_money + order_money * highlow, -2))
    min_money = int(round(order_money - order_money * highlow, -2))
    print('현재가:',order_money,'상한가:',max_money,'하한가:',min_money)

elif order_money < 100000:
    max_money = int(round(order_money + order_money * highlow, -3))
    min_money = int(round(order_money - order_money * highlow, -3))
    print('현재가:',order_money,'상한가:',max_money,'하한가:',min_money)

elif order_money < 500000:
    max_money = int(round(order_money + order_money * highlow, -4))
    min_money = int(round(order_money - order_money * highlow, -4))
    print('현재가:',order_money,'상한가:',max_money,'하한가:',min_money)

elif order_money < 1000000:
    max_money = int(round(order_money + order_money * highlow, -5))
    min_money = int(round(order_money - order_money * highlow, -5))
    print('현재가:',order_money,'상한가:',max_money,'하한가:',min_money)
    
로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
» 컴퓨터잡담 파이썬 키움증권 open api 분할매매 수식구하기 2021.09.04 1343
876 파이썬 파이썬 키움증권 OPEN API 매수/매도/정정/취소 주문방법 2021.09.05 4036
875 파이썬 파이썬 키움openAPI 원하는 종목리스트 10호가까지 피라미드 매수주문하기 2021.09.16 3568
874 파이썬 파이썬 키움openAPI 보유종목 종목리스트 피라미드 매수주문하기 2021.09.16 3026
873 파이썬 파이썬 키움openAPI 보유종목 종목리스트 피라미드 매도주문하기 2021.09.16 2557
872 컴퓨터잡담 파이썬 최대값 두번째 큰값 세번째 큰값 구하기 2021.07.27 5015
871 컴퓨터잡담 파이썬 초보자가 접하기 쉬운 오류 메시지 2 2021.06.15 1441
870 파이썬 파이썬 정규표현식 (Regular Expressions) 2021.10.31 3180
869 컴퓨터잡담 파이썬 자주 발생되는 에러(오류) 대처방법 file 2021.06.05 2662
868 파이썬 파이썬 음력에서 양력변환 또는 양력에서 음력변환방법 2021.09.22 3793
867 컴퓨터잡담 파이썬 웹페이지 기업정보 추출하기 2021.06.02 1823
866 파이썬 파이썬 웹크롤링 오류 대처방법(verify=False)requests.exceptions.SSLError: 2021.09.16 3638
865 파이썬 파이썬 오류모음(에러모음) file 2021.09.09 3755
864 컴퓨터잡담 파이썬 엑셀 다루기 - openpyxl 사용법 2021.07.19 4902
863 컴퓨터잡담 파이썬 에러 해결방법 모음 2021.07.19 1537
862 컴퓨터잡담 파이썬 아나콘다 설치시 오류발생 대처방법 2021.06.16 11564
861 컴퓨터잡담 파이썬 셀레니움으로 네이버 증권의 종목 검색하여 특정항목 클릭하기 2021.05.30 1564
860 컴퓨터잡담 파이썬 사이트 정보 가져와서 필요한 내용 추출하기 2021.05.31 1779
859 파이썬 파이썬 비활성화 창 이미지 캡쳐하고 클릭하기 2023.02.24 3978
858 파이썬 파이썬 비활성화 된 창 활성화 시키기 2023.02.25 3550
Board Pagination Prev 1 2 3 4 5 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소