CFA2级读书B41:回测与模拟

论坛 期权论坛 期权     
期权匿名问答   2022-2-7 16:50   11392   1
0. 引言

本章概述了四种用于评估投资策略的技术。

  • 回测(backtesting):在历史环境中测试一种战略,通常需要很长一段时间,如果在过去实施这种战略,它会有怎样的表现?
  • 历史情景分析(historical scenario analysis):也被称为历史压力测试(historical stress testing),它检验一种策略在离散的历史环境中的有效性,比如在经济衰退或高通胀时期。
  • 模拟(simulation):探索策略如何在用户指定的假想环境中执行,而不是在历史背景中;这是对其他方法的有益补充,因为过去可能不会重演,而且只有有限数量的重要变量(如利率、回报相关性、经济增长)的所有可能的未来观察在历史中得以体现。
  • 敏感性分析(sensitivity analysis):经常与模拟相结合,以揭示改变关键假设的影响。
1. 回测的目的

回测通过使用历史数据来评估一项战略是否会产生理想的结果,从而近似于真实的投资过程。虽然不是所有在回测中表现良好的策略都将在未来产生超额回报,但回测可以为投资者提供对投资过程的洞察力和严密性。相反,一个在回测中没有显示出有效性的策略可能在未来带来超额回报,但这种策略不太可能被投资组合经理和投资者接受。因此,根据投资管理人的过程,可以使用回测作为拒绝或接受投资策略的标准。
尽管回测更自然地适合定量和系统投资风格,但它也被基本面基金经理广泛使用。在使用一个标准来筛选股票之前(例如一个估值指标),通过确定使用该标准是否会增加增量超额回报,可以揭示该标准的历史有效性。
回测的隐含假设是,未来至少会在某种程度上类似于历史。然而现实更为复杂。用补充技术来解释未来的随机性。
2. 回测的步骤和关键参数

2.1 回测的步骤

回测包括三个步骤:

  • 策略设计(strategy design)

    • 识别投资假设和目标
    • 确定投资规则和过程
    • 确定关键参数

  • 历史投资模拟(historical investment simulation)

    • 根据上一步确定的规则对每期构造投资组合
    • 根据既定规则对每期投资组合再平衡

  • 回测输出分析(analysis of backtesting output)

    • 计算投资组合的绩效统计量
    • 计算其他关键矩阵,例如换手率

第一步是确定投资目标和假设。对于主动策略,其目标通常是获得高于相关基准的超额回报,或较高的经风险调整的绝对回报。投资假设是一种方法(一种交易规则、证券选择准则、一种投资组合等)旨在实现这一目标。
下一步是将假设转换为规则和流程,并指定几个关键参数,以便对假设进行回测。关键参数包括投资范围、回报的具体定义、投资组合再平衡的频率以及开始和结束日期。
2.2 投资领域

投资领域(Investment Universe)指的是可投资的所有证券。虽然学术研究人员和专家通常使用Compustat / Worldscope 和 CRSP的联合,许多从业人员使用知名大盘指数的成分作为他们的投资领域。本章除非另有说明,默认使用罗素3000指数、标准普尔/多伦多证券交易所综合指数、摩根士丹利资本国际中国A指数和标准普尔全球市场指数(BMI)来衡量美国、加拿大、中国大陆和所有其他市场的股票策略的投资范围。
2.3 定义回报率

当我们将投资范围从单个国家扩展到全球范围时,会出现多种复杂性,例如货币、交易和监管方面的考虑。例如,我们需要决定应该以何种货币计算返回值。最常见的两个选择是,要么将所有投资回报转换成一种货币,通常是本国货币,要么以当地货币计价。在回测中选择货币通常取决于投资组合经理是否对其货币风险进行了对冲。没有对冲汇率风险的基金经理通常选择使用单一货币计价的回报进行回测。
如果投资策略的目标是超额回报,那么还必须指定一个基准。所使用的基准通常是所研究的投资策略适用的客户委托或基金的基准。基准应与投资领域相关;例如,摩根士丹利资本国际中国A股指数(MSCI China A Index)是一种以该指数的组成成分为其整体的策略的合理选择。
2.4 再平衡频率和交易成本

