量化编程文华财经T8基础编程连载3

量化编程文华财经T8基础编程连载3

书接上回,今天我们来学习如何将一个指标写成交易策略,我们实际回测一下,争取大家学会简单交易策略的编写过程和具体逻辑。

量化编程文华财经T8基础编程连载3

交易策略参数

量化编程文华财经T8基础编程连载3

瀑布线指标

量化编程文华财经T8基础编程连载3

ATR以及多头空头排列

量化编程文华财经T8基础编程连载3

交易策略构建

完整源码:

//////////////////////********极致量化********///////////////////

/////////////////////////瀑布线交易策略展示//////////////////////

//时间:2024年6月23日——广东汕头

//瀑布线指标画法

// PBA是第一条瀑布线,基于M1的参数进行计算

PBA:(EMA(CLOSE,M1)+MA(CLOSE,M1*2)+MA(CLOSE,M1*4))/3;

// PBK是第二条瀑布线,基于M2的参数进行计算

PBK:(EMA(CLOSE,M2)+MA(CLOSE,M2*2)+MA(CLOSE,M2*4))/3;

// PBC是第三条瀑布线,基于M3的参数进行计算

PBC:(EMA(CLOSE,M3)+MA(CLOSE,M3*2)+MA(CLOSE,M3*4))/3;

// PBD是第四条瀑布线,基于M4的参数进行计算

PBD:(EMA(CLOSE,M4)+MA(CLOSE,M4*2)+MA(CLOSE,M4*4))/3;

// PBE是第五条瀑布线,基于M5的参数进行计算

PBE:(EMA(CLOSE,M5)+MA(CLOSE,M5*2)+MA(CLOSE,M5*4))/3;

// PBF是第六条瀑布线,基于M6的参数进行计算

PBF:(EMA(CLOSE,M6)+MA(CLOSE,M6*2)+MA(CLOSE,M6*4))/3;

//交易策略构建

//ATR计算

//求最高价减去最低价,一个周期前的收盘价减去最高价的绝对值,一个周期前的收盘价减去最低价的绝对值,这三个值中的最大值

TR := MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));

//求N个周期内的TR的简单移动平均

ATR := MA(TR,21);

//多头排列和空头排列条件

DTPL:= PBA > PBK && PBK > PBC && PBC > PBD && PBD > PBE && PBE > PBF;

KTPL:= PBA < PBK && PBK < PBC && PBC < PBD && PBD < PBE && PBE < PBF;

//开仓头寸建立

//持仓状态为0,满足多空排列和价格突破立即开仓进场

BKVOL=0 && C > PBA && C > PBK && C > PBC && C > PBD && C > PBE && C > PBF,BK;

BKVOL=1 && DTPL=1,BK;

SKVOL=0 && C < PBA && C < PBK && C < PBC && C < PBD && C < PBE && C < PBF,SK;

SKVOL=1 && KTPL=1,SK;

//止损设计

//设计两种出场方式,1,开仓后直接奔向止损点,2,直到反方向信号出现

BKVOL > 0 && C<=(BKPRICE-1.618*ATR),SP;

CLOSE<=BKHIGH*(1-15/100),SP;

BKVOL > 0 && C < PBA && C < PBK && C < PBC && C < PBD && C < PBE && C < PBF,SP;

SKVOL > 0 && C>=(SKPRICE+1.618*ATR),BP;

CLOSE>=SKLOW*(1+15/100),BP;

SKVOL > 0 && C > PBA && C > PBK && C > PBC && C > PBD && C > PBE && C > PBF,BP;

//过滤信号

TRADE_OTHER(‘AUTO’);//自动移仓换月

AUTOFILTER;

上面的代码你完全可以拷贝到自己的电脑,接下的演示将跟我的一模一样,看一百遍不如实地操作一次,因为你实际操作一次,感受到实际结果你就知道量化交易跟你纯手工交易有本质的区别。

注意量化策略本质上没有高低之分,因为不管什么量化策略没有无限提升的可能,因为这里面有个核心思想“如果可以无限提升收益上限,那么这个市场将不复存在!

下面,我们来逐字逐句解释代码意思和逻辑思想

//瀑布线指标画法

// PBA是第一条瀑布线,基于M1的参数进行计算

PBA:(EMA(CLOSE,M1)+MA(CLOSE,M1*2)+MA(CLOSE,M1*4))/3;

// PBK是第二条瀑布线,基于M2的参数进行计算

……..

这段代码主要是解决瀑布线的画法,它的意思用到EMA(指数移动平均)以及MA(简单移动平均),取周期的1倍,2倍和4倍然后简单平均除以3。

瀑布线是一种中线指标,一般用来研究股价的中期走势,与普通均线系统相比较,它具有反应速度快,给出的买卖点明确的特点,并能过滤掉盘中主力震仓洗盘或下跌行情中的小幅反弹,可直观有效地把握住大盘和个股的运动趋势,是目前判断大势和个股股价运行趋势颇为有效的均线系统。

