分享

wxpython配置股票池列表

 AI量化实验室 2023-10-12 发布于北京

原创文章第285篇,专注“个人成长与财富自由、世界运作的逻辑与投资"。

今天继续整合wxpython与回测引擎

首选是日期格式,回测开始时间与结束时间,wx.datetime需要与python的datetime做转换。

def pydate2wxdate(date):
assert isinstance(date, (datetime.datetime, datetime.date))
tt = date.timetuple()
dmy = (tt[2], tt[1] - 1, tt[0])
return wx.DateTimeFromDMY(*dmy)


def wxdate2pydate(date):
assert isinstance(date, wx.DateTime)
if date.IsValid():
ymd = map(int, date.FormatISODate().split('-'))
return datetime.date(*ymd)
else:
return None

如此可以取到两个日期字符串:

start_date = wxdate2pydate(panel_bkt.date_from.GetValue()).strftime('%Y%m%d')
end_date = wxdate2pydate(panel_bkt.date_to.GetValue()).strftime('%Y%m%d')

基准代码:

self.benchmarks = {'沪深300指数(000300.SH)': '000300.SH',
'中证500指数(000905.SZ)': '000905.SZ',
'创业板指数(399006.SZ)': '399006.SZ',
}
panel_bkt.choice_benchmark.SetItems(list(self.benchmarks.keys()))
panel_bkt.choice_benchmark.Select(0)

配置标的池列表:

编辑标的池列表:

代码在如下位置:(已经在星球更新,大家可以前往下载更新知识星球与开源项目:万物之中,希望至美

from gui.panels.dlg_symbols import DlgSymbols
import wx
from gui.proj_utils import SymbolsLoader

class DlgSymbolsLogic:
def __init__(self, dlg: DlgSymbols):
self.dlg = dlg

self.dlg.btn_OK.Bind(wx.EVT_BUTTON, self.btn_OK)
self.dlg.btn_cancel.Bind(wx.EVT_BUTTON, self.btn_cancel)

self.loader = SymbolsLoader()

def show_modal(self, name=None):
if name:
if name in self.loader.symbols_dict.keys():
self.dlg.text_name.SetValue(name)
symbols = self.loader.symbols_dict[name]
symbols = '\n'.join(symbols)
self.dlg.text_symbols.SetValue(symbols)
self.dlg.ShowModal()

def btn_OK(self, event):
name = self.dlg.text_name.GetValue()
symbols = self.dlg.text_symbols.GetValue()
if name == '' or symbols == '':
wx.MessageBox('请输入名称及证券代码列表。')
return

symbols = symbols.strip().split('\n')
#print(name, symbols)
self.loader.add_toml(name, symbols)
self.dlg.Close()

def btn_cancel(self, event):
self.dlg.Close()

明天继续写因子与规则相关的界面逻辑。

一些人生感悟与思考

忙里偷闲才是最好的状态。这两天孩子放暑假出去旅游,自己一个在家,发现除了写代码,看书之余,也有点莫名的“寂寞”。

人到中年,可以聊的朋友本就不多,大家都有各自的家庭,各自忙的事。除非真有事情,师出有名,大家聚在一起,平时比较难得。

忙的时候,我们渴望放两天假,但真的闲下来,似乎还真不知道要做什么。

人生之重要矛盾在于:人总是在痛苦与无聊之间徘徊。得不到就痛苦,满足了就空虚和无聊。

很多你“期盼”很多,通过很多努力,得到的东西,再美好,也会陷于这个循环。 财富,名利,美女。当然一个相对富足的状态是好了。

有时候陷于莫名的不安全感,总感觉可能要发生什么事情,什么事情没有检查到位等等。本质上我们认为自己是主角,世界是100%可以掌控的,显然不是——明天与意外,你永远不知道那个会先来。我们可以预料的东西,可能不足5%,而95%是无法连想象都没有想象到的。何苦为了那小概率的5%徒增烦恼。

人生是一场体验,一场修行,做好自己可以做的事情,其他的允许一切发生,见招拆招便是。

年化29.3%,大类资产ETF动量轮动,添加商品与货币ETF,实盘跟进中(代码+数据下载)

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多