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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请教“:”与“:=”的问题

   

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


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

主题:请教“:”与“:=”的问题

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


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2019/6/4 15:55:38
请教“:”与“:=”的问题  发帖心情 Post By:2020/5/15 14:25:01    Post IP:122.4.101.145[只看该作者]

AA[BARPOS-1]:High;
TE:AA[BARPOS-1];

逐K模式,上面的例子,AA可以显示为后一天的高价,TE显示当天高价,这没啥问题。但当第一句加上“=”,

AA[BARPOS-1]:=High;
TE:AA[BARPOS-1];

现在TE却变成0了,这是咋回事?这不就是简单的一个序列变量的一个序列值赋值为high,然后直接调用这个序列值,咋就不是high了?百思不得其解

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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/5/15 15:04:34    Post IP:180.169.30.6[只看该作者]

这种写法就是存在问题的。 规避下就行了。:和:= 的确有差异,但是具体这个差异怎么影响到上面的操作,目前不太清楚。原因应该是和一些底层的机制有关系,所以只能建议用户规避这些造成问题的用法了。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
cui53228
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2019/6/4 15:55:38
  发帖心情 Post By:2020/5/15 15:31:22    Post IP:122.4.101.145[只看该作者]

那请问给序列变量赋值,不用:=,要用什么呢?直接用=?那需要事先申明变量为序列变量吧,且不说金字塔好像没有像NUMERICSERIES这种直接指定为序列的关键字,我试着改成这样:

VARIABLE:AA:=CLOSE;

AA[BARPOS-1]=High;
TE:AA[BARPOS-1],LineThick0;

结果TE还是0啊

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


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2019/6/4 15:55:38
  发帖心情 Post By:2020/5/15 15:55:55    Post IP:122.4.101.145[只看该作者]

同样的写法,不管这里是用AA[1]还是AA[BARPOS-1],用在MC或金魔方之类上都是正常的。而金字塔只有AA[1]这种下标是常数才正常。但因为金字塔的序列下标是按顺序而不是像其他很多软件一样倒叙,想给上一根赋值这种常用操作岂不是都不能用了?明明你们的范例里都有MA1:=MA1+CLOSE[BARPOS-J]这种写法

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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/5/15 16:27:51    Post IP:180.169.30.6[只看该作者]



赋值就是“:=”。唯一的问题就是 你无法给H,C这类自带的序列变量赋值。直接或者间接的都不行。也无法在当前K给上一个K的任何变量赋值。

只支持如下方式的读取值。

直接如下操作即可,它本身作为一个序列变量是可用指定用下标处理的:
x1:High[BARPOS+1];//当前K前(未来方向)一个K的最高价
x2:High[DATACOUNT];//最新K位置最高价
x3:High[BARPOS-1];//最新K位置的上一个K的最高价

没必要把H再赋值给一个变量来重现定义一个序列变量。

[此贴子已经被作者于2020/5/15 16:30:03编辑过]


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
cui53228
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2019/6/4 15:55:38
  发帖心情 Post By:2020/5/18 10:13:59    Post IP:122.4.101.145[只看该作者]

问题是有时候需要回溯的周期是变量,事先并不知道。比如说画趋势线,是事后才确认高低点。
比如说要在从高点回落超过20%时才确认高点,然后画上轨趋势线。如果不用向前赋值,那该怎么处理实现呢?


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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/5/18 10:17:13    Post IP:180.169.30.6[只看该作者]

 回溯数值也可以用ref或者refx这种函数,一个是向历史回溯,一个是未来函数,回溯的周期可以是变量。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
cui53228
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2019/6/4 15:55:38
  发帖心情 Post By:2020/5/18 10:22:46    Post IP:122.4.101.145[只看该作者]

因为金字塔没有像其他软件的TL_new这类直接指定划线起始点的函数,只能用DRAWLINE这种当根确认满足条件的。如果不使用像 “高点[事后才确定的高点位置]=1”这种向前赋值,如何实现划趋势线?用refx当根并没法确定向后回溯多少啊,只有事后才知道然后向前赋值

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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/5/18 10:32:38    Post IP:180.169.30.6[只看该作者]

我明白你这个思路。但是目前所有画线都是以当前K的条件作为标准。暂时没其他办法。也无法给历史序列位置的变量赋值。所有你这个需求应该是实现不了了。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
cui53228
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:8 积分:0 威望:0 精华:0 注册:2019/6/4 15:55:38
  发帖心情 Post By:2020/5/18 10:43:30    Post IP:122.4.101.145[只看该作者]

好吧,希望能尽快加入TL_NEW,TL_GET,TL_SET这类脱离序列划线的函数,这样配合脱离序列的数组函数,可以实现很多划线下单和算法处理功能

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