程序化交易学习笔记(一)
了解学习期货程序化交易及其编程
程序化交易:制定规则,严格按照规则去交易
(本质:构建投资组合)
程序化交易不是“科研”,而是一项“工程”!
巴菲特说:分散化是对于无知的一种保护
一、为什么要进行程序化交易
- 减少盯盘的压力与情绪上的干扰 (外盘也需要关注)
- 超级行情时,人的情绪无法打败固定的交易模型
- 复制成功的交易模式
其他优势:利用统计优势寻找机会点
加快策略研发的速度,让交易规模达到效率化,系统化
减少盲目失败的过程
交易与IT紧密结合,很迅速
二、面临的问题
1市场是个复杂适应性系统
2不存在永恒有效的圣杯
3标准化的开发流程确保系统适应市场的效率
4开发新的市场vs开发全新的策略
三、开发流程*
1分析市场,总结规律,写成代码形式
2.让程序交易
3.验证交易与实际情况是否相符
4.分析市场,完善程序
四、投资组合模型
构建投资组合(两种模型特点):
每个模型都有优点缺点
不同的模型有不同的特点
趋势类模型:胜率低(抓住大盈利,盈亏比要大)
震荡类模型:盈亏比不大但胜率要高
五、针对随机入场方式+资金管理的麦语言学习(后期)
C>0: 阳线 C<0:阴线
止损方法:
(1)主动止损:设定止损金额或亏损比例或多少点
(2)波动止损:用某市场波动性指标来确定止损幅度
(3) 跟踪止损:在有盈利的情况下,利润回吐一定比例止损。
六、为什么需要跨周期调用?(研究最佳操作时机)
跨周期分析实质上就是要解决小的波动如何影响大的趋势,或大的趋势如何限制小的趋势的问题
跨周期引用函数介绍
#IMPORT [PERIOD,N,FORMULA] AS VAR
PERIOD 需要被引用的K线周期级别
N 被引用的具体K线周期数
FORMULA 被引用的指标(模型)名字
VAR 给被引用指标起一个新名字
跨周期模型基本结构与编写
1.
第一步: 建立被引用用的模型 FORMULA
第二步:建立跨周期模型
#IMPORT [PERIOD,N,FOMULA] AS VAR
A1:VAE.A;
A1>REF(A1,1),BPL
A1<REF(A1,1),SPK
…
AUTOFILTER
七、跨周期引用函数介绍
- PERIOD支持如下周期级别:SEC(秒周期) MIN(分钟周期) HOUR(小时周期)
DAY(日周期) WEEK(一周) MONTH(一月) QUARTER(一季度) YEAR(一年)
N为大于等于1的整数,支持自定义周期;
(周以及周一上的周期,N写入大于1的数,按照1计算;例如
#IMPORT [WEEK,2,FORMULA] AS VAR //默认引用的是1周的数据])
FORMULA被引用指标名称不能包含汉字和符号;
VAR定义变量名不能与函数名重复,可以和被引用指标名称相同
#IMPORT 函数是没有分号结尾的!
八、跨周期模型基本结构与编写
AA:REF(C,1); // C昨天收盘价 在五分钟周期引用昨天日K线的收盘价
例二引用失败
跨周期案例——三屏交易系统
当月线图趋势向上,而周线图的震荡指标向下时,做多;
当月线图趋势向下,而周线图的震荡指标向上时,做空。
跨周期案例——ATR突破模型
跨合约模型基本结构与编写
程序化交易学习笔记(一)相关推荐
- 程序化交易学习笔记(四、指标)
常用指标分类与编写 K线形态描述:太阳线 十字星 穿头破脚 趋势类指标 MA组合 BOLL PUBU(瀑布线) SAR(止损点) 摆动类指标ATR(真实波幅) KDJ(随机指标) MACD WR ...
- Python量化交易学习笔记(1)
Python量化交易学习笔记(1) http://zwpython.com/ http://www.topquant.vip/?p=2275 [更多参见] <zwPython,目前最好的py开发 ...
- 公司间交易学习笔记---概述
本系列笔记是我在学习公司间交易的过程中的随笔,有些是我自己的想法,内容可能跟教程有所出入,由于对AX的应用部分理解得很浅,所以如果错误还请多多指教. 为了处理集团公司中各个分公司之间的交易,AX采用了 ...
- Python量化交易学习笔记(18)——放量突破布林线中轨买入策略
本文将探索新的策略回测程序,主要是为了尝试不同的技术指标在backtrader平台上的应用,为后续复杂策略的实现做准备. 本文将实现的策略是,当股票放量突破布林线中轨时进行买入,当股票收盘价低于短期均 ...
- Python量化交易学习笔记(19)——连续下跌买入止盈止损卖出策略
好友提出要验证连续下跌买入止盈止损卖出策略,本文对该策略回测和实现做分析记录. 买入条件中,连续下跌定义为收盘价连续4日低于前1日的收盘价.卖出条件中,止盈率设置为10%,止损率设置为5%.回测初始资 ...
- Python量化交易学习笔记(33)——backtrader仓位管理
本文将对backtrader的仓位管理进行介绍,具体以同时回测交易3只股票为例,查看每日仓位情况. 策略 买入条件:5日线金叉60日线 卖出条件:5日线死叉60日线 示例 仓位信息输出的核心代码位于策 ...
- Python量化交易学习笔记(20)——保护点卖出策略
本文主要记录保护点卖出策略,给买入的股票设立保护点,随着股票收盘价的提升,保护点不断提高,股价一旦跌破保护点,即卖出股票. 示例的买入条件为,5日线金叉60日线,且股价进行小幅回踩(较金叉日收盘价下跌 ...
- Python量化交易学习笔记(2)——A股数据下载
由于笔者只接触过A股交易,因此本系列笔记仅针对A股交易展开.笔者的计算机为Windows 10 64位操作系统. TOP极宽量化总群(124134140)群文件中提供了大量的学习资料,一眼看去有点懵圈 ...
- Python量化交易学习笔记(36)——backtrader多股回测避坑3
本文继续记录多股回测时可能遇到的异常情况. 坑描述 多股回测时,当日期达到所有股票的技术指标都能够计算出有效值后,backtrader才开始进行回测.由于这种逻辑的存在,如果某些股票在回测周期的最后几 ...
最新文章
- 项目中常用的19条MySQL优化
- 【 MATLAB 】MATLAB 实现模拟信号采样后的重建(二)零阶保持(ZOH)
- 针对测试行业,新人的一些建议:我适合做测试吗?
- 【风险管理】风控一二三
- PostgreSQL 10.1 手册_部分 II. SQL 语言_第 5 章 数据定义_5.6. 权限
- connect连接oracle6,Oracle Connect By 使用实例
- [JSOI2008]最小生成树计数
- 实例3 如何使用菜单控件
- append从一个添加到另一_麻城一总投资1.5亿项目开工建设,另一项目预计9月底开工,还有一个年产值14亿的5G项目快速推进中...
- 《Python分布式计算》第2章 异步编程 (Distributed Computing with Python)
- pytest学习(1)
- hdu acm 2569
- 第五次作业之例行报告
- 汇编语言 emu8086软件的安装和输出Hello,world
- java中拦截器和过滤器详解
- 苹果手机上怎么打开html,苹果手机信息怎么打开浏览器
- 超全!Python 处理日期与时间的全面总结!
- IDEA 集成git
- 2022年磺化工艺考试练习题及模拟考试
- 厦门大学校区计算机考试,厦门大学计算机等级考试报名
热门文章
- genymotion的语言设置中文_Genymotion中文手册
- 谢伟业医生在公益这条路上
- 【无标题】导出为Excel文件
- android广播接受使用,android – 广播接收器onReceive()从未调用过
- 【工具】svn移动仓库数据并且账号不丢失的解决办法
- 关于SQLserver2016数据库处于恢复挂起状态的解决方案
- SQL Server处于恢复已挂起状态的解决方法
- Qt中直接启动.exe程序,错误提示:无法启动此程序,因为计算机中丢失Qt5Core.dll。尝试重新安装该程序以解决此问题
- LoadRunner如何确定并发用户数
- 2023多站点城市分站,泛站群