金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 232|回复: 1

改后台策略问题

[复制链接]

29

主题

53

帖子

53

积分

Rank: 4

等级: 专业版

注册:
2024-11-13
曾用名:
发表于 2025-8-27 22:08 | 显示全部楼层 |阅读模式
你好老师,帮我把软件上的  K线形态交易系统  图表策略改成后台的。


{************************************************************************************************************************
* 版本:1.0
* 修订时间:2023.11.16
*
* 模型仅供投资者参考学习,依此入市,风险自负!
* 投资者应该结合自身经验进一步完善策略,并充分评估市场风险后再考虑是否使用。
************************************************************************************************************************}


//参数定义:
//表示定义参数N,缺省值为41,最小值为3,最大值为100,优化步长为1
INPUT:N(41,3,100,1),ss(1,1,10000,1);
早晨之星:= REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND REF(OPEN,1) < REF(CLOSE,2) AND ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.03 AND CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2);
早晨十字星:= REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND REF(OPEN,1) < REF(CLOSE,2) AND REF(OPEN,1)=REF(CLOSE,1) AND CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2);
平底:=ABS(LOW-REF(LOW,1))/LOW<0.001 AND ABS(REF(LOW,1)-REF(LOW,2))/REF(LOW,1)<=0.001;
曙光初现:=REF(CLOSE,1)/REF(OPEN,1)<0.97 AND CLOSE/OPEN>1.03 AND OPEN<REF(CLOSE,1) AND CLOSE>REF(CLOSE,1);
阳线穿阴:=REF(CLOSE,1)/REF(OPEN,1)>1.03 AND CLOSE/OPEN<0.96 AND CLOSE<REF(OPEN,1) AND OPEN>REF(CLOSE,1);
黄昏之星:= REF(CLOSE,2)/REF(OPEN,2) > 1.03 AND REF(OPEN,1) > REF(CLOSE,2) AND ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.02 AND CLOSE/OPEN<0.97 AND CLOSE<REF(CLOSE,2);
黄昏十字星:= REF(CLOSE,2)/REF(OPEN,2) > 1.05 AND REF(OPEN,1) > REF(CLOSE,2) AND REF(OPEN,1)=REF(CLOSE,1) AND CLOSE/OPEN<0.95 AND CLOSE<REF(CLOSE,2);
平顶:=ABS(HIGH-REF(HIGH,1))/HIGH<0.001;
乌云盖顶:= REF(CLOSE,1)/REF(OPEN,1)>1.03 AND CLOSE/OPEN<0.97 AND OPEN>REF(CLOSE,1) AND CLOSE<REF(CLOSE,1);
阴线穿阳:=REF(CLOSE,1)/REF(OPEN,1)<0.97 AND CLOSE/OPEN>1.04 AND CLOSE>REF(OPEN,1) AND OPEN<REF(CLOSE,1);
手数:=SS;

//交易条件:
//开空平多条件
COND1:=黄昏之星 OR 黄昏之星 OR 平顶 OR 乌云盖顶 OR 阴线穿阳;
//开多平空条件
COND2:=早晨之星 OR 早晨十字星 OR 平底 OR 曙光初现 OR 阳线穿阴;

//交易系统
IF COND1  THEN
BEGIN
        //如果持有多单,上次开仓到当前的周期数大于N,那么平多单,以市价卖出所有持仓量
           SELL(HOLDING>0 AND ENTERBARS>N,0,MARKET);
           //开空单,以市价空头买入1手
           BUYSHORT(HOLDING=0,手数,MARKET);
END

IF COND2 THEN
BEGIN
           //如果持有空单,上次开仓到当前的周期数大于N,那么平空单,以市价空头卖出所有持仓量
           SELLSHORT( HOLDING<0  AND ENTERBARS>N,0,MARKET);
           //开多单,以市价买入1手
           BUY(HOLDING=0,手数,MARKET);
END


当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值


回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-8-28 08:54 | 显示全部楼层
//参数定义:
//表示定义参数N,缺省值为41,最小值为3,最大值为100,优化步长为1
INPUT:N(41,3,100,1),ss(1,1,10000,1);
早晨之星:= REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND REF(OPEN,1) < REF(CLOSE,2) AND ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.03 AND CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2);
早晨十字星:= REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND REF(OPEN,1) < REF(CLOSE,2) AND REF(OPEN,1)=REF(CLOSE,1) AND CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2);
平底:=ABS(LOW-REF(LOW,1))/LOW<0.001 AND ABS(REF(LOW,1)-REF(LOW,2))/REF(LOW,1)<=0.001;
曙光初现:=REF(CLOSE,1)/REF(OPEN,1)<0.97 AND CLOSE/OPEN>1.03 AND OPEN<REF(CLOSE,1) AND CLOSE>REF(CLOSE,1);
阳线穿阴:=REF(CLOSE,1)/REF(OPEN,1)>1.03 AND CLOSE/OPEN<0.96 AND CLOSE<REF(OPEN,1) AND OPEN>REF(CLOSE,1);
黄昏之星:= REF(CLOSE,2)/REF(OPEN,2) > 1.03 AND REF(OPEN,1) > REF(CLOSE,2) AND ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.02 AND CLOSE/OPEN<0.97 AND CLOSE<REF(CLOSE,2);
黄昏十字星:= REF(CLOSE,2)/REF(OPEN,2) > 1.05 AND REF(OPEN,1) > REF(CLOSE,2) AND REF(OPEN,1)=REF(CLOSE,1) AND CLOSE/OPEN<0.95 AND CLOSE<REF(CLOSE,2);
平顶:=ABS(HIGH-REF(HIGH,1))/HIGH<0.001;
乌云盖顶:= REF(CLOSE,1)/REF(OPEN,1)>1.03 AND CLOSE/OPEN<0.97 AND OPEN>REF(CLOSE,1) AND CLOSE<REF(CLOSE,1);
阴线穿阳:=REF(CLOSE,1)/REF(OPEN,1)<0.97 AND CLOSE/OPEN>1.04 AND CLOSE>REF(OPEN,1) AND OPEN<REF(CLOSE,1);
手数:=SS;

//交易条件:
//开空平多条件
COND1:=黄昏之星 OR 黄昏之星 OR 平顶 OR 乌云盖顶 OR 阴线穿阳;
//开多平空条件
COND2:=早晨之星 OR 早晨十字星 OR 平底 OR 曙光初现 OR 阳线穿阴;

//交易系统
IF COND1  THEN
BEGIN
        //如果持有多单,上次开仓到当前的周期数大于N,那么平多单,以市价卖出所有持仓量
           tSELL(tbuyholding(1)>0 AND tenterbars>N,0,mkt);
           //开空单,以市价空头买入1手
           tBUYSHORT(tsellholding(1)=0,手数,mkt);
END

IF COND2 THEN
BEGIN
           //如果持有空单,上次开仓到当前的周期数大于N,那么平空单,以市价空头卖出所有持仓量
           tSELLSHORT( tsellholding(1)>0  AND tenterbars>N,0,mkt);
           //开多单,以市价买入1手
           tBUY(tbuyholding(1)=0,手数,mkt);
END

金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-9-14 11:34 , Processed in 0.130534 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表