Skip to content
조회 수 2340 추천 수 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("지정가 매수완료")


 

 

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

?

  1. 28
    Sep 2021
    13:31

    로블록스 스튜디오하늘에서 부품을 무작위로 떨어뜨리는 스크립트

    Category컴퓨터잡담 Views2599
    Read More
  2. 11
    Sep 2021
    14:26

    파이썬 openyxl 엑셀파일(xlsx) 저장하기

    Category파이썬 Views2596
    Read More
  3. 18
    Jun 2021
    08:44

    파이썬 문자열b 안에 변수 a를 대치시키려면 크게 세 가지 방법

    Category컴퓨터잡담 Views2582
    Read More
  4. 05
    Jul 2021
    10:55

    2021년 플래시 플레이어 웹사이트 크롬에서 접속하는 방법

    Category컴퓨터잡담 Views2561
    Read More
  5. 16
    Sep 2021
    16:17

    파이썬 키움openAPI 보유종목 종목리스트 피라미드 매도주문하기

    Category파이썬 Views2557
    Read More
  6. 13
    Sep 2021
    18:14

    파이썬 dictionary 딕셔너리 조작

    Category파이썬 Views2537
    Read More
  7. 26
    Jul 2016
    22:57

    mysql 16CPU / 16GB My.cnf

    CategoryServer Views2501
    Read More
  8. 26
    Oct 2021
    06:06

    로지텍

    Category컴퓨터잡담 Views2460
    Read More
  9. 04
    Mar 2023
    08:39

    python class def

    Category파이썬 Views2366
    Read More
  10. 12
    Mar 2021
    20:33

    아두이노 나노 호환보드 칩셋드라이버 CH340 설치 및

    Category컴퓨터잡담 Views2366
    Read More
  11. 22
    Jan 2016
    09:21

    ES 파일 탐색기로 FTP 동영상 재생하기

    Category컴퓨터잡담 Views2363
    Read More
  12. 07
    Sep 2021
    16:33

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

    Category파이썬 Views2340
    Read More
  13. 09
    Jan 2015
    07:01

    도스용 파티션 매직

    CategoryWindowsTip Views2327
    Read More
  14. 21
    Sep 2017
    18:26

    핑테스트(PINGINFOVIEW)와 TCPVIEW

    Category컴퓨터잡담 Views2326
    Read More
  15. 24
    Jan 2015
    11:52

    (nPDF) 프린터 인쇄 내용을 PDF 파일로 변환하기

    CategoryWindowsTip Views2273
    Read More
  16. 16
    Mar 2021
    19:21

    파이썬 동행복권 판매인 모집 공고 발생시 자동알림

    Category컴퓨터잡담 Views2272
    Read More
  17. 10
    Mar 2023
    10:23

    H열에 날짜가 10일 안으로 다가왔다면 메일을 발송하는 스크립트

    Category[Docs]스프레드시트 Views2251
    Read More
  18. 10
    Mar 2023
    14:09

    네이버 주식에서 종목의 투자정보 자료 가져오기

    Category파이썬 Views2245
    Read More
  19. 09
    Mar 2023
    09:57

    스프레드시트에서 검색 버튼 만들기

    Category[Docs]스프레드시트 Views2162
    Read More
  20. 02
    Mar 2015
    08:35

    윈도우용 FTP 프로그램 WinSCP

    CategoryWindowsTip Views2139
    Read More
Board Pagination Prev 1 ... 39 40 41 42 43 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소