金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 239|回复: 7

为什么交易模型编译老提示语句末尾缺少分号?

[复制链接]

4

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2024-4-9
曾用名:
发表于 2025-3-10 22:23 | 显示全部楼层 |阅读模式
董董~学一得二:
改写的// 策略名称:三指标共振交易系统(完整版)
INPUT:
    SAR步长(0.02,0.01,0.5),   
    SAR最大值(0.2,0.1,1),      
    MACD快线(12,5,50),        
    MACD慢线(26,10,100),
    MACD信号(9,5,30),
    巩固周期(14,5,30),         
    导数阈值(0.5,0.1,2),
    交易手数(1,1,100);          // 新增仓位控制参数

VARIABLE:
    SAR值:=0, DIFF:=0, DEA:=0,
    最高价:=HIGH, 最低价:=LOW, 收盘价:=CLOSE,
    ATR值:=0, 价格区间:=0, 巩固比:=0, 导数:=0;

// 指标计算(保持不变)
SAR值 := SAR(SAR步长, SAR最大值);
DIFF := EMA(CLOSE,MACD快线) - EMA(CLOSE,MACD慢线);
DEA  := EMA(DIFF,MACD信号);
ATR值 := MA(TR,巩固周期);                  
价格区间 := HHV(HIGH,巩固周期) - LLV(LOW,巩固周期);
巩固比 := 价格区间 / (ATR值 + 0.0001);      
导数 := 巩固比 - REF(巩固比,1);            

// 信号条件优化
多头信号 := 收盘价 > SAR值
    AND CROSS(DIFF, DEA)     // MACD金叉
    AND 导数 > 导数阈值
    AND HOLDING = 0;         // 仅无持仓时触发

空头信号 := 收盘价 < SAR值
    AND CROSS(DEA, DIFF)     // MACD死叉
    AND 导数 < -导数阈值
    AND HOLDING = 0;         // 仅无持仓时触发

// 主动平仓条件
平多条件 := HOLDING > 0 AND (收盘价 < SAR值 OR CROSS(DEA, DIFF));
平空条件 := HOLDING < 0 AND (收盘价 > SAR值 OR CROSS(DIFF, DEA));

// 完整交易指令系统
// 平仓逻辑
IF 平多条件 THEN
    SELL(1,CLOSE,MARKET);    // 市价平多仓

IF 平空条件 THEN
    SELLSHORT(1,CLOSE,MARKET);// 市价平空仓

// 开仓逻辑
IF 多头信号 AND HOLDING = 0 THEN
    BUY(交易手数,CLOSE,MARKET);  // 市价开多仓

IF 空头信号 AND HOLDING = 0 THEN
    BUYSHORT(交易手数,CLOSE,MARKET);// 市价开空仓

// 增强版可视化
DRAWICON(多头信号,LOW*0.98,1);
DRAWICON(空头信号,HIGH*1.02,2);
DRAWTEXT(平多条件,HIGH*1.01,'平多',COLORGREEN);
DRAWTEXT(平空条件,LOW*0.99,'平空',COLORRED);
PLOYLINE1(SAR值,RGB(255,0,0));
PLOYLINE2(DIFF,DEA,COLORCYAN,COLORYELLOW);


// 在初始化段预计算SAR
   ONCE BEGIN
       SAR值 := SAR(SAR初值, SAR最大值);
   END

持仓:holding,linethick0;
资产:asset,noaxis;
可用现金:cash(0),linethick0;

您可以在查看菜单->交易系统模板 中设置自己需要的模板


回复

使用道具 举报

4

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2024-4-9
曾用名:
 楼主| 发表于 2025-3-10 22:24 | 显示全部楼层
谢谢老师帮忙看看
回复

使用道具 举报

38

主题

9811

帖子

9821

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-3-11 09:18 | 显示全部楼层
你这是ai写的把,第一sar参数不对应该是3个的
另外once没有这个函数的,具体是什么需求建议用文字详细描述
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

4

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2024-4-9
曾用名:
 楼主| 发表于 2025-3-18 16:27 | 显示全部楼层
老师,我大致思路是:
当SAR显示上升趋势,MACD出现金叉,同时巩固比导数线也发出买入信号时,产生买入信号。反之,当SAR显示下跌趋势,MACD死叉,巩固比导数线卖出信号时,卖出。
回复

使用道具 举报

38

主题

9811

帖子

9821

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-3-18 16:30 | 显示全部楼层
a:sar(10,2,20);
DIFF :EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  :EMA(DIFF,9);
MACD1 :2*(DIFF-DEA),COLORSTICK;

if a>ref(a,1) and cross(macd1,0) then
begin
        sellshort(1,holding,marketr);
        buy(1,1,marketr);
END

if a<ref(a,1) and cross(0,macd1) then
begin
        sellshort(1,holding,marketr);
        buyshort(1,1,marketr);
END
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

4

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2024-4-9
曾用名:
 楼主| 发表于 2025-3-18 16:32 | 显示全部楼层
这么快?真大牛!
回复

使用道具 举报

4

主题

14

帖子

14

积分

Rank: 1

等级: 新手上路

注册:
2024-4-9
曾用名:
 楼主| 发表于 2025-3-18 16:50 | 显示全部楼层
KDJ用来分析走势有用么?老师?
有人说不如裸K线,请教老师,哪个对?
回复

使用道具 举报

38

主题

9811

帖子

9821

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-3-18 17:26 | 显示全部楼层
这个不清楚了,这个具体指标是否有用需要客户自己结合自身经验
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-4 20:50 , Processed in 0.238434 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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