Skip to content
조회 수 1355 추천 수 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
번호 분류 제목 날짜 조회 수
77 컴퓨터잡담 rss리더기 2010.03.12 9260
76 컴퓨터잡담 rss리더기 2010.03.12 30710
75 컴퓨터잡담 rss리더기 2010.03.12 9307
74 컴퓨터잡담 rss리더기 2010.03.12 9401
73 컴퓨터잡담 rss리더기 2010.03.12 9431
72 컴퓨터잡담 rss리더기 2010.03.12 9666
71 컴퓨터잡담 무서운 후킹프로세스들~ 방어방법 1 2 2010.02.20 12737
70 컴퓨터잡담 excel 2007에서 공동 작업하기 2010.02.12 24182
69 컴퓨터잡담 JavaScript XML 활용 2010.02.10 9635
68 컴퓨터잡담 HTML 엔티티(Entities) 2010.02.05 11191
67 컴퓨터잡담 HTML 엔티티(Entities) 2010.02.05 10845
66 컴퓨터잡담 자바스크립트 변수를 php로 옮기기 2010.02.03 24987
65 컴퓨터잡담 구글의 Ajax 다국어 번역 API 2010.02.01 15641
64 컴퓨터잡담 html_entity_decode [HTML엔티티를 => 특수문자로 변환 2 2010.01.30 16476
63 컴퓨터잡담 [DOS모드] ftp 자동 전송기능, 도스배치명령으로 FTP 사용하기 1 2010.01.24 20543
62 컴퓨터잡담 API Hooking 유저 레벨 루트킷 1 2010.01.21 11623
61 컴퓨터잡담 tasklist /SVC svchost 시스템 서비스 프로세스 보기 2010.01.21 8117
60 컴퓨터잡담 프로세스 숨기고 복구하기 2010.01.21 7199
59 컴퓨터잡담 SendMessage the values are for wparam 1 2009.12.23 8204
58 컴퓨터잡담 postmassge 마우스 & PixelGetColor & 2009.12.22 7945
Board Pagination Prev 1 ... 41 42 43 44 45 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소