你好,我想问下,K线的颜色能设置成大于30均线以上红色,以下显示绿色吗?
你好,老师,我的通过编译了,但效果没出来,就是在Z均线以上显示红色,以下显示绿色,麻烦看看
Events
OnReady()
{
plt.setOption("x-format","time");//K线不需要显示设置 //SetBackBarMaxCount(1+676);
}
//初始化事件函数,策略运行期间,首先运行且只有一次
OnInit()
// ====== 计算Z周期均线 ======
MA_Z = Average(Close, Z);
// ====== 绘制Z周期均线 ======
if (CurrentBar > 0 )
{
PlotNumeric("MA_Z", MA_Z, 0, RGB(0,0,255)); // 使用金色绘制
}
//==============计算Y周期均线
MA_Y = Average(Close, Y);
// ====== 绘制Y周期均线 ======
if (CurrentBar > 0)
{
PlotNumeric("MA_Y", MA_Y, 0, RGB(255,0,255)); // 使用金色绘制
}
// 计算K线实体颜色
if (Open > MA_Z) {
// 多头红色K线(实体+边框)
plt.setOption("kline", "color", DarkRed);
plt.setOption("kline", "border-color", DarkRed);
} else If (Open <MA_Z) { // 空头绿色K线(实体+边框)
plt.setOption("kline", "color", Green);
plt.setOption("kline", "border-color", Green);
} else
{
// 中性状态:灰色K线(实体+边框)
plt.setOption("kline", "color", DarkGray);
plt.setOption("kline", "border-color", DarkGray);
}
// 填充K线数据结构
myBar.dateTime = Date + Time;
myBar.open = Open;
myBar.high = High;
myBar.low = Low;
myBar.close = Close;
myBar.volume = Vol();
myBar.openInt = OpenInt();
myBar.turnOver = TurnOver();
// 绘制新的K线(蜡烛图)
// 绘制K线
plt.kline("kline", myBar);
}
你确定你这个能通过编译?
如果能的话 可能就是复制的时候漏了些东西吧
把OnInit()里的东西 换到OnBar(ArrayRef<Integer> indexes) 里面去
对了 不是老师哈 我是你同学
感谢解答,我是复制错了,中间省了一堆,我在重新复制下,麻烦给看看,感谢
Events
OnReady()
{
plt.setOption("x-format","time");//K线不需要显示设置 //SetBackBarMaxCount(1+676);
}
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
OnBar(ArrayRef<Integer> indexs)
// ====== 计算Z周期均线 ======
MA_Z = Average(Close, Z);
// ====== 绘制Z周期均线 ======
if (CurrentBar > 0 )
{
PlotNumeric("MA_Z", MA_Z, 0, RGB(0,0,255)); // 使用金色绘制
}
// 计算K线实体颜色
if (Open > MA_Z) {
// 多头红色K线(实体+边框)
plt.setOption("kline", "color", DarkRed);
plt.setOption("kline", "border-color", DarkRed);
} else If (Open <MA_Z) { // 空头绿色K线(实体+边框)
plt.setOption("kline", "color", Green);
plt.setOption("kline", "border-color", Green);
} else
{
// 中性状态:灰色K线(实体+边框)
plt.setOption("kline", "color", DarkGray);
plt.setOption("kline", "border-color", DarkGray);
}
// 填充K线数据结构
myBar.dateTime = Date + Time;
myBar.open = Open;
myBar.high = High;
myBar.low = Low;
myBar.close = Close;
myBar.volume = Vol();
myBar.openInt = OpenInt();
myBar.turnOver = TurnOver();
// 绘制新的K线(蜡烛图)
// 绘制K线
plt.kline("kline", myBar);
消息提示:border-color 属性信息不存在,该设置项无效。 这是什么意思啊?感谢!
......所以 其实你是一点语法都看不懂....
一点都不好玩 改一次 不回了
Params
//此处添加参数
Integer Z(30);
Vars
//此处添加变量
plot plt;
Bar myBar;
Series<Numeric> MA_Z;
Series<Numeric> MA_Y;
Defs
//此处添加策略函数
Events
OnReady()
{
plt.setOption("x-format","time");//K线不需要显示设置 //SetBackBarMaxCount(1+676);
}
//''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
OnBar(ArrayRef<Integer> indexs)
// ====== 计算Z周期均线 ======
{
MA_Z = Average(Close, Z);
// ====== 绘制Z周期均线 ======
if (CurrentBar > 0 )
{
PlotNumeric("MA_Z", MA_Z, 0, RGB(0,0,255)); // 使用金色绘制
}
// 计算K线实体颜色
if (Open > MA_Z) {
// 多头红色K线(实体+边框)
plt.setOption("kline", "color", DarkRed);
plt.setOption("kline", "border-color", DarkRed);
} else If (Open <MA_Z) { // 空头绿色K线(实体+边框)
plt.setOption("kline", "color", Green);
plt.setOption("kline", "border-color", Green);
} else
{
// 中性状态:灰色K线(实体+边框)
plt.setOption("kline", "color", DarkGray);
plt.setOption("kline", "border-color", DarkGray);
}
// 填充K线数据结构
myBar.dateTime = Date + Time;
myBar.open = Open;
myBar.high = High;
myBar.low = Low;
myBar.close = Close;
myBar.volume = Vol();
myBar.openInt = OpenInt();
myBar.turnOver = TurnOver();
// 绘制新的K线(蜡烛图)
// 绘制K线
plt.kline("kline", myBar);
}
非常感谢你的回复,其实我除了parmas 中我用的 numeric Z(30)以外,其他的都一样,而且,我把你给出的代码单独建立了一个公式,最后显示也不行,我可以付费请教 V:17326881675
你比很多人耐心好多了。
之前也有不少人会来回复别人的问题。
被白嫖劳动力多了以后,也都不见了
那是因为我听你课
很多时候我觉得很无脑的问题很无理的要求 你都耐着性子解释
反省过好几次
社区好在 想回就回 不想回就不回 偷偷看看老师是怎么处理的 嘿嘿嘿
哦 试了下 同样的代码在TBQ上显示确实有点问题
即使加了HideKline();也还是有问题
要么 你改用quant3吧 反正刚学 就学最新版的软件呗 ——官网下载
老师说 新功能都在quant3