原创内容第1036篇,专注AGI+,AI量化投资、个人成长与财富自由。

def run(self, task: Task, commissions=0.0): self._prepare_run(task.symbols,task.start_date,task.end_date, commissions) self.datafeed = DataFeed(task)
self.cerebro.addstrategy(AlgoStrategy, algo_list=self._get_algos(task)) self.results = self.cerebro.run()
portfolio_stats = self.results[0].analyzers.getbyname('_PyFolio') returns, self.positions, self.transactions, _ = portfolio_stats.get_pf_items()
all_datas = self.cerebro.datas
total_value = self.cerebro.broker.getvalue()
print("所有Datas的最新仓位:") print(f"总资产: {total_value:.2f} (现金 + 持仓市值)")
total_position_value = 0 positions_info = []
for data in all_datas: position = self.cerebro.broker.getposition(data) if position.size != 0: current_price = data.close[0] position_value = position.size * current_price total_position_value += position_value
positions_info.append({ 'data': data, 'position': position, 'position_value': position_value })
cash = self.cerebro.broker.getcash() print(f"现金: {cash:.2f}") print(f"持仓总市值: {total_position_value:.2f}") print(f"总资产验证: {cash + total_position_value:.2f} (应与上面总资产一致)")
print("\n各持仓仓位比例:") self.weights = {} for info in positions_info: data = info['data'] position = info['position'] position_value = info['position_value']
position_ratio = position_value / total_value self.weights[data._name] = round(position_ratio,3)
print(f" {data._name}:") print(f" 持仓数量: {position.size}") print(f" 平均成本: {position.price:.2f}") print(f" 当前价格: {data.close[0
]:.2f}") print(f" 持仓市值: {position_value:.2f}") print(f" 仓位比例: {position_ratio:.4f} ({position_ratio * 100:.2f}%)")
print(self.weights) returns.index = returns.index.tz_convert(None)
returns.name = '策略'
equity = pd.DataFrame((1 + returns).cumprod()) print('起始日期', equity.index[0]) import ffn datas = [equity] for bench in [task.benchmark]: df = CsvDataLoader().read_df([bench],start_date=task.start_date, end_date=task.end_date) df.set_index('date',inplace=True) df.index = pd.to_datetime(df.index) data = df.pivot_table(values='close', index=df.index, columns='symbol') data.columns = ['benchmark'] datas.append(data)
all_returns = pd.concat(datas, axis=1).pct_change() all_returns.dropna(inplace=True)
print('起始日期',all_returns.index[0])
self.perf = (1 + all_returns).cumprod().calc_stats() self.hist_trades =self.results[0].trade_list self.hist_trades.reverse() self.signals = self.results[0].signals
print(self.hist_trades)
return self.results
kensho是一个自然语言驱动的问答引擎,在当年是相当的惊艳。 A:工作核心内容是AGI,算“喜欢且擅长”,是热点,趋势,也是未来。做就是了。
B:做AI量化,与AI相关,与投资相关,与量化相关,与数据相关,与LLM相关,可以做很久,而且离钱很近。————平台化,自动化,智能化。C:AGI+落地应用。可以带一些理想主义,比如AGI+量化,AGI+生物科技等。多读书,多思考,阅读,写作,编程。 Z:大类资产,风险平价,恒定市值再平衡,基本是自动化运作,时间的朋友。代码和数据下载:AI量化实验室——2025量化投资的星辰大海AI量化实验室 星球,已经运行三年多,1900+会员。
aitrader代码,因子表达式引擎、遗传算法(Deap)因子挖掘引擎等,支持vnpy,qlib,backtrader和bt引擎,内置多个年化30%+的策略,每周五迭代一次,代码和数据在星球全部开源。
点击 “查看原文”,直接访问策略集合。