从业者经常使用每月一次的频率来重新平衡投资组合,尽管更高或更低的频率也很常见。请注意,每天或更高频率的再平衡通常会导致更高的交易成本,价格数据可能会因买卖价差、世界不同地区的异步交易、以及因不同国家的假期而错过几天而产生偏差。考虑交易成本是至关重要的,因为许多市场异常现象一旦被计算在内就会消失。因此,分析师应该明确地告知输出的任何表示中是否包含交易成本。
2.5 起始日期

在其他条件相同的情况下,投资经理更喜欢使用尽可能长的历史来对投资策略进行回测,因为样本越大,结果在统计上就越有信心。相反,由于金融数据可能是非平稳的,因此,在长期数据历史中的表现应补充使用历史情景分析对长期历史中高低通胀、衰退扩张进行检查
3. 回测多因子模型

很少有投资经理在投资策略中使用单一信号,比如盈馀殖利率(earnings yield)。在实践中,大多数量化股票选择模型使用多因素结构,以因素的线性组合为主导框架。类似地,大多数基本面基金经理在他们的股票筛选工具中使用多重过滤器(multiple filter)。本节介绍了两种多因素股票投资组合策略,以更丰富地说明回溯检验:基准因子组合,它对多个基本面因素的权重相等,以及风险平价(RP, risk parity )因子组合,它根据相同的风险贡献对因子进行权重。
3.1 策略设计

从常见的投资风格中选择8个基本因子。对于每一个因子,我们通过购买根据该因子排名的前20%的股票和做空后20%的股票来形成投资组合。多空股票的权重相等。不考虑交易成本或其他投资组合实现约束。
对于基准投资组合,将这八个因素的投资组合平均加权。这种等权重的投资组合要么优于使用更复杂的优化技术构建的投资组合,要么表现与之一致。对于风险平价投资组合,对八个因素的风险贡献进行同等加权来组合它们。风险平价是一种流行的另类投资组合构建技术,它考虑了投资组合中每个因素的波动性和所有因素之间的回报相关性。目标是让每个因素对投资组合的总体风险做出相等的风险贡献。
3.2 历史模拟投资

对多因子策略进行回测与前面介绍的方法类似,但是滚动窗口(rolling window)过程实现了两次,一次在每个投资组合的“层(layer)”。
首先,使用前面讨论过的滚动窗口程序,在1988年至2019年5月的每个给定时间点(即每月)形成八个因素组合。然后将这些因素组合组合成两个权重不同的多因素组合:等权重(BM组合)和等风险权重(RP组合)。
在相同的时间跨度内需要第二个滚动窗口程序,以避免前视偏差(look-ahead bias)。在每个月末,利用前5年的月度数据估计8个因素组合的方差协方差矩阵。这是RP投资组合中最重要的组成部分。估计了协方差矩阵,就可以优化和计算权重(即相等风险贡献的权重),然后形成RP投资组合。
最后,计算了两个多因素组合(BM和RP)在1988年至2019年5月的每个“样本外”月的收益。
4. 回测的问题

4.1 幸存者偏差

公司不断从市场指数中出现和消失。新公司通过ipo、分拆和超额表现出现。公司消失的原因有很多,包括私有化、收购、破产,以及长期表现不佳或优于大盘,导致市场资本化从大到中/小,反之亦然。长期留在指数中的股票被称为幸存者。
幸存者偏差(Survivorship bias)指的是从数据中得出的结论,这些数据只反映了那些存活至今的实体。这是投资者在进行回溯测试时最明显、但也是最常见的错误之一。尽管这个问题在学术文献中得到了广泛的报道,但相对而言,无论是投资于股票、固定收益、对冲基金还是其他资产类别的从业人员,都很少费心在他们的回溯测试中量化生存偏差的影响。
一些投资者认为,由于你只能投资于目前存在的公司,因此只使用当前指数成分股进行回溯测试的策略并没有什么错。但问题是,在过去,谁也不知道哪些企业会在未来生存下来,哪些企业会消失,哪些企业会被创造出来,并成功地被纳入该指数。此外,幸存公司的名单可能有这样或那样的偏见,例如,它可能主要代表跨国公司,或高度创新的公司,或最成功的公司。
虽然只用幸存者来验证投资策略很简单(但绝对不推荐),但强烈建议用正确的时间点追踪所有曾经存在过的公司(即伤亡公司和幸存者),特别是随着数据供应商提供的数据越来越多。时间点数据(Point-in-time data)允许分析师使用任何给定时间段的最完整的数据,从而能够构建(和回测)最现实的投资策略。
4.2 前瞻性偏差

