以文本方式查看主题
- 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp)
-- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4)
---- [求助]文华程序转换 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=87032)
|
-- 作者:听涛
-- 发布时间:2015/11/6 11:37:28
-- [求助]文华程序转换
AA:=GETPRICE(5001, \'BIDVOL1\');//5001是文华码 代表PTA连续 A:VALUEWHEN(AA>8000,AA);// 当获取的买一量大于8000 返回AA也就是当前的买一量 GETPRICE 根据文华码取报价列表窗口某一个合约的行情报价数据。
//其中\'OPEN\'可以替换为以下 \'HIGH\':最高 \'LOW\':最低 \'NEW\':最新 \'AVPRICE\':均价 \'BID1\':买1 \'BIDVOL1\':买1量 \'ASK1\':卖1 \'ASKVOL1\':卖1量 \'VOLUME\':成交量…………
我看到论坛中有关debug文件输出的介绍,但是新接触金字塔不会编写,请老师帮忙。
我要实现的获取买一卖一的量,然后当它们满足一定条件的时候,输出某些特定值(例如时刻、价格、量等)到一个文件(xls或txt)根据输出的内容进行分析
新人第一个问题,谢谢
|
-- 作者:jinzhe
-- 发布时间:2015/11/6 13:03:22
--
是debugfile函数进行输出
举个例子:当ta00的买1量大于8000时,输出当时的时间:
if dynainfo2(25,\'ta00\')>8000 then DEBUGFILE(\'D:\\TEST.TXT\',\'当前时间为%.0f\',dynainfo(207));
|
-- 作者:听涛
-- 发布时间:2015/11/6 13:26:31
--
老师查询金字塔有专门的行情函数
我要实现买卖量的一个比较dynainfo2函数有点复杂吧
大于8000这个条件 有点简单 请您帮我编译一下下面的思路,谢谢 AA:BIDVOL;//取买一 BB:ASKVOL;//取卖一 tj:=aa>bb;//买一大于卖一 输出一个文件 文件中包括 满足条件的时刻 买一量 买一价 卖一量 卖一价
因为这个值只能是在开盘时候才能取得买卖的动态 那么能不能实现收盘之后(包含白盘和夜盘)输出的文件名字不同(例如,今天白盘是1,夜盘是2,明天的白盘是3,夜盘是4)
谢谢jinzhe老师
|
-- 作者:jinzhe
-- 发布时间:2015/11/6 13:32:44
--
文件名不同, 你看一下我写debugfile里面的test.txt,改这个就行
|
-- 作者:听涛
-- 发布时间:2015/11/6 13:33:54
--
DYNAINFO( 207) 当前时刻 DYNAINFO( 7) 最新价
DYNAINFO( 25)买一量 DYNAINFO( 27) 买量 25/27有什么区别?
DYNAINFO( 28)买一价 DYNAINFO( 30)买价 28/30有什么区别?
这样编译对吗? if tj=1 then DEBUGFILE(\'D:\\TEST.TXT\',\'时间\',dynainfo(207),\'买一量\',bidvol,‘买一价’,dynainfo(28),);
|
-- 作者:jinzhe
-- 发布时间:2015/11/6 13:49:18
--
1.
25是买1量,27是买3量,区别在这里。28和30也是这样的区别
2.
不对
if tj=1 then DEBUGFILE(\'D:\\TEST.TXT\',\'时间%.0f\',dynainfo(207));
这句语句你要输出几个数据就写几遍,不要自由发挥随便自行叠加
%.0f不能省略
|
-- 作者:听涛
-- 发布时间:2015/11/6 13:56:06
--
http://www.weistock.com/WeisoftHelp/index.html?fulua_dynainfo.htm 这个就是错误的了 以下是引用jinzhe在2015/11/6 13:49:18的发言:
1.
25是买1量,27是买3量,区别在这里。28和30也是这样的区别
|
-- 作者:jinzhe
-- 发布时间:2015/11/6 14:04:57
--
以软件里面的函数解释为准
此主题相关图片如下:1.png

|
-- 作者:听涛
-- 发布时间:2015/11/6 14:19:37
--
a1:=DYNAINFO(25);//买一量 b1:=DYNAINFO(31);//卖一量 tj1:=a1>3*b1 and a1>1000;//支撑 tj2:=a1<3*b1 and b1>1000;//压力 if tj1=1 then DEBUGFILE2(\'D:\\TEST.TXT\',\'买多%.0f\',0000,1);// 这段为什么不显示呢? DEBUGFILE(\'D:\\TEST.TXT\',\'买一量%.0f\',a1); DEBUGFILE(\'D:\\TEST.TXT\',\'买一价%.0f\',DYNAINFO(28));//绿色部分不应该现实时间的请问怎么处理?
if tj2=1 THEN DEBUGFILE2(\'D:\\TEST.TXT\',\'卖多%.0f\',1111,1);//这段为什么不显示呢? DEBUGFILE(\'D:\\TEST.TXT\',\'买一量%.0f\',b1); DEBUGFILE(\'D:\\TEST.TXT\',\'买一价%.0f\',DYNAINFO(34));
|
-- 作者:jinzhe
-- 发布时间:2015/11/6 14:25:53
--
a1:=DYNAINFO(25);//买一量
b1:=DYNAINFO(31);//卖一量
tj1:=a1>3*b1 and a1>1000;//支撑
tj2:=a1<3*b1 and b1>1000;//压力
if tj1=1 then begin
DEBUGFILE2(\'D:\\TEST.TXT\',\'买多%.0f\',0);// 这段为什么不显示呢?
DEBUGFILE(\'D:\\TEST.TXT\',\'买一量%.0f\',a1);
DEBUGFILE(\'D:\\TEST.TXT\',\'买一价%.0f\',DYNAINFO(28));//绿色部分不应该现实时间的请问怎么处理?
end
if tj2=1 THEN begin
DEBUGFILE2(\'D:\\TEST.TXT\',\'卖多%.0f\',1);//这段为什么不显示呢?
DEBUGFILE(\'D:\\TEST.TXT\',\'买一量%.0f\',b1);
DEBUGFILE(\'D:\\TEST.TXT\',\'买一价%.0f\',DYNAINFO(34));
end
|