이번 강의도 기초반에서 다뤘던 부분이지만 리마인드 하는 마음으로 봐주셨으면 합니다. 감시 가격/매수수량 입력 부분을 초기화하는 코딩을 하도록 하겠습니다.
1. 감시가격/매수수량 입력 초기화 하기
아래 그림을 보시면 우리가 만든 더블스핀 박스 GUI가 초기화 전에는 좌측 정렬에 소수점이 있습니다.
우리는 아래와 같이 우측 정렬에 소수점을 없애도록 하겠습니다.
(1) 매수 금액 0으로 초기화 코딩
- 이전 강의에서 설명드렸지만 각 GUI에는 고유 objectName이 있습니다. 감시에 관련된 모든 값들은 아래 그림처럼 textEdit_1~16까지 구성하였습니다.
- 따라서, setValue()함수를 사용하여 우리가 만든 GUI textEdit에 0을 넣어 초기화합니다.
(2) 더블 스핀 박스 값 우측 정렬에 소수점 없애기
- setAlignment() 함수를 사용해 좌측/가운데/우측 정렬할지 선택합니다. 우선 위/중간/아래 중 중간으로 위치하기 위해서 Qt.AlignVCenter를 하시고 좌측/가운데/우측 정렬 중 우측 정렬하기 위해 Qt.AlignRight를 합니다.
- 그리고 setDecimals()에 0을 넣음으로써 소수점이 없도록 만듭니다. 1을 넣으면 소수점 1개 2를 넣으면 소수점 2개로 표현할 수 있습니다.
- 우리는 textEdit 16개 모두 가운데/우측 정렬 그리고 소수점이 없도록 세팅합니다.
2. 다음 강의 예고 및 코드 공개
다음 강의에서는 종목 추가를 클릭하면, 매수/매도 감시 가격과 종목명이 DB 관리 표로 입력될 수 있도록 코딩하겠습니다.
아래는 오늘 코딩한 것 공유해 드립니다. 다들 부자 되십시오.
import sys # system specific parameters and functions : 파이썬 스크립트 관리
from PyQt5.QtWidgets import * # GUI의 그래픽적 요소를 제어 하단의 terminal 선택, activate py37_32, pip install pyqt5, 전부다 y
from PyQt5 import uic # ui 파일을 가져오기위한 함수
from PyQt5.QtCore import * # 쓰레드 함수를 불러온다.
################# 부가 기능 수행(일꾼) #####################################
from kiwoom import Kiwoom # 키움증권 함수/공용 방 (싱글턴)
from Qthread_1 import Thread1 # 계좌평가잔고내역 가져오기
from Qthread_2 import Thread2 # 계좌 관리
from Qthread_3 import Thread3 # 실시간 자동매매 시작
###################################################
form_thirdwindow = uic.loadUiType("ALBA3.ui")[0]
class Thirdwindow(QMainWindow, QWidget, form_thirdwindow):
def __init__(self):
super(Thirdwindow, self).__init__()
self.initUi()
self.show()
### 초기 셋팅 : 분할 매수/매도
self.textEdit_1.setValue(0) # 초기 매수 금액
self.textEdit_2.setValue(0) # 초기 매수 금액
self.textEdit_3.setValue(0) # 초기 매수 금액
self.textEdit_4.setValue(0) # 초기 매수 금액
self.textEdit_5.setValue(0) # 초기 매수 금액
self.textEdit_6.setValue(0) # 초기 매수 금액
self.textEdit_7.setValue(0) # 초기 매수 금액
self.textEdit_8.setValue(0) # 초기 매수 금액
self.textEdit_9.setValue(0) # 초기 매수 금액
self.textEdit_10.setValue(0) # 초기 매수 금액
self.textEdit_11.setValue(0) # 초기 매수 금액
self.textEdit_12.setValue(0) # 초기 매수 금액
self.textEdit_13.setValue(0) # 초기 매수 금액
self.textEdit_14.setValue(0) # 초기 매수 금액
self.textEdit_15.setValue(0) # 초기 매수 금액
self.textEdit_16.setValue(0) # 초기 매수 금액
########## 더블 스핀 박스 우측정렬 및 소수점 삭제
self.textEdit_1.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_1.setDecimals(0)
self.textEdit_2.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_2.setDecimals(0)
self.textEdit_3.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_3.setDecimals(0)
self.textEdit_4.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_4.setDecimals(0)
self.textEdit_5.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_5.setDecimals(0)
self.textEdit_6.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_6.setDecimals(0)
self.textEdit_7.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_7.setDecimals(0)
self.textEdit_8.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_8.setDecimals(0)
self.textEdit_9.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_9.setDecimals(0)
self.textEdit_10.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_10.setDecimals(0)
self.textEdit_11.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_11.setDecimals(0)
self.textEdit_12.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_12.setDecimals(0)
self.textEdit_13.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_13.setDecimals(0)
self.textEdit_14.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_14.setDecimals(0)
self.textEdit_15.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_15.setDecimals(0)
self.textEdit_16.setAlignment(Qt.AlignVCenter | Qt.AlignRight)
self.textEdit_16.setDecimals(0)
'주식 자동매매 강의 > 중급반(시황 및 차트 구현)' 카테고리의 다른 글
가치 투자 시 알아야 될 주식 종목 선정하는 방법(기관/외국인 수급, 재무제표, 눌림목의 의미) (5) | 2022.07.16 |
---|---|
[주식자동매매] 분할 매수/매도 코딩하기(5), 종목명/종목코드 가져오기 (6) | 2022.07.14 |
웹 크롤링 안될 때 해결법(네이버/다음/구글 크롤링 차단 해결) (17) | 2022.07.12 |
[주식자동매매] 분할 매수/매도 코딩하기(3), GUI 전시하기 (2) | 2022.07.09 |
[주식자동매매] 분할 매수/매도 코딩하기(2), GUI 만들기 (14) | 2022.07.07 |