投资者在回溯测试中犯的另一个常见错误是,没有认识到并解释前瞻性偏差(look-ahead bias)。这种形式的偏差是通过使用在进行回溯测试的历史时期中未知或不可用的信息而产生的。生存偏差实际上是一种前瞻性偏差,因为在回溯测试发生的早期阶段,股票是否会存活或被加入指数的问题是未知的。前瞻性偏差可能是从业者在进行回溯测试时最常见的错误。这可以通过使用时间点数据来克服,但这些数据可能同样不可用。前瞻性偏差有几种常见的形式:

  • 报告滞后(reporting lag):例如,在对2018年年底进行回溯测试时,我们直到2019年3月31日左右才会得到所有上市公司截至2018年12月31日的季度每股收益结果,尽管许多大型公司可能会在2019年1月31日之前发布报告。因此,为了避免前瞻性偏差,分析师通常会为每家公司增加几个月的滞后报告。然而,这个过程也可能引入陈旧的信息。如果我们继续这个例子,到2019年1月31日,许多大市值公司将已经公布收益,但其他公司,特别是中小市值公司,将不会这样做。通过对所有公司采用统一的滞后假设,分析师将对一些大型公司使用陈旧的财务数据。
  • 数据修正(data revision):宏观经济数据经常被多次修正,公司经常重新公布财务报表。许多数据库只保存最新的数字,用订正的数字代替过去的数字,虽然订正的数字在最初发布日期显然是没有的。通过使用这些修改后的数据,一个试图构建真实的投资场景的分析师将使用在那个时间点上不可用的信息。
  • 索引增加(index addition):数据供应商将新公司加入他们的数据库,通常会将几年的历史财务报表添加到系统中。因此,分析师在对当前数据库进行回溯测试时,使用的是在回溯测试期间并不实际存在于数据库中的公司信息。这种前瞻性偏差的后果往往是过于乐观的结果。
例1:An analyst performed a backtest on an investment strategy in June 2019, selecting the constituents of the Russell 3000 Index as the investment universe, and December 1985 and May 2019 as the start and end dates, respectively. While discussing the results with some colleagues, the analyst was shown lists of the Russell 3000 Index constituents as of December 2005 and December 1995. She noticed that the lists included only 2,250 and 1,500 companies, respectively, of the Russell 3000 companies at May 2019. The analyst must correct her backtest for which problem?

  • A. Data snooping
  • B. Reporting lag
  • C. Look-ahead bias
解析:选C。分析师使用的数据集假设截至2019年5月的罗素3000指数成分股是在整个回溯测试期间构成该指数的同一家公司。回溯测试存在前瞻性偏差,因此从中得出的结论将是错误的,因为它包含了自1985年12月以来不存在(或不是指数成员)的公司。为了纠正这个问题,分析师应该使用罗素3000指数的时间点成分数据集。
4.3 数据窥探

人们往往倾向于通过简单地重复测试许多策略,并选择表现最佳的策略来替代稳健的投资组合构建。这种偏差被称为数据窥探(data snooping),在查看统计结果后进行推断,而不是测试之前的推断。与P值篡改(p-hacking)不同,数据窥探发生在分析师选择数据或进行分析,直到找到重要的结果。它可以采取多种形式,包括执行中期分析以决定是否继续收集数据,使用许多变量并决定稍后报告哪个;仅在执行分析后才删除离群值等等。最终结果往往是假阳性。
数据窥探可以通过设置比通常更高的障碍来缓解,例如,t统计值大于3.0,用于评估新发现的因素是否确实增加了增量价值(即在统计上是显著的)。另一种检测和减轻数据窥探的技术是交叉验证,在交叉验证中,分析师将数据集划分为训练数据和验证数据(validation data),并在验证数据上测试由训练数据构建的模型。滚动窗口回测是交叉验证的一种形式,尽管是以一种确定性和非随机的方式,因为过去的周期(即样本内的周期)用于训练一个模型,该模型应用于下一个(即样本外的)周期。
执行交叉验证的一种常见方法是使用来自不同地理区域的数据。例如,如果风险平价策略最初是用美国股票开发和测试的,那么同样的策略可以在全球其他市场进行测试,以评估风险平价是否是一种稳健的要素配置策略。
5. 历史情景分析

