paddle_quantum.finance.qpo
量子金融优化模型库的封装函数
- portfolio_combination_optimization(num_asset, data, iter, lr, risk, budget, penalty, circuit, init_state, optimizer, measure_shots, logger, compare)
用于解决金融组合优化问题的高度封装的函数
- 参数:
num_asset (int) – 可投资项目的数目。
data (Union[pq.finance.DataSimulator, Tuple[paddle.Tensor, paddle.Tensor]]) – 股票数据。
iter (int) – 循环迭代次数。
lr (Optional[float] = None) – 梯度下降学习速率。
risk (float) – 投资的风险系数。
budget (int) – 投资红利。
penalty (float) – 投资惩罚。
circuit (Union[pq.ansatz.Circuit, int] = 2) – 量子电路的种类,若输入整数则搭建该整数层complex_entangled_layer。
init_state (Optional[pq.state.State] = None) – 输入到变分量子电路的初态,默认为零态的直积。
optimizer (Optional[paddle.optimizer.Optimizer] = None) – 优化器类型,默认为 paddle.optimizer.Adam
measure_shots (int) – 对末态做测量的次数,默认为2048。
logger (Optional[logging.Logger] = None) – 开启日志记录。
compare (bool = False) – 是否把梯度下降优化得到的损失最小值与真实损失最小值相比。
- 返回:
列表形式的最优的投资组合
- 返回类型:
List[int]