以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  如何让一个数据只在第1分钟取值?  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=182016)

--  作者:yanxc
--  发布时间:2020/9/3 14:47:34
--  如何让一个数据只在第1分钟取值?
因为在1分钟图引用了9:29出现的那个集合竞价分笔数据,导致每分钟都计算一次,性能很受影响。

想只在第1分钟取值,用下面方法发现第1分钟无法显示C:

if OPENMINUTES(TIME)<2 
then begin
AA:C;
end;

请问是什么原因?

如何才能只在第1分计算并保留数值?

--  作者:banzhuan
--  发布时间:2020/9/3 15:00:52
--  
是要求第一根K的收盘价吧? 试试这: RS:VALUEWHEN( OPENMINUTES(TIME)=1,C);
--  作者:yanxc
--  发布时间:2020/9/3 15:08:25
--  
不是,收盘价是个例子,实际要取的是集合竞价的主买额
VALUEWHEN(TODAYBAR=1,(TOTBUYA(\'SH2\',0)-TOTSELLA(\'SH2\',0))
是用stkindi引用到1分钟的

--  作者:FireScript
--  发布时间:2020/9/3 15:08:38
--  
你记不住集合竞价时候的值的。你没办法在图表上这样操作的。
图表上的逻辑是这个K走完了,取走完K的数据结果作为最终的一个值。中间的时候,数据都是一个变化状态的,不会固定下来。

你这个思路只有后台上可能能实现。

--  作者:yanxc
--  发布时间:2020/9/3 15:09:47
--  
问题是stkindi每分钟都会算一次

我希望只在第1分算

--  作者:wenarm
--  发布时间:2020/9/3 15:23:56
--  
序列函数每根k都会计算。没办法指定
--  作者:yanxc
--  发布时间:2020/9/3 15:36:37
--  
不能记没关系。但至少第1根K线能显示嘛

为啥这个写法不能显示?

if OPENMINUTES(TIME)<2 
then begin
AA:C;
end;

--  作者:yukizzc
--  发布时间:2020/9/3 15:39:58
--  
必须用逐k模式,不能使用序列模式
--  作者:banzhuan
--  发布时间:2020/9/3 15:45:55
--  
你改逐K模式试试
--  作者:yanxc
--  发布时间:2020/9/3 15:51:31
--  
对的。逐K线可以显示。


if OPENMINUTES(TIME)<2 
then begin
AA:stkindi(xxxxxxxxxxxxxx);
end;

BB:valuewhen(OPENMINUTES(TIME)=1,AA);

这样写,还会每分钟都去计算引用分笔数据不?