分析人员不应简单地承认甚至忽略回测结果中明显的结构性突破,而应仔细关注不同的结构性体制以及体制变化对战略的影响。历史情景分析是一种类型的回溯测试,旨在探索投资策略在不同结构机制和结构突变下的表现和风险。状态更迭的两个常见例子是从经济扩张到经济衰退,从低波动率环境到高波动率环境,反之亦然:

  • 扩张和衰退。尽管忽略了前瞻性偏差,但重要的是要注意到商业周期拐点,扩张和衰退的开始和结束只是在事后才被观察到。
  • 高波动性和低波动性。vix指数衡量标普500指数中的期权隐含波动率。要将VIX转换为波动率制度指标,需要计算5年移动平均线。当波动率指数高于(低于)其5年移动平均线的时期被定义为高波动率(低波动率)时期。
除了夏普比率,概率密度图可以揭示这些投资策略的回报分布的敏感性的额外信息。在非衰退环境下,BM和RP策略的收益分布都是平坦的,有更高的标准差。BM策略存在负偏态和过度峰度,但在衰退环境下,其平均收益明显较低。RP策略在衰退环境下的平均收益也较低。但其波动性和峰度也远低于BM策略。
6. 模拟分析

在回溯测试中,我们本质上假设我们可以回到过去,应用我们的投资策略,重新平衡我们的投资组合,并衡量业绩。这个想法是直观的,因为它模仿了现实中的投资方式,即形成我们的想法,实施我们的策略,并在新信息到来时将其纳入。然而,回溯测试隐含的假设是,过去很可能会重演,而这一假设并没有完全解释金融市场的动态特性,这可能包括以前从未发生过的极端上行和下行风险。我们现在探讨如何通过模拟来提供更完整的画面。
模拟有两种基本类型:历史模拟和蒙特卡罗模拟。在历史模拟(historical simulation)中,我们不是假设我们在过去的某个日期执行了一个策略,并在策略运行一段时间后收集结果,而是通过从许多不同的历史时期(窗口)随机选择收益来构建结果,而不考虑时间顺序。尽管这种方法确实假设过去的资产回报可以为未来的资产回报提供指导,但它通过随机改变提取因素回报的历史时期的顺序,放松了一个关键的限制。因此,历史模拟本质上是一种不确定性的滚动窗口回测。历史模拟被广泛应用于投资管理,特别是银行用于市场风险分析。
历史时间序列数据(如因子收益)的问题在于,只有一组已实现的数据可供借鉴,过去的情况只以一种方式发生。经典时间序列分析背后的一个关键假设,数据是静态的,这对大多数金融变量来说根本不成立。蒙特卡罗模拟(Monte Carlo simulation)克服了许多这些问题。在蒙特卡罗模拟中,每个关键变量都被分配一个统计分布,并且从分配的分布中随机抽取观察结果。
蒙特卡罗方法很受欢迎,因为它非常灵活;不同发行版的数组可以跨各种关键变量使用。而不是使用历史分布,或者正态分布,分析师可以合并非正态性、肥尾、尾部相关等等,来建模关键变量。缺点是它很复杂并且需要大量的计算。
6.1 模拟分析步骤

模拟的一个重要目标是通过考虑随机性来验证从回测中获得的投资绩效。模拟在衡量投资策略的下行风险方面特别有用。模拟分析的八个步骤:

  • 确定目标变量。这个变量通常是一个投资策略的回报,如 时刻投资组合 的回报 及其分布
  • 指定关键决策变量。关键的决策变量通常是每个基础资产在整体投资组合中的收益 时刻资产 的收益 ,以及分配给投资组合中每个资产的权重 。一旦知道了 个基础资产的收益和权重,可以很容易地计算出组合收益 。每个基础资产的权重是由正在测试的投资策略决定的
  • 指定要运行的试验次数 。在实践中,研究人员通常在1000到10000次模拟运行中进行选择。试验次数越多,对性能和性能方差的预测就越稳定。确定最佳的迭代次数是一个复杂的主题
  • 定义关键决策变量的分布特性。在这一点上,历史模拟和蒙特卡罗模拟出现了分歧。历史模拟从历史数据中提取数据。相反,蒙特卡罗模拟为每个关键决策变量指定一个统计分布。分布的选择应该由它对历史观察的描述程度来指导。为不同的变量指定不同的函数(例如正态函数、对数正态函数、二项式函数)来解释相关性和尾部依赖性的影响
  • 使用随机数生成器,为每个关键决策变量绘制 个随机数
  • 对于每一组模拟的关键决策变量,计算出目标变量的值。然后保存目标变量的值以供稍后分析
  • 重复步骤5和步骤6,直到完成所需的试验次数
  • 现在我们有一组 个目标变量的值,它是 回报的投资策略。现在可以计算典型的指标,如平均回报、波动率、夏普比率和各种下行风险指标。在模拟中,通常使用CVaR和最大回撤来描述下行风险【考点】
