很多新朋友开始投资股票,基本过很多的交易方法。
朋友也谈过各种类型的方式,什么价值投资,龙头股战法,但交易总是不理想。后面谈到通过量化交易接口运行策略不知道如何运用。
简单来说就是通过代码根据想法把各种条件触发的委托。让程序进行自动化委托。也就是量化策略。
市面上有很多内嵌策略的量化交易软件。可以适应各种策略各种人群,简单快捷。也不需要懂得编程。
那有人就问了:大众策略多人用了基本等于没用。我要运行属于自己的策略!
那也是可行的。只需要通量化交易接口来编写就可以了。
例如这个简单的例子:
# 第一步:设置基本参数
start = '2022-10-01'
end = '2022-11-30'
benchmark = 'HS300'
capital_base = 100000
freq = 'd'
refresh_rate = 1
# 第二步:设置股票池
universe = StockScreener( Factor.EGRO.nlarge(5) )
def initialize(account):
pass
def handle_data(account):
# 生成买入列表
buylist = [sec for sec in account.current_universe if sec in account.universe]
v = account.reference_portfolio_value
d = len(buylist)
# 卖出不在买入列表中的股票,估计持仓价值
for stock in account.security_position:
if stock not in buylist:
if stock in account.universe:
account.order_to(stock, 0)
else:
v -= account.security_position[stock] * account.reference_price[stock]
# 获得调仓数量
change = {}
for stock in buylist:
p = account.reference_price[stock]
if p:
change[stock] = int(v / d / p) - account.security_position.get(stock, 0)
# 按先卖后买的顺序发出指令
for stock in sorted(change, key=change.get):
if change[stock] <= -100 or change[stock] >= 100:
account.order(stock, change[stock])
当然,加入更多的条件就要同步部署更多的参数。在同一个接口下基本参数是一样的。其他就按需求填充进去就剋有了。网络上有很多策略可以参考的。交易不是一时铸造而成的。一个稳定盈利的交易模式需要不停的探索才能打造属于自己策略。在此祝各位早日找到属于自己的交易模式。