瀑布线的优点还在于其不会类似其他指标那样频繁发出信号,瀑布线的买卖信号出现并不多,如果瀑布线给出了买入或卖出信号,只要按照其应用原则去做,就一定会取得较好的投资收益。

在趋势明显的上涨或下跌趋势中,瀑布线能给出明确的买卖点和持仓信号,是把握波段行情的利器,它不仅适用于平衡市的操作,更适用于上涨趋势明显中应用。(这段来自抖音百科对瀑布线的解释)

其实也就那样,输出结果如下:

量化编程文华财经T8基础编程连载3

下面我们就来建立交易策略,我曾经在连载《勇敢者的游戏》里面说过,我随便都可以写几十套具有正向收益的策略,虽然有夸张嫌疑,但是你只要满足如下几点,你也可以:

1,开仓具有确定性,记住我说的确定性,我不是说过未来不可预测,交易怎么能说有确定的东西?其实一点都不矛盾。

我其实表达的意思是,一旦未来有趋势行情,价格一定在之前出现过大于或者小于所有趋势的情况,那里就是我们的进场点。

量化编程文华财经T8基础编程连载3

上图箭头这两个地方就是进场点

2,进场必带止损

3,逻辑既要考虑到回撤又要有吃到波段的思维,逻辑要有封闭性,确保没有漏洞。

只要满足上面三点,你随便写交易逻辑都可以实现正向收益。

量化编程文华财经T8基础编程连载3

ATR和多空排列

上面两段落的就是求出ATR和多头还是空头排列的举动,一个是求出真实K线波动率,一个是求出整体行情形态。目的后续调用。

量化编程文华财经T8基础编程连载3

多空开仓

上面这段是多空开仓多空开仓逻辑,需要逐句解释一下;

BKVOL=0 && C > PBA && C > PBK && C > PBC && C > PBD && C > PBE && C > PBF,BK;

//在空仓状态(BKVOL=0),收盘价大于所有均线,开仓(BK,多开仓),交易第一原则就是价格为第一要素,什么量价关系还是实时新闻等等都没实盘价格的权重大。

BKVOL=1 && DTPL=1,BK;

//这句的意思,已经开仓一手,但是又出现多头排列的情况,(DTPL=1),再开一手,这句的意思就是形态满足多头形态再次进场。

空头就是多头的镜像反写就好。

量化编程文华财经T8基础编程连载3

止损的设计

关键的止损环节

BKVOL > 0 && C<=(BKPRICE-1.618*ATR),SP;

//上面这句就是,只要有持多开仓,价格小于开仓位置的1.618倍ATR 的值就出场(SP)

CLOSE<=BKHIGH*(1-15/100),SP;

//上面这句就是价格没出现止损,但是从高点滑落15%也出场,比方在1000点进场涨到1300,咔,又掉落到(1300*0.85=)1105就会被动离场,典型的移动止损模式,越涨止损线会逐步提高。

BKVOL > 0 && C < PBA && C < PBK && C < PBC && C < PBD && C < PBE && C < PBF,SP;

//上面这句就是价格在运行途中,开始出现疲软,均线开始呈现黏合状态,冷不丁,价格击穿所有均线,它既没有出现15%的回撤幅度,又没有直接奔向止损点,那么我们的原则,既然不行就多头状态退出,让空头进场来试试。这样也就完美封闭了整个交易逻辑。

测试一下表现:

量化编程文华财经T8基础编程连载3

单个品种测试

量化编程文华财经T8基础编程连载3

27年的跨度

27年的时间,无穷无尽的走势刚住了出现正向趋势。我们来选择全市场,散户都可以参与的品种又有成交量和持仓的三十多个品种看看

量化编程文华财经T8基础编程连载3

量化编程文华财经T8基础编程连载3

总收益曲线

还可以吧?每个品种虚拟50万,我们来读取一下分析报告。

量化编程文华财经T8基础编程连载3

30年的总体时间,买卖信号总计8300个(平均每天开仓或者平仓一次,绝对的低频率),大概手续费10万元左右,最大真实本金164586,我们取20万,总计收益113万6千多,考虑滑点,我们按照最大打85折(实际滑点绝对不可能),这样(1134610-100000)*0.85=8794185这是最保守的收益。

你可能看到收益率才6.88%,那是我虚拟16500000(每个50万,33个品种,其实真有这么多钱用不着玩这个了,安心养老算了)才造成这样,如果你看最大实际需求164585,实际30年收益的是接近7倍的。虽然不算暴利(暴利其实都不长久),你要知道全世界的赌场整体真实优势不过才55%左右,就可以打遍天下无敌手,真实社会什么东西都需要时间沉淀,哪有一蹴而就的美事等你捞现成的?所以读取数字报告要注意这些细节。

本策略是没有进行参数优化和进出场细节优化的,是非常具有普适性和生命力的。

这个策略实际属于均线类另类策略,欢迎各位留言,希望看到其他交易策略,我来完成。好了今天就到此为止。(未完待续)

量化编程文华财经T8基础编程连载3

发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/78481
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!

(0)
股市刺客的头像股市刺客
上一篇 2024 年 7 月 15 日
下一篇 2024 年 7 月 15 日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注