(CVaR定义为收益分布中超过VaR损失的所有损失结果的加权平均)
6.2 历史模拟法

尽管回测和历史模拟依赖于历史来理解未来,但它们的不同之处在于,滚动窗口回溯测试是确定性的,而历史模拟通过从历史数据中随机抽取回报,而不是按照时间顺序跟踪每个时期,从而整合了随机性。
首先,必须决定是否从有替换或没有替换的历史收益中取样。有放回随机抽样也称为自举法(bootstrapping),常用于投资研究,因为所需模拟的数量通常大于历史数据集的大小。以8个要素组合的要素分配策略(BM和RP)为例,可以进行如下历史模拟:

  • 目标变量为BM和RP多因素组合的收益
  • 关键的决策变量是8个基于因素的投资组合的收益(分配给这8个因素的权重已经已知)
  • 模拟将进行N = 1,000次试验
  • 历史模拟将使用自举法采样来实现。在本例中,我们将从0和1之间的均匀分布中随机抽取一个数字。生成一个随机数后,它将被分配到一个特定的历史月
  • 随机数生成器将从0到1之间的均匀分布中随机抽取1000个数字,历史回报数据的采样是放回的
  • 一旦选定了一个月,相应的8个因素组合的收益就代表了一组可能的结果,我们使用预先指定的因素权重来计算我们的目标变量的值——BM和RP组合的收益
  • 重复1000次步骤5-6,为基准和风险平价组合生成1000个模拟收益集合
  • 计算出感兴趣的性能指标(夏普比率、CVaR等),并绘制出模拟基准和风险平价组合回报的分布
6.3 蒙特卡罗模拟

历史模拟的问题是,数据仅限于历史观察,不能代表未来。这一缺陷可以用蒙特卡罗模拟来解决,蒙特卡罗模拟遵循与历史模拟相似的步骤,但有一些关键的区别。
首先,需要为每个关键决策变量指定一个函数形式。专注于矩(即,平均值,标准差,偏态,峰度)和尾部依赖的探索性数据分析在这里通常是至关重要的。蒙特卡罗模拟技术的有效性在很大程度上取决于我们指定的统计分布的函数形式是否准确地反映了底层数据的真实分布。因为数据的真实分布是未知的,需要意识到,即我们的模型,像所有的模型一样,只提供指导,而不是完美的。
回归和分布拟合技术用于估计关键决策变量统计分布下的参数(即均值、标准差、偏态、峰度)。这一步通常称为模型校准(model calibration)。在最终选择统计分布的函数形式之前,我们需要考虑以下因素:

  • 分布应该合理地描述基础数据的关键经验模式。例如,资产回报率大致遵循钟形曲线模式;因此,正态分布和学生t分布经常被用作第一次切割近似
  • 要解释多个关键决策变量之间的相关性。在资产或要素配置策略的情况下,多个要素的收益具有明显的相关性;因此,需要指定一个多元分布,而不是在独立的基础上对每个因素或资产建模
  • 函数形式的复杂性和决定函数形式的参数的数量是重要的。可以指定一个高度复杂的模型,它有许多参数(所有这些参数都需要根据历史数据进行估计/校准),这些参数可以很好地描述数据的经验属性。然而,由于历史数据有限,我们可能无法以足够的精度估计所有的基本参数。这样的模型往往有较低的规范误差,但它们遭受较大的估计误差。在另一个极端,过于简单的模型需要更少的参数(因此,它们可能有较低的估计误差),但它们可能不能很好地拟合数据(因为它们被错误地指定)。这种现象是偏差方差权衡
