量化交易策略matlab交易方案,Matlab量化交易策略之 GFTD+止损 附源码
策略思路:
GFED模型,趋势跟踪策略,利用K线收盘价的涨跌进行判断,真正交易前,需经历交易启动,到交易信号发出的过程,并且买入和卖出分别当做独立的系统进行计算。当买入计数达到4,做多,当卖出计数达到4,做空。并利用ATR控制止损和加仓。
回测曲线(由Auto-trader提供回测报告)
GFTD+止损.png (218.28 KB, 下载次数: 3)
2017-3-27 16:00 上传
策略源码:
function atdloss(freq)targetList = traderGetTargetList();HandleList = traderGetHandleList();global record;global record1;global record2;global record3;for i=1:length(targetList) marketposition=traderGetAccountPosition(HandleList(1),targetList(i).Market,targetList(i).Code); barnum=traderGetCurrentBar(targetList(i).Market,targetList(i).Code); len=30; dlen=31; [time,open,high,low,close,volume,turnover,openinterest] = traderGetKData(targetList(i).Market,targetList(i).Code,'min',freq, 0-len, 0,false,'FWard'); [Dtime,Dopen,Dhigh,Dlow,Dclose,Dvolume,Dturnover,Dopeninterest] = traderGetKData(targetList(i).Market,targetList(i).Code,'day',1, 0-dlen, 0,false,'FWard'); if length(close)close(end-4) ud=1; elseif close(end)=record3{i}.bhigh(2)&&high(end)>record3{i}.bhigh(1)&&close(end)>record3{i}.bclose(1) record3{i}.bcou=record3{i}.bcou+1; end elseif record3{i}.b>1&&record3{i}.bcou<4 record3{i}.bcou=0; record3{i}.b=0; end %卖出交叉计数 if record3{i}.s==1 if close(end)<=record3{i}.slow(2)&&low(end)>record3{i}.slow(1)&&close(end)>record3{i}.sclose(1) record3{i}.scou=record3{i}.scou+1; end elseif record3{i}.s>1&&record3{i}.scou<4 record3{i}.scou=0; record3{i}.s=0; end %判断买入启动是否达成 if record3{i}.bcou==4 con1=1; record3{i}.b=0; record3{i}.bcou=0; record3{i}.bclose=[]; record3{i}.bhigh=[]; record3{i}.blow=[]; else con1=0; end if record3{i}.scou==4 con2=1; record3{i}.s=0; record3{i}.scou=0; record3{i}.sclose=[]; record3{i}.shigh=[]; record3{i}.slow=[]; else con2=0; end %------------------止损线 ATR=ATR(Dhigh,Dlow,Dclose,20); %-------------------------------满仓上移--------------% if record1{i}.m>3 if close(end)>record1{i}.entryp+2*ATR(end)&&(marketposition>0) record1{i}.entryp= record1{i}.entryp+2*ATR(end); elseif close(end)0&&record1{i}.m~=0 if close(end)record1{i}.entryp+0.5*ATR(end) order= traderPositionTo(HandleList(1),targetList(i).Market,targetList(i).Code,0,0,'market','sell'); if order~=0 record1{i}.m=0; record1{i}.entryp=close(end); record1{i}.entrybar=0; end end end sharenum=5; %---------------入场-------------% if con1&&(record1{i}.m==0)&&(marketposition==0) order=traderBuy(HandleList(1),targetList(i).Market,targetList(i).Code,sharenum,0,'market','buy'); %%%%做多 if order~=0 record1{i}.m= record1{i}.m+1; record1{i}.entryp=close(end); record1{i}.entrybar=barnum; end end if con2&&(record1{i}.m==0)&&(marketposition==0) order=traderSellShort(HandleList(1),targetList(i).Market,targetList(i).Code,sharenum,0,'market','buy'); %%%%做多 if order~=0 record1{i}.m= record1{i}.m+1; record1{i}.entryp=close(end); record1{i}.entrybar=barnum; end end %----------------------------加仓----------------------% if close(end)>record1{i}.entryp+2*ATR(end)&&(record1{i}.m<=3)&&(marketposition>0) order=traderBuy(HandleList(1),targetList(i).Market,targetList(i).Code,sharenum,0,'market','buy'); %%%%做多 if order~=0 record1{i}.m= record1{i}.m+1; record1{i}.entryp=close(end); record1{i}.entrybar=barnum; end end if close(end)
更多免费策略源码下载请登录DigQuant社区-策略资源下载~ ww w.digquant.com.cn
GFTD+止损.png
(218.28 KB, 下载次数: 7)
2017-3-27 16:00 上传
GFTD+止损.png
(218.28 KB, 下载次数: 0)
2017-3-27 15:59 上传
GFTD+止损.png
(218.28 KB, 下载次数: 0)
2017-3-27 15:59 上传
GFTD+止损.png
(218.28 KB, 下载次数: 0)
2017-3-27 15:57 上传
量化交易策略matlab交易方案,Matlab量化交易策略之 GFTD+止损 附源码相关推荐
- 如何设置交易滑点?精确到tick 测算期货冲击成本(附源码)
我们在非撮合回测模式下,因为无法获知交易价格当时的真实盘口价差.挂单数量,常主观设定一个滑点均值,比如针对螺纹钢等合约,设置 1 跳,针对某些交易不活跃的品种,设置 2 跳. 但是这种近乎拍脑袋的方法 ...
- 基于Matlab使用 System 对象模拟惯性测量单元测量仿真(附源码)
目录 一.默认参数 二.硬件参数调优 三. 随机噪声参数调谐 四.环境参数调整 五.程序 此示例演示如何使用 System 对象模拟惯性测量单元 (IMU) 测量.IMU 可以包括单个传感器的组合,包 ...
- 基于Matlab搭建单站雷达扫描天空仿真平台(附源码)
目录 一.介绍 二.启动跟踪方案设计器 三.编辑和修改方案 四.设计塔式平台 五.模拟场景 5.1播放控件和时间滚动条 5.2 导出到矩阵 六.运行生成的脚本 6.1 可视化目标和检测 6.2 可视化 ...
- 基于Matlab生成并可视化多架飞机轨迹仿真(附源码)
目录 一.介绍 二.插值器选择 三.航点建设 四.场景生成 4.1 轨迹可视化 4.2 轨迹 1 4.3 轨迹 2 4.4 轨迹 3 4.5 轨迹 4 4.6 轨迹 5 4.7 轨迹 6 五 ...
- 基于Matlab多平台雷达网络生成雷达检测仿真(附源码)
目录 一.带旋转雷达阵列的机载平台 二.带有两个雷达阵列的机载平台 三.带有矩形雷达阵列的地面平台 四.机载目标 五.雷达探测的生成 六.总结 七.程序 此示例演示如何从多平台雷达网络生成雷达检测.该 ...
- matlab布林线代码,[转载]布林指标的计算(附源码)
鉴于通达信软件和其他国内证券分析软件布林带指标与国外Advanced GET 8.0 和 Gannalyst Professional 5.0 分析软件布林指标表示差距过大,特别写一篇博文帮助大家理解 ...
- python量化策略源码_【Python量化投资】趋向系统指标策略 ADX、DMI指标用于股票池(附源码)...
原标题:[Python量化投资]趋向系统指标策略 ADX.DMI指标用于股票池(附源码) [什么是ADX] ADX(average directional indicator) 平均趋向指数,常用的趋 ...
- 掘金量化 | 短周期量价策略(附源码)
可能不少朋友都有阅读过国泰君安<基于短周期价量特征的多因子选股体系>这篇研报,对其内多达191个量价因子印象深刻.该研报是在2017年中旬发布的,时至今日已过去四年时光,为此大家可能会好奇 ...
- 基于Matlab的单基地雷达模拟检测和跟踪仿真(附源码)
目录 一.介绍 1.1 统计雷达模型 1.2 场景管理 1.3 扫描控制 二.场景-空中监视 2.1 雷达系统 2.2 参考目标和雷达环路增益 2.3 构建雷达 2.4 方案和目标 2.5 可检测性 ...
最新文章
- 95%粉丝失联,小编感觉像失恋?
- mysql gtid 1236_MYSQL主从搭建GTID报错 error 1236 master has purged binary logs containing GTIDs?...
- python微信好友分析源代码_Python实现微信好友的数据分析
- 基于Node的PetShop,RESTful API以及认证
- 关于GeneXus封装方法Model的方法
- php hex2bin nodejs,Nodejs Serialport文档翻译
- 洛谷P5110:块速递推(特征根方程、光速幂)
- nginx http server
- LNMP架构介绍与搭建
- 摩拜服务器维护,摩拜的后台是云服务器
- Win7-64bit下MapX的安装和使用
- 分享我开发的视频解析网址
- 图形验证码文字识别——pytesseract
- Oracle XDB组件的重建
- FIFO设计中的注意问题与技巧
- puzzle(010.1)自我指涉的选择题
- MySQL系列 -2 创建数据库 并 分配用户远程访问权限
- Assets, Objects and serialization Assets, Objects与序列化 最佳实践系列3
- 显微镜C接口_壁虎支架、AI相机、手机镜头、便携显微镜,十一旅行有它们更精彩...
- SeetaFace使用(问题)
热门文章
- 苹果mac电脑重装系统,以及重装之后没有声音、热键不能使用的解决办法
- 有一个整数,加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?完全平方数:16=4*4
- 图的邻接矩阵表示法及顶点入度、出度的计算方法
- 增强网络口碑营销效果的5个方法
- html网页打不开二级网页,二级网页打不开的解决方法
- vue range 双向滚动 取中间值
- 2020.11.17【读书笔记】丨ONT 测序平台送样指导——DNA 取样要求
- Matlab 中一些符号的含义
- js中回调函数的理解 举例说明js回调函数
- GO、KEGG富集分析实例讲解