金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 123|回复: 3

请教,均线金叉后遇到macd金叉买入怎么写

[复制链接]

7

主题

13

帖子

13

积分

Rank: 1

等级: 新手上路

注册:
2023-3-9
曾用名:
发表于 2025-8-8 16:10 | 显示全部楼层 |阅读模式
老师好,5日金叉20日均线后,有macd金叉买入,平仓条件是均线死叉,或者macd死叉,或者有收盘价盈利30点回到20点

补充内容 (2025-8-8 16:12):
或者浮动止盈设70%也可以

补充内容 (2025-8-8 16:13):
还有5%亏损要止损平仓
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-8-8 16:24 | 显示全部楼层
// 参数设置
N1:=5;    // 短期均线周期
N2:=20;   // 长期均线周期
止损比例:=0.05; // 5%止损
止盈点数:=30;   // 30点盈利
回撤点数:=20;   // 盈利回撤到20点
止盈比例:=0.7;  // 70%浮动止盈

// 计算均线
MA5:=MA(CLOSE,N1);  // 5日均线
MA20:=MA(CLOSE,N2); // 20日均线

// 计算MACD
DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);

// 交易条件
均线多头排列:=MA5>MA20;  // 5日均线大于20日均线[^3]
MACD金叉:=CROSS(DIFF,DEA); // MACD金叉
死叉条件:=CROSS(MA20,MA5);  // 5日下穿20日均线
MACD死叉:=CROSS(DEA,DIFF); // MACD死叉

// 买入条件
买入条件:=均线多头排列 AND MACD金叉; // 5日均线在20日均线上方且MACD金叉

// 平仓条件
止损条件:=(CLOSE-AVGENTERPRICE)/AVGENTERPRICE<=-止损比例; // 亏损5%止损[^4]
固定止盈:=CLOSE-AVGENTERPRICE>=止盈点数*MINDIFF; // 盈利30点[^16]
回撤止盈:=(CLOSE-AVGENTERPRICE>=止盈点数*MINDIFF) AND (CLOSE-AVGENTERPRICE<=回撤点数*MINDIFF); // 盈利30点回撤到20点[^16]
浮动止盈:=(CLOSE-AVGENTERPRICE)/止盈点数>=止盈比例; // 浮动盈利70%[^8]
平仓条件:=死叉条件 OR MACD死叉 OR 止损条件 OR 固定止盈 OR 回撤止盈 OR 浮动止盈;

// 交易系统
BUY(买入条件 AND HOLDING=0,1,MARKETR);  // 满足条件且无持仓时做多1手[^7]
SELL(平仓条件 AND HOLDING>0,0,MARKETR); // 满足任一平仓条件时平多仓[^7]

// 显示持仓和资产
当前持仓:HOLDING,COLORGRAY,LINETHICK0;  // 显示当前持仓[^12]
当前资产:ASSET,NOAXIS,COLORGRAY;       // 显示当前资产[^16]
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

7

主题

13

帖子

13

积分

Rank: 1

等级: 新手上路

注册:
2023-3-9
曾用名:
 楼主| 发表于 2025-8-8 16:42 | 显示全部楼层
技术008 发表于 2025-8-8 16:24
// 参数设置
N1:=5;    // 短期均线周期
N2:=20;   // 长期均线周期

谢谢老师,帮忙看看下面这个公式,公式测试系统里测不出多头买入,问题在哪

DIFF:=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA:=EMA(DIFF,M);
MACD:=2*(DIFF-DEA);
MA1:=MA(CLOSE,A);
MA2:=MA(CLOSE,B);


KD:=(MA1>MA2) and CROSS(diff,0);           //开多条件
PD:=(MA2>MA1) or CROSS(0,diff);            //平多条件
KK:=(MA2>MA1) and CROSS(0,diff);;          //开空条件
PK:=(MA1>MA2) or CROSS(diff,0);            //平空条件

开多:BUY(kd);            //开多信号
平多:SELL(pd);            //平多信号
开空:BUYSHORT(KK );                        //开空信号
平空:SELLSHORT(PK);                        //平空信号
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-8-8 16:43 | 显示全部楼层
KD:(MA1>MA2) and CROSS(diff,0);           //开多条件

这样输出条件看条件是否满足,这种基本图上看条件要自己掌握
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-18 11:06 , Processed in 0.113710 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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