为了模拟资产或要素分配策略,资产或要素收益的分布通常被建模为一个多元正态分布,作为第一步近似,它相当好地捕捉了底层数据的一些关键属性。一个多元正态分布可以完全指定仅几个关键参数-均值、标准差和协方差矩阵。对于K种资产,我们需要估计K种平均收益、K种标准差和[K × (K - 1)]/2相关性。
多元正态分布并不能完全解释数据中明显的负偏、过度峰度和尾部依赖的经验特征。
(过度峰度意味着这些策略更有可能产生意外、极端的回报,而负偏意味着这些意外更有可能是负的)
当讨论敏感性分析时,很快讨论这些非正态分布特性。采用相同的BM和RP策略,进行蒙特卡罗模拟如下:

  • 目标变量是BM和RP多因素投资组合的收益
  • 关键的决策变量是基于八个基础因素的投资组合的收益
  • 使用1000次试验来执行模拟
  • 选择多元正态分布作为函数的初始形式。我们使用374个月的历史因子收益率数据(1988年4月至2019年5月)校准模型——计算8个因子投资组合的平均收益、8个标准差和协方差矩阵的28个元素
  • 用校正后的多元正态分布模拟未来因子收益。这个模拟过程发生在一个由八个随机变量组成的多元正态分布的背景下,对应于我们的八个因素组合,是复杂的。简单地说,在本例中,从均匀分布中随机生成的8个数字被映射到联合累积概率分布函数上的一个点上,这个点共同决定了这次试验中8个因素的收益值
  • 一旦模拟了八个因素组合的收益,我们就可以计算出我们的目标变量的值——BM和RP组合的收益
  • 对所有1,000次试验重复步骤5和步骤6,为基准和风险平价组合生成1,000个回报集合
  • 从1000个模拟回报中评估两种投资策略的表现和风险概况
7. 敏感性分析

除了模拟之外,敏感性分析,一种探索目标变量如何受输入变量变化(例如,资产或要素收益的分布)影响的技术,可以用来帮助管理者进一步了解其投资策略的潜在风险和回报。
蒙特卡罗模拟符合多元正态分布的因子返回一个合理的第一个近似,因为它需要相对较少的参数来从历史数据中估计。多元正态分布假设虽然简单且在实践中被广泛采用,但却无法考虑因素收益分布中的各种经验性质,如负偏态和胖尾等。由于模拟结果的价值关键取决于所选的函数形式是否是真实分布的合理代理,因此我们应该进行敏感性分析,将我们的因子返回数据拟合到不同的分布,并相应地重复蒙特卡罗模拟。一个可供选择的测试是多元倾斜的学生的t分布。学生的t分布是多元正态分布的自然延伸,因为它能够解释因子和资产回报数据中经常观察到的偏态和过剩峰度。然而,它在数学上更复杂,需要估计比正态分布更多的参数。
为了确定我们的目标变量(基准收益率和风险平价组合的收益)对新的因子收益分布假设的敏感性,新的蒙特卡罗模拟过程的过程与之前执行的过程几乎相同。唯一的两个例外是步骤4和步骤5。在第4步中,我们将模型校准为多元偏态t分布,而不是将数据拟合为多元正态分布。在第5步中,我们模拟了这个新的分布函数的1000组因子收益。然后,像之前一样,我们从1000个模拟回报中评估我们的投资策略的表现和风险概况。额外的敏感性分析应该用不同的函数形式来运行因子回报分布。
例2:The following are caveats regarding the use of rolling-window backtesting in assessing investment strategies except:

  • A. this technique implicitly assumes that the same pattern of past performance is likely to repeat itself over time.
  • B. this technique may not fully account for the dynamic nature of financial markets and potentially extreme downside risks.
  • C. this technique is intuitive, because it mimics how investing is done in reality—that is, forming ideas, testing strategies, and implementing periodically.
解析:选C。因为这不是使用滚动窗口回测时的警告。
(完)
分享到 :
0 人收藏

1 个回复

倒序浏览
2#
期权匿名回答  16级独孤 | 2022-2-7 16:51:42 发帖IP地址来自 中国
谢谢了!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:400157
帖子:80032
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP