欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 系统运行模式理解问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有3427人关注过本帖树形打印复制链接

主题:系统运行模式理解问题

帅哥哟,离线,有人找我吗?
gp_99
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/11/11 15:41:10
系统运行模式理解问题  发帖心情 Post By:2017/2/27 10:41:02    Post IP:221.217.230.237[只看该作者]

后台程序化代码,我想有个全局变量 A,运行于Tick级别,代码如下:
VARIABLE: A=0;

IF A=0 THEN BEGIN
 DEBUGFILE('C:\AAA.txt','系统初始化中...%.2f',A);
END ELSE BEGIN
 DEBUGFILE('C:\AAA.txt','系统运行中...%.2f',A);
END

A:=A+1;

逐K线运行,发现log中没有“系统初始化中....0"的输出,每个Tick都只有一个"系统运行中358.00";
序列模式,发现只有"系统初始化中....0.00"的输出。

本来希望的是,今天启动后碰到的第一个K线,运行A=0部分的代码,之后,每个K线都裕兴ELSE后的代码,每次有个全局变量A进行记录运行次数。请教各位了,这么回事儿?我的理解究竟哪儿错了?

 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2017/2/27 10:47:47    Post IP:180.173.41.99[只看该作者]

用globalvariable来定义全局变量

用variable会从内存里面的第一根数据开始算,而不是当前k线为第一根



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
gp_99
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/11/11 15:41:10
  发帖心情 Post By:2017/2/27 10:52:35    Post IP:221.217.230.237[只看该作者]

谢谢,搞定。

 回到顶部
帅哥哟,离线,有人找我吗?
gp_99
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/11/11 15:41:10
  发帖心情 Post By:2017/2/27 10:55:55    Post IP:221.217.230.237[只看该作者]

另外显示globalvariable不支持数组,请使用variable生命普通全局变量。用variable定义数组也是达到相同的效果吗?

 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2017/2/27 10:56:38    Post IP:180.169.30.6[只看该作者]

数组是另外一回事了,数组和全局变量不一样


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
gp_99
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/11/11 15:41:10
  发帖心情 Post By:2017/2/27 11:05:26    Post IP:221.217.230.237[只看该作者]

还是稍微有点儿蒙圈。
globalvariable: A=0;
VARIABLE: B[10]=0;
IF A=0 THEN BEGIN
 FOR I=1 TO 10 DO BEGIN
   B[I]:=I;
 END
 DEBUGFILE('C:\AAA.txt','系统初始化中...%.2f',B[9]);
END ELSE BEGIN
 DEBUGFILE('C:\AAA.txt','系统运行中...%.2f, ',B[9]);
END
A:=A+1;

1.这种数组在启动的时候初始化,有什么办法吗?

2.对于variable,如果是从第一根K线开始计算,那么,为什么没有前面357个K的输出呢。理解上有点儿困难。
我觉得能理解好这个问题,对我理解金字塔的运行模式和开发应该很有好处。还望不吝赐教哈。

 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2017/2/27 11:14:07    Post IP:180.173.193.42[只看该作者]

1.要不被反复初始化,那么就要设定公式为逐k线计算

2.计算归计算,输出归输出,历史上的数据并不会输出,输出只会输出最新的



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
gp_99
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/11/11 15:41:10
  发帖心情 Post By:2017/2/27 11:17:06    Post IP:221.217.230.237[只看该作者]

1.我现在是逐K线计算。
2.您的意思是,前面357根都是按照这个公式计算了的。只是没有输出是吗?那如果在前357根里面有交易指令的话,是不是也不会触发?

 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2017/2/27 11:28:54    Post IP:180.169.30.6[只看该作者]

1.你这里的初始化指的是什么?你是要还是不要初始化?初始化的结果是什么?

2.不触发



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
gp_99
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/11/11 15:41:10
  发帖心情 Post By:2017/2/27 12:52:25    Post IP:221.217.230.237[只看该作者]

1.我现在正在更改为每次都初始化。我初始化是初始化一些序列配置变量,而且这些变量是随着建仓、仓位和止损等变化的。比如我在XXX价位进入的仓位,在另外一个价格可以止损或者止盈,这样跟踪每个买卖点的仓位进出情况,具有延续性。现在我在想别的办法。您要有好的办法,告诉一下哈。
2.谢谢您的解释。另外我想问一下,THolding返回的是当前策略的持仓情况还是真实账户的情况。比如我有两个策略运行于一个品种,比如第一个策略持仓20手,第二个策略持仓15手,真实账户应该吃放35手,第一个策略调用THOLDING返回的是20还是35?谢谢您的帮助。

 回到顶部
总数 11 1 2 下一页