以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- [求助]帮忙编写一个程序化交易策略 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=188323) |
-- 作者:king5ping -- 发布时间:2021/5/17 8:31:13 -- [求助]帮忙编写一个程序化交易策略 移动止损策略 //概要:首先判断MACD正负值确定开多开空;价格和最新k线比较,k线最高点为空头止损线,价格突破最高点加一跳空头止损并开多头(前提条件macd>0);k线最低点为多头止损线,价格跌破减一跳多头止损并开空头(前提条件macd<0);突破后止损线按突破点移动至相应k线最高、(或最低)点,且不突破不移动。 绝对开多头仓条件,ema3金叉ema36(macd>0); 绝对开空头仓条件,ema3死叉ema36(macd<0)。 详细策略: //参数精灵:k线周期(m),多空止损滑点(n1),多空开仓滑点(n2),手数(s%或s) 1、多头止损线: //30分钟(m参数可变周期)macd值大于0(金叉状态),只开多,不开空; //多头止损平仓条件:30(m参数)分钟k线,价格和前一个k线比较,价格低于最低点,减一跳(n1)瞬间止损;(macd>0不开空,macd<0瞬间反手开空头); //开多头仓条件:价格和前一个k线比较,价格高于最高点,加一跳(n2)瞬间开多头仓s%仓位(或s手);后续K线连续上破最高点,只要不破最低点,一直保持仓位;(如果macd<0则不开多) //多头止损线移动条件:最新k线最高点高于上一个k线最高点,止损线移至该最新k线最低点; //如果价格一直没有突破上一个k线最高点和最低点,无论走多少个k线,保持多头止损线不变。 2、空头止损线(完全相反): //30分钟(m参数)macd小于0,只开空不开多; //空头止损平仓条件:30(m参数)分钟k线,价格和最新k线比较,价格高于最高点,加一跳(n1)瞬间止损;此时macd<0不开多,macd>0瞬间反手开多头; //开空头仓条件:价格和最新k线比较,价格低于最低价,瞬间减一跳(n2)开空头仓s%仓位(或s手);后续价格连续低于上一个k线最低点,只有不破空头止损线,一直保持仓位;如果macd>0则不开空; //空头止损线移动条件:最新k线最低点低于上一个k线最低点,空头止损线至该k线最高点;如果价格一直没有突破线最高点,无论走多少k线,保持止空头损线不变。 //画出当前的止损线,黄色; //画线当前的高(或低)点,灰色; 4、开多头条件:macd金叉状态下,ema3金叉ema36开多头仓s%(或s手); //只开仓,平仓按止损线走; 5、开空头条件:macd死叉状态下,ema3死叉ema36开空头仓s%(或s手); //只开仓不平仓 (第4、5条不知道需要不需要!) 6、显示仓位,账户现金,当前持仓资产,成功率等等;
|
-- 作者:king5ping -- 发布时间:2021/5/17 11:32:00 -- 恳请老师大侠给我编写一下这个交易策略吧,谢谢老师!!! |
-- 作者:FireScript -- 发布时间:2021/5/17 13:44:34 -- 抱歉,暂且不提供完整策略编写服务。论坛技术主要是协助客户编写过程中处理一些难点问题。 |
-- 作者:king5ping -- 发布时间:2021/5/17 14:06:57 -- 那么,老师给编写一个突破上一个k线最高点买入的语句: |
-- 作者:FireScript -- 发布时间:2021/5/17 14:16:20 -- if h>ref(h,1) and holding=0 then buy(1,1,market);//直接以当前K最高点作为判断依据 大于个K最高点即可。 |
-- 作者:king5ping -- 发布时间:2021/5/17 14:33:02 -- 不行啊,一点也不懂,请给我一个近似的公式看看 |
-- 作者:FireScript -- 发布时间:2021/5/17 14:40:33 -- 这句代码意思很简单的。就是当前最高价大于上一个K的最高级,视为突破。 ref(h,1) 就是表示上一个K最高级。
|
-- 作者:king5ping -- 发布时间:2021/5/17 14:51:38 -- 只一句解决不了问题,能不能给我一个大概的流程,我再慢慢看,我实在是没有基础,急着用实盘做交易 |
-- 作者:king5ping -- 发布时间:2021/5/17 14:55:12 -- 恳求老师了 |