这个例子展示了如何评估由于流动性、波动性和市场对订单流和交易的敏感性而导致的交易成本变化。通过Kissell Research Group的交易成本分析,您可以模拟一组股票的交易成本环境。敏感性分析使您能够估计不同市场条件下的未来交易成本,以确定满足投资者需求的适当投资组合内容。
在这里,评估由于平均日交易量减少50%和波动率翻倍而导致的交易成本变化。示例数据使用交易量百分比(POV)交易策略。
要访问示例代码,请输入编辑KRGSensitivityAnalysisExample.m
在命令行。
从Kissell Research Group FTP站点检索市场影响数据。连接到FTP站点ftp
函数使用用户名和密码。导航到MI_Parameters
文件夹中的市场影响数据并检索MI_Encrypted_Parameters.csv
文件。miData
包含加密的市场影响日期、代码和参数。
F = ftp(“ftp.kissellresearch.com”,“用户名”,“pwd”);mget (f,“MI_Encrypted_Parameters.csv”);close(f) miData = readtable(“MI_Encrypted_Parameters.csv”,“分隔符”,...”、“,“ReadRowNames”假的,“ReadVariableNames”,真正的);
创建Kissell Research Group交易成本分析对象k
.
k = krg(miData);
从文件加载示例数据KRGExampleData.mat
,这是包括在交易工具箱™。
负载KRGExampleData.mat
有关示例数据的描述,请参见Kissell研究组数据集.
使用示例数据估计初始交易成本TradeData
.交易成本为:
瞬时交易成本美国国际贸易委员会
市场影响成本心肌梗死
时间风险tr
价格上涨巴勒斯坦权力机构
将所有四种交易成本组合成一个数字矩阵initTCA
.
itc = iStar(k,TradeData);mi = marketImpact(k,TradeData);tr = timingisk (k,TradeData);pa = priceAppreciation(k,TradeData);initTCA = [itc mi tr pa];
设置变量以创建场景。在这种情况下,平均日成交量减少50%,波动率增加一倍。与示例数据相比,股票价格、交易量、估计alpha值和交易策略保持不变。您可以修改这些变量的值来创建不同的场景。字段为:
平均日成交量
波动
股票价格
体积
α估计
POV贸易策略
交易时间交易策略
adjADV = 0.5;adjVolatility = 2.0;adjPrice = 1.0;adjVolume = 1.0;adjAlpha = 1.0;adjPOV = 1.0;adjTradeTime = 1.0;
请根据场景变量调整样例数据。
TradeDataAdj = TradeData;TradeDataAdj。大小=贸易数据。大小。*(1./adjADV); TradeDataAdj.ADV = TradeData.ADV .* adjADV; TradeDataAdj.Volatility = TradeData.Volatility .* adjVolatility; TradeDataAdj.Price = TradeData.Price .* adjPrice; TradeDataAdj.Alpha_bp = TradeData.Alpha_bp .* adjAlpha;
TradeDataAdj
包含调整后的数据。体积翻倍,因为平均日体积减少了50%。
将POV交易策略转换为交易时间交易策略。
[~,povFlag,timeFlag] = krg. krgdatafags (TradeData);如果povFlag TradeDataAdj。POV = TradeData.POV.*adjPOV;TradeDataAdj。TradeTime = TradeDataAdj。大小。*...((1-TradeDataAdj.POV) ./ TradeDataAdj.POV) .* (1./adjVolume);elseiftimeFlag TradeDataAdj。TradeTime =贸易数据。TradeTime .* adjTradeTime;TradeDataAdj。POV =贸易数据adj。大小。/...(TradeDataAdj。大小+ TradeDataAdj。TradeTime .* adjVolume);结束
根据调整后的数据估算交易成本。数值矩阵newTCA
包含场景的交易成本。
itc = iStar(k,TradeDataAdj);mi = marketImpact(k,TradeDataAdj);tr = timingRisk(k,TradeDataAdj);pa =价格升值(k,TradeDataAdj);newTCA = [itc mi tr pa];
从初始交易成本中减去场景中的交易成本。
rawWI = newTCA - initTCA;wi =表(rawWI (: 1), rawWI (:, 2), rawWI (:, 3), rawWI (:, 4),...“VariableNames”, {“国贸”,“小姐”,“TR”,“爸爸”});
表wi
包含此场景对交易成本的全部影响。
显示交易成本的前三行wi
.
: wi (1:3)
ans = ITC MI TR PA ______ ______ ______ _____ 43.05 0.65 290.80 -9.49 408.29 124.52 443.16 8.47 80.92 13.79 114.97 0.93
中的变量wi
是:
瞬时交易成本
市场影响成本
时间风险
价格上涨
有关上述计算的详细信息,请联系Kissell Research Group。
iStar
|库尔德斯坦地区政府
|marketImpact
|priceAppreciation
|timingRisk