Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共13 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:如何遍历K线啊?

1楼
BruceX 发表于:2013/6/23 11:50:35
我想要最近每根K线的开高低收,怎么弄啊?怎么用数组表示啊?如最近的10根K线的数据,谢谢老师!
2楼
jinzhe 发表于:2013/6/24 9:33:19

直接用HIGH

每根k线就有对应的HIGH值

3楼
fly 发表于:2013/6/24 13:15:46

runmode:1;//序列模式
fc:=close;//定义一个序列变量,相当于是一个数组
k2:fc[datacount-4];//倒数第5根K线的收盘价
k3:fc[datacount-2];//倒数第3根K线的收盘价
k1:fc[datacount-1];//倒数第2根K线的收盘价
k_end:fc[datacount];//最后1根K线的收盘价

 

可参考该帖http://www.weistock.com/bbs/dispbbs.asp?BoardID=10&ID=30380&replyID=&skin=1

4楼
fly 发表于:2013/6/24 13:34:05

如果用FOR循环,如下:

 

runmode:1;//序列模式
fc:=close;//定义一个序列变量,相当于是一个数组
for i=datacount downto datacount-(10-1) do k[datacount-i+1]:fc[i];//把最近10根K线的收盘价赋值给数组K

x1:k[1],linethick0;//最近第1根K线的收盘价

x2:k[2],linethick0;//最近第2根K线的收盘价

x9:k[9],linethick0;//最近第9根K线的收盘价

5楼
王锋 发表于:2013/6/24 17:09:03

在逐K线模式下直接使用内置数组就行了。

 

CLOSE[BARPOS] 就是用的当前的CLOSE,CLOSE[BARPOS-1] 就是用的上一根K线的CLOSE,同理 HIGH[],LOW[],OPEN[],均支持这种模式 

6楼
BruceX 发表于:2013/6/25 21:09:51

我把for循环中的datacount改为barpos,系统变得非常慢,是什么原因啊?

7楼
王锋 发表于:2013/6/26 9:34:18
启用单步跟踪看看,是不是你代码里太多的无效循环导致的
8楼
BruceX 发表于:2013/6/26 19:17:46

只是用For循环,而且只有50个数字,启用单步循环,继续执行又卡住了

9楼
jinzhe 发表于:2013/6/27 9:26:42
楼主把代码发一下
10楼
BruceX 发表于:2013/6/27 17:51:52

runmode:1;//序列模式
fc:=close;//定义一个序列变量,相当于是一个数组
for i=barpos downto barpos-(50-1) do k[barpos-i+1]:fc[i];//

x1:k[1],linethick0;//最近第1根K线的收盘价

x2:k[2],linethick0;//最近第2根K线的收盘价

x9:k[9],linethick0;//最近第9根K线的收盘价

共13 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in 0.01172 s, 3 queries.