- 相关简介: 今日股市
- 内容标签: 金字塔,软件
- 浏览次数:
- 运行环境: Win10,Win8,Win7,WinXP
- 文章作者: 操盘手公式网
- 文章来源: www.stock87.com
- 加入时间: 2018-09-14 22:41:00
- 解压密码: www.stock87.com(请仔细输入!复制无效!)
在交易中,特别是突破类模型,成功率并不高,若碰上反复的假突破,更是一种灾难。那有没有方法来减少这种情形的发生呢?本文介绍的闪灵交易者策略(The Ghost Trader Trading Stategy)为大家提供了一种方式。
闪灵交易者策略源自于交易者的观察,一些交易者从自己的交易记录中发现,若上一次交易是盈利的,那么下一笔交易是亏损的概率比较大。因此在设计策略时,希望能跳过这些我们认为会亏损的交易。具体到策略中,我们将引入模拟交易的概念(这个概念仅指此策略中代码部分,请勿与金字塔模拟交易混淆), 与之对应的是真实下单模块。模拟交易始终在运行交易条件。而真实下单模块直到上一笔模拟交易是亏损的情况下才执行。
本文的例子,将忠于原策略,建立在一个指数移动平均和RSI指标上。默认只考虑一次亏损的情况,周期为日线,运行模式为走完K线(在小周期运行此策略,效果更明显些)。
开多:9日收盘价指数平均大于等于19日最高价的指数平均并且9日收盘价的RSI指标下穿70。
开空:9日收盘价指数平均小于19日最高价的指数平均并且9日收盘价的RSI指标上穿30。
平多:最新价下穿20日低点。
平空:最新价上穿20日高点。
以上进出场点并不是这个策略的要点,重在如何记录模拟交易的状况,在金字塔软件中,我们将使用全局变量来构建这个部分。具体的见代码,我会多做些注释。若您完全理解后,移动止盈止损的代码也应不在话下。
代码:
//策略:闪灵交易者系统
//类型:
//版本:1.0
//修订时间:2012.11.24
//DESIGNED BY ROGARZ
//中间变量
INPUT:N1(9,1,100,1),SS(1,1,100);
VARIABLE:该笔盈亏:=0;模拟持仓:=0,模拟开仓价:=0,模拟平仓价:=0,真实系统下单开关:=0;
LC := REF(CLOSE,1);
RSI:=SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100;//RSI指标默认N1为9
9日收盘价指数平均:REF(EMA(CLOSE,9),1);
19日最高价收盘价平均:REF(EMA(HIGH,19),1);
20日高点:=REF(HHV(H,20),1);
20日低点:=REF(LLV(L,20),1);
手数:=SS;
//交易条件
开多条件:=9日收盘价指数平均>=19日最高价收盘价平均 AND REF(RSI,1)<70;
开空条件:=9日收盘价指数平均<19日最高价收盘价平均 AND REF(RSI,1)>30;
平多条件:=C<20日低点;
平空条件:=C>=20日高点;
//交易系统
//模拟交易模块
IF 开多条件 AND 模拟持仓=0 THEN BEGIN
模拟开仓价:=CLOSE;//记录开仓价
模拟持仓:=1;//模拟持仓为1
END
IF 平多条件 AND 模拟持仓=1 THEN BEGIN
模拟平仓价:=CLOSE;//记录平仓价
该笔盈亏:=模拟平仓价-模拟开仓价;//在模拟交易模块中我们只需计算上一笔交易是赚还是亏,在这里我只计算盈亏最后的点数
模拟持仓:=0;//将全局变量*模拟持仓*初始化为0
IF 该笔盈亏>0 THEN BEGIN
真实系统下单开关:=0;//0代表模拟交易上一笔是赚钱的。
模拟开仓价:=0;//将全局变量*模拟开仓价*初始化为0
模拟平仓价:=0;//将全局变量*模拟开仓价*初始化为0
END
IF 该笔盈亏<=0 THEN BEGIN
真实系统下单开关:=1;//1代表模拟交易上一笔是亏钱的。
模拟开仓价:=0;//将全局变量*模拟开仓价*初始化为0
模拟平仓价:=0;//将全局变量*模拟平仓价*初始化为0
END
END
IF 开空条件 AND 模拟持仓=0 THEN BEGIN
模拟开仓价:=CLOSE;//记录开仓价
模拟持仓:=-1;//模拟持仓为-1
END
IF 平空条件 AND 模拟持仓=-1 THEN BEGIN
模拟平仓价:=CLOSE;//记录平仓价
该笔盈亏:=模拟开仓价-模拟平仓价;//在模拟交易模块中我们只需计算上一笔交易是赚还是亏,在这里我只计算盈亏最后的点数
模拟持仓:=0;//将全局变量*模拟持仓*初始化为0
IF 该笔盈亏>0 THEN BEGIN
真实系统下单开关:=0;//0代表模拟交易上一笔是赚钱的。
模拟开仓价:=0;//将全局变量*模拟开仓价*初始化为0
模拟平仓价:=0;//将全局变量*模拟开仓价*初始化为0
END
IF 该笔盈亏<=0 THEN BEGIN
真实系统下单开关:=1;//1代表模拟交易上一笔是亏钱的。
模拟开仓价:=0;//将全局变量*模拟开仓价*初始化为0
模拟平仓价:=0;//将全局变量*模拟开仓价*初始化为0
END
END
//真实下单模块
平空:SELLSHORT(平空条件 AND HOLDING<0,手数,MARKET);
平多:SELL(平多条件 AND HOLDING>0,手数,MARKET);
开多:BUY(开多条件 AND 真实系统下单开关=1 AND HOLDING=0,手数,MARKET);
开空:BUYSHORT(开空条件 AND 真实系统下单开关=1 AND HOLDING=0,手数,MARKET);
版权保护: 本文由「操盘手公式网」编辑发布 转载请注明出处
|
- 近期上证指数『近期上证指数缺口』
- 股市上证指数行情『上海指数行情』
- 美元上证指数『美元上证指数走势图』
- 今天股市上证指数实时『今天股市上证指数实时行情走势』
- 股市行情大盘上证指数今日行情『股市行情大盘上证指数今日行情最新』
- 今天大盘上证指数是多少『今天大盘上证指数是多少点 sf今日大盘走势』
- 明日上证指数『明日上证指数大盘走势』
- 添富上证指数『添富上证指数规则』
- 今日上证指数收盘『今日上证指数收盘多少』
- 易方达上证指数『易方达上证指数50a110003』
- 明天上证指数『明天上证指数预测』
- 中国上证指数是什么『中国上证指数走势图』
- 投资上证指数『上证指数市盈率』
- 中国股市上证指数『中国股市上证指数最低点出现哪一年』
- 买卖上证指数『买卖上证指数etf收印花税吗』
- 为什么深证指数比上证指数高『下拉词空』
- 引用上证指数『引用上证指数怎么编写』
- 天弘上证指数『天弘上证指数50a』
- 历年上证指数图『往年的上证指数』
- 今日大盘上证指数多少点『今日大盘指数 上证指数多少点』