画图和预想的不一样

//------------------------------------------------------------------------ // 简称: MACD_short // 名称: MACD做空策略 // 类别: 策略应用 // 类型: 用户应用 // 输出: Void //------------------------------------------------------------------------ Params Numeric ma_fast(5); Numeric ma_slow(10); Numeric FastLength(12); Numeric SlowLength(26); Numeric MACDlength(9); Vars Series<Numeric> Nbar_lowest; Series<Numeric> Nbar_highest; Series<Numeric> MA5; Series<Numeric>MA10; Series <Numeric>MACDDiff; Series<Numeric> AvgMACD; Numeric MACDValue; Series<Bool> MACD_GC; //MACD金叉 Series<Bool> MACD_DC; //MACD死叉 Series<Bool> MA_GC; //MA金叉 Series<Bool> MA_DC; //MA死叉 Plot pen0; //主图 Plot pen1; //子图 Defs //此处添加策略函数 Events //此处实现事件函数 //初始化事件函数,策略运行期间,首先运行且只有一次 OnInit() { pen1.figure(0); } //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { //绘图 Range[0:DataSourceSize()-1] { Nbar_lowest = Lowest(L,10); Nbar_highest = Highest(H,10); pen0.line("10bar最低",Nbar_lowest); pen0.line("10bar最高",Nbar_highest); MA5 = AverageFC(Close,ma_fast); MA10 = AverageFC(Close,ma_slow); pen0.line("MA5",MA5); pen0.line("MA12",MA10); MACDDiff = XAverage(Close, FastLength) - XAverage(Close, SlowLength); AvgMACD = XAverage(MACDDiff, MACDlength); MACDValue = MACDDiff - AvgMACD; pen1.line("MACDDiff", MACDDiff); pen1.line("MACDDEA", AvgMACD); If(MACDValue > 0) pen1.setOption("MACD","color",Red); Else pen1.setOption("MACD","color",Blue); pen1.barv("MACD", MACDValue); pen1.barv("MACD", MACDValue); pen1.line("零线", 0); } //进出场条件 MA_GC = CrossOver(MA5,MA10); MA_DC = CrossUnder(MA5,MA10); MACD_GC = CrossOver(MACDDiff,AvgMACD); MACD_DC = CrossUnder(AvgMACD,MACDDiff); //交易 If(MA_DC[1] and MarketPosition == 0) { SellShort(1,O); } Else If(MACD_GC[1] and MarketPosition == -1) { BuyToCover(1,O); } } //------------------------------------------------------------------------ // 编译版本 2025/5/7 85247 // 版权所有 hero_2024 // 更改声明 TradeBlazer Software保留对TradeBlazer平台 // 每一版本的TradeBlazer策略修改和重写的权利 //------------------------------------------------------------------------我是菜鸟,请老师解惑,不胜感激:我把MACD指标写在我自己的策略里并在子图输出,可是为什么输出不显示,除非单独加载MACD,我试过,确实是我的代码可以控制,但明明是一个策略啊,为什么会分开成两个,晕

明天我也拷贝了学习一下👍

另外一个帖子的视频我看过了我只能说把我难到了复制代码以后显示是正常的,无法复现。我建议你删除原公式策略,新建一个新的,再试试有可能是历史操作hide掉了macde图线导致不显示,而你忘记了

回复:遇到一个有点贴的梗图

你的截图体现不出你说的问题不过说的问题我好像也没看懂复制你的代码 MACD显示没有问题呀

回复:哦,是我没说明白,你看一下我截图就明白了,在附件里。我的意思是明明我是写在一个策略,为什么在右键-策略应用设置里显示是两个公式,而且可以勾选掉MACD。

回复:哎....你那个图....如果我同时加载你的代码和系统MACD,显示出来的是这个样子

回复:回复里不能发视频啊,感谢你如此认真的回复,我重新发一个贴,附我录屏的,你帮我看一下。

回复:我看了你的视频确实是意想不到的问题只能等老师们或者其他更有经验的同学来了

回复:没用过TBQ3感觉好难

回复:真的不难比你研究的期权简单多了反正迟早要迁移的不过也不一定 或许等再过几年 直接迁移到下一代