老师,您好!当用PLotString或plt.text函数在界面上输出提示时,在实时行情下总是存在重影,采取怎样的办法才能消除这种现象?
还有,消息中心里的消息能用代码自动提取吗?谢谢!
不需要1分钟
10秒周期就能看到,你每根K线都在写"你好" ,你写多了自然就有你所谓的“重影”
前面的案例也是一样的
已经设置了条件If(BarStatus == 2),不是让它每根K线都写,那您说怎样才能实现在最后一根K线输出“您好!”两个字来?
实时和历史是不同的,实时情况下每根新的都是实时状态
你刷新他们都变成历史了 当然会没有
我只是在请教,如何在实时行情下做到只在最后一根K线输出提示?
我觉得你可以尝试用print看右边控制台
这事关Plot对象的底层实现,靠用户代码可能无法解决这个问题。我原来用定时Restart,看来还是只能靠这个办法了。
通过文字定位就知道是不同K线的输出了
您在实时行情下(1分钟K线)运行下下面的代码就明白了。
If(BarStatus == 2)
{
PlotString("Ok", "您好!", Low);
}
在实时输出的时候 你的新增每根K线都当过一次 "最新K线" 当然会输出啊
你刷新了 重新运行代码 那只有最1根是最新K线
不能光想静态的情况,代码要考虑到动态的看这个K线
如果你不想刷新,又不想历史K线的输出影响
那就用unplot 把过去的擦掉
Ok, 终于解决了,我原来不知道有unplot这个函数可以用。谢谢!👍
🐂
学习了
主要是因为你每根bar上都在输出,导致叠加成重影了
你可以试试只在关键bar上plotstring,或者间隔一定bar数量再plotstring
每根K线输出的反而没问题,只是条件在最后一根K线才输出的,会在实时出现下一根新K线时发生重影,原因是在新的K线显示时,原来那根K线的显示并不自动清除,通过手动刷新才能去除。
您好,我还有一个问题就是:消息中心里的消息能用代码自动提取吗?谢谢!
是没有这个机制
知道了,谢谢!
不行
你每根K线都在输出
每根K线输出的反而没问题,只是条件在最后一根K线才输出的,会在实时出现下一根新K线时发生重影,原因是在新的K线显示时,原来那根K线的显示并不自动清除,通过手动刷新才能去除。
换个刷新率高点的显示器?
啥重影?你倒是给个图啊
代码没问题,非实时或通过刷新就能正常显示。
那还是代码问题
If(BarStatus == 2)
{
PlotString("Ok", "您好!", Low);
}
您在实时1分钟K线下试下。