修改建议

建议均线名称后增加均线参数值的显示

是要这样吗?自己动手呀。自建一个均线TB_Myma,把系统的MA全复过来,把MA1改成MA5......。//------------------------------------------------------------------------// 简称: TB_Myma// 名称: // 类别: 策略应用// 类型: 用户应用// 输出: Void//------------------------------------------------------------------------Params Numeric Length1(5); Numeric Length2(10); Numeric Length3(20); Numeric Length4(30); Numeric Length5(60); //股票使用 Numeric Length6(120); //股票使用 Numeric Length7(240); //股票使用VarsEvents OnReady() { Range[0:DataSourceSize() - 1] { CodeProperty codePro; GetProperty(codePro); if(codePro.bigCategory == Enum_CategoryStocks() || codePro.bigCategory == Enum_CategoryForeignStocks()) { SetBackBarMaxCount(1+Max(Max(Max(Max(Max(Max(Length1,length2),Length3),Length4),Length5),Length6),Length7)); } else { SetBackBarMaxCount(1+Max(Max(Max(Length1,length2),Length3),Length4)); } setPlotOption("MA5", "begin-bar", Length1); setPlotOption("MA10", "begin-bar", Length2); setPlotOption("MA20", "begin-bar", Length3); setPlotOption("MA30", "begin-bar", Length4); setPlotOption("MA60", "begin-bar", Length5); setPlotOption("MA120", "begin-bar", Length6); setPlotOption("MA240", "begin-bar", Length7); setPlotOption("MA60", "hide", true); setPlotOption("MA120", "hide", true); setPlotOption("MA240", "hide", true); } } OnBar(ArrayRef<Integer> indexs) { Range[0:DataSourceSize() - 1] { If(Length1 > 0) { PlotNumeric("MA5",AverageFC(Close,Length1)); } If(Length2 > 0) { PlotNumeric("MA10",AverageFC(Close,Length2)); } If(Length3 > 0) { PlotNumeric("MA20",AverageFC(Close,Length3)); } If(Length4 > 0) { PlotNumeric("MA30",AverageFC(Close,Length4)); } If(Length5 > 0) { PlotNumeric("MA60",AverageFC(Close,Length5)); } If(Length6 > 0) { PlotNumeric("MA120",AverageFC(Close,Length6)); } If(Length7 > 0) { PlotNumeric("MA240",AverageFC(Close,Length7)); } } }//------------------------------------------------------------------------// 编译版本 2025/10/26 1396/1762/277// 版权所有 jswxyfx// 更改声明 TradeBlazer Software保留对TradeBlazer平台// 每一版本的TradeBlazer策略修改和重写的权利//------------------------------------------------------------------------

回复:这么写是固定死的,均线参数不能变,均线参数一变,均线参数和均线名称就不符了。MA30的均线,后面参数是30没有问题,如果把参数30改成20,MA30的均线名称和均线参数就不符了。

回复:我试过用变量,不行必须是常量

回复:plot可以用变量不是plotnumeric 而是plot.line这种

回复:plot可以用变量不是plotnumeric 而是plot.line这种

回复:写下代码呢🤝

回复:用这个plot.line方法可以编出来,谢谢!

回复:Params //此处添加参数 numeric N1(12);//均线参数(短) numeric N2(26);//均线参数(长)Vars //此处添加变量 Plot plt1; Plot plt2; series<numeric> MA1; series<numeric> MA2;Defs //此处添加策略函数 Events //此处实现事件函数 //初始化事件函数,策略运行期间,首先运行且只有一次 OnInit() { } //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组 OnBar(ArrayRef<Integer> indexs) { MA1 = averagefc(Close[0], N1); MA2 = averagefc(Close[0], N2); plt1.line("MA1("+text(N1)+")",MA1); plt2.line("MA2("+text(N2)+")",MA2); plt1.setOption("MA1("+text(N1)+")","color",Green);//将指标“MA1”的输出颜色设置为绿色 plt2.setOption("MA2("+text(N2)+")","color",Magenta);//将指标“MA2”的输出颜色设置为紫色 }

回复:😉