def conditions(self): self.statusbar.showMessage('正在计算...') self.textEdit.clear() if self.radioButton.isChecked(): # print('radioButton 月线') path = 'D:\\0_stock_macd\\_月K线金叉.csv' if self.radioButton_2.isChecked(): # print('radioButton_2 周线') path = 'D:\\0_stock_macd\\_周K线金叉.csv' if self.radioButton_3.isChecked(): # print('radioButton_3 日线') path = 'D:\\0_stock_macd\\_日K线金叉.csv' if self.radioButton_6.isChecked(): # print('radioButton_6 60 分钟级别') macd_jb = mb.MACD_INDEX('60') macd_jb.signal.send.connect(self.macd_progress) if self.radioButton_7.isChecked(): # print('radioButton_7 15 分钟级别') macd_jb = mb.MACD_INDEX('15') macd_jb.signal.send.connect(self.macd_progress) if self.radioButton_8.isChecked(): # print('radioButton_8 已金叉') macd_jb.save_golden(path) if self.radioButton_9.isChecked(): # print('radioButton_9 即将金叉 ') macd_jb.save_bing_golden(path) if self.radioButton_10.isChecked(): # print('radioButton_10 底背离') macd_jb.save_bottom(path) if self.radioButton_11.isChecked(): print('radioButton_11 刚刚金叉') macd_jb.save_golden_now(path) macd_jb.disconnect() self.label.setText(' ') stock_code = stb.get_stock_code('D:\\0_stock_macd\\_日K线金叉.csv') cnt = stock_code.shape[0] self.statusbar.showMessage('计算完成, 共选出 ' + str(cnt) + ' 只') print('xxx'*9) all_stock = stb.get_market_code('all') print('yyy' * 9) print( all_stock.shape[0] ) for x in range(cnt): code = stock_code.iloc[x]['stock_code'] print('zzz' * 9) for i in range(1, all_stock.shape[0]): if all_stock.iloc[i]['stock_code'].find(code[3:]) > 0: rst = '{: <4d}'.format(x + 1) + code rst = rst + '\t' + all_stock.iloc[i]['stock_name'] self.textEdit.append(rst)
def init_mwd(self): macd_m = mb.MACD_INDEX('m') macd_m.save_golden('all') macd_w = mb.MACD_INDEX('w') macd_w.save_golden('D:\\0_stock_macd\\_月K线金叉.xls') macd_d = mb.MACD_INDEX('d') macd_d.save_golden('D:\\0_stock_macd\\_周K线金叉.xls')
def init_MWD(self): '''初始化 月 周 日 分别在上级别基础上金叉''' macd_m = mb.MACD_INDEX('m') macd_m.save_golden('all') macd_w = mb.MACD_INDEX('w') macd_w.save_golden('D:\\0_stock_macd\\_月K线金叉.xls') macd_d = mb.MACD_INDEX('d') macd_d.save_golden('D:\\0_stock_macd\\_周K线金叉.xls')
def init_wd(self): '''全部股票代码选出周线金叉,在此基础上再选日线金叉''' self.statusbar.showMessage('金叉初始化(周日)') macd_w = mb.MACD_INDEX('w') macd_w.signal.send.connect(self.macd_progress) macd_d = mb.MACD_INDEX('d') macd_d.signal.send.connect(self.macd_progress) self.thread = MACD_Calc() self.thread.set_macd_w(macd_w, 'all') self.thread.set_macd_d(macd_d, 'D:\\0_stock_macd\\_周K线金叉.csv') self.thread.start()
def init_d(self): '''全部股票代码选出日线金叉''' self.statusbar.showMessage('金叉初始化(日)') macd_d = mb.MACD_INDEX('d') macd_d.signal.send.connect(self.macd_progress) self.thread = MACD_Calc() self.thread.set_macd_d(macd_d.save_golden, 'all') self.thread.start()
def golden_60(self): macd_60 = mb.MACD_INDEX('60') macd_60.save_golden('D:\\0_stock_macd\\_周K线金叉.xls') stock_code = stb.get_stock_code(macd_60.save_name) cnt = stock_code.shape[0] code = '周线金叉60分钟级别金叉共 ' + str(cnt) + ' 只' self.textEdit.append(code) for x in range(cnt): code = stock_code.iloc[x]['stock_code'] self.textEdit.append(code)
def bottom_60(self): bottom_60 = mb.MACD_INDEX('60') bottom_60.save_bottom('D:\\0_stock_macd\\_周K线金叉.xls') stock_code = stb.get_stock_code(bottom_60.save_name) cnt = stock_code.shape[0] code = '周线金叉60分钟底背离共 ' + str(cnt) + ' 只' self.textEdit.append(code) for x in range(cnt): code = stock_code.iloc[x]['stock_code'] self.textEdit.append(code)
def golden_15(self): macd_15 = mb.MACD_INDEX('15') macd_15.save_golden('D:\\0_stock_macd\\_日K线金叉.xls') stock_code = stb.get_stock_code(macd_15.save_name) cnt = stock_code.shape[0] code = '日线金叉15分钟级别金叉共 ' + str(cnt) + ' 只' self.textEdit.append(code) for x in range(cnt): code = stock_code.iloc[x]['stock_code'] self.textEdit.append(code)
def bottom_60(self): self.statusbar.showMessage('正在获取网络数据计算 周线金叉60分钟级别底背离,请稍等!') macd_d = mb.MACD_INDEX('60') macd_d.save_bottom('D:\\0_stock_macd\\_周K线金叉.xls') stock_code = stb.get_stock_code(macd_d.save_name) cnt = stock_code.shape[0] code = '周线金叉60分钟底背离共 ' + str(cnt) + ' 只' self.textEdit_2.append(code) for x in range(cnt): code = stock_code.iloc[x]['stock_code'] self.textEdit_2.append(code)
def golden_15(self): self.statusbar.showMessage('正在获取网络数据计算 日线金叉15分钟级别金叉,请稍等!') macd_d = mb.MACD_INDEX('15') macd_d.save_golden('D:\\0_stock_macd\\_日K线金叉.xls') stock_code = stb.get_stock_code(macd_d.save_name) cnt = stock_code.shape[0] code = '日线金叉15分钟级别金叉共 ' + str(cnt) + ' 只' self.textEdit_3.append(code) for x in range(cnt): code = stock_code.iloc[x]['stock_code'] self.textEdit_3.append(code)
import baostock as bs import pandas as pd import numpy as np import macd_base as mb if __name__ == '__main__': macd_d = mb.MACD_INDEX('60', '2019-03-06') df = macd_d.get_index('sz.000416') df.drop(df.index[[70, 71]], inplace=True) print(df) print('\n k线 获取完成,如上\n') df2 = macd_d.get_MACD(df) print(df2) print('\n MACD 打印完成,如上\n') dead_macd = macd_d.analyze_dead(df2, True) print(dead_macd) print('\n死叉结果打印完成,如上') print('\n\t 执行 macd_d.analyze_bing_golden\n') df3 = macd_d.analyze_bing_golden(df2, True) print(df3) #### 登陆系统 #### # lg = bs.login() # # 显示登陆返回信息 # print('login respond error_code:' + lg.error_code) # print('login respond error_msg:' + lg.error_msg) # # #### 获取沪深A股历史K线数据 ####
import macd_base as mb # from stock_base import ReturnError if __name__ == "__main__": macd_w = mb.MACD_INDEX('w') macd_w.save_golden('all') macd_60 = mb.MACD_INDEX('60') # 保存底背离 macd_60.save_bottom('D:\\0_stock_macd\\_周K线金叉.xls', False) # macd_60 = mb.MACD_INDEX('60') # try: # df = macd_60.get_index('sh.600021') # except mb.ReturnError: # print(mb.ReturnError) # # try: # df2 = macd_60.get_MACD(df) # except mb.ReturnError: # print(mb.ReturnError) # print('*'*20, 'macd 结果') # print(df2) # try: # dbl_rst = macd_60.analyze_bottom(df2, True) # except mb.ReturnError: # print(mb.ReturnError) # else: # print( dbl_rst )
import macd_base as mb if __name__ == '__main__': # macd_m = mb.MACD_INDEX('m') # macd_m.save_golden('all') # # macd_w = mb.MACD_INDEX('w') # macd_w.save_golden('D:\\0_stock_macd\\_月K线金叉.xls') # # macd_d = mb.MACD_INDEX('d') # macd_d.save_golden('D:\\0_stock_macd\\_周K线金叉.xls') macd_d = mb.MACD_INDEX('60') macd_d.save_bing_golden('D:\\0_stock_macd\\_周K线金叉.xls') macd_d.save_bottom('D:\\0_stock_macd\\_周K线金叉.xls')
import macd_base as mb if __name__ == "__main__": # 60 即将金叉 macd_60 = mb.MACD_INDEX('60') macd_60.save_bing_golden('all', False)
import macd_base as mb if __name__ == '__main__': macd_m = mb.MACD_INDEX('m') macd_m.save_golden('all') macd_w = mb.MACD_INDEX('w') macd_w.save_golden('D:\\0_stock_macd\\_月K线金叉.xls') macd_d = mb.MACD_INDEX('d') macd_d.save_golden('D:\\0_stock_macd\\_周K线金叉.xls')