Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共9 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[求助]帮忙编写一个程序化交易策略

1楼
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、显示仓位,账户现金,当前持仓资产,成功率等等;
2楼
king5ping 发表于:2021/5/17 11:32:00
恳请老师大侠给我编写一下这个交易策略吧,谢谢老师!!!
3楼
FireScript 发表于:2021/5/17 13:44:34
 抱歉,暂且不提供完整策略编写服务。论坛技术主要是协助客户编写过程中处理一些难点问题。
4楼
king5ping 发表于:2021/5/17 14:06:57
那么,老师给编写一个突破上一个k线最高点买入的语句:
5楼
FireScript 发表于:2021/5/17 14:16:20
 if h>ref(h,1) and holding=0 then buy(1,1,market);//直接以当前K最高点作为判断依据 大于个K最高点即可。
6楼
king5ping 发表于:2021/5/17 14:33:02
不行啊,一点也不懂,请给我一个近似的公式看看
7楼
FireScript 发表于:2021/5/17 14:40:33
 这句代码意思很简单的。就是当前最高价大于上一个K的最高级,视为突破。
ref(h,1) 就是表示上一个K最高级。
8楼
king5ping 发表于:2021/5/17 14:51:38
只一句解决不了问题,能不能给我一个大概的流程,我再慢慢看,我实在是没有基础,急着用实盘做交易
9楼
king5ping 发表于:2021/5/17 14:55:12
恳求老师了
共9 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in .04688 s, 3 queries.