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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 由多段曲线组成的线该怎么画?

   

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


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

主题:由多段曲线组成的线该怎么画?

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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
由多段曲线组成的线该怎么画?  发帖心情 Post By:2014/4/28 16:17:00    Post IP:125.71.41.225[显示全部帖子]

由多段曲线组成的线该怎么画?

 

比如下面这样,为什么不行呢?

IF 距今天数=1 then  多段曲线:C1;

IF 距今天数=2 then  多段曲线:C2;

……

 

这个写法有什么问题吗?


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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/4/28 16:47:57    Post IP:125.71.41.225[显示全部帖子]

以下是引用jinzhe在2014/4/28 16:22:14的发言:

runmode:0;

IF 距今天数=1 then  多段曲线:=C1;

IF 距今天数=2 then  多段曲线:=C2;

多段曲线1:多段曲线;

 

好象如此,画出的始终是C1呢


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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/4/28 17:16:08    Post IP:125.71.41.225[显示全部帖子]

现在是这样。

用以下代码,能让ts=0、1的时候正确显示曲线,但无法写出ts=2、3、4……的IF情况

 

HLX:=IF(ts=0,H2,H2-cha[1]);
HLX2:HLX;
 
 
如果换以下代码,则始终只显示ts=0的曲线:
 

if ts=0 then HLX:=H2;
else  HLX:=H2-cha[1];

HLX2:HLX;


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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/4/28 17:30:18    Post IP:125.71.41.225[显示全部帖子]

如下

if ts=0 then HLX:=H2;
if ts=1 then HLX:=H2-cha[1];
if ts=2 then HLX:=H2-cha[1]-cha[2];
if ts=3 then HLX:=H2-cha[1]-cha[2]-cha[3];
HLX2:HLX;

 

逐K线,还是与ts=0时候的H2显示完全一样。


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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/4/29 17:05:36    Post IP:125.71.41.225[显示全部帖子]

以下是引用jinzhe在2014/4/29 9:23:37的发言:
不会,你看看TS是不是有=2的时候,再看看cha[1] ...cha[n] 是不是等于0

ts=2、3、4……都有啊,ts都直接在图上显示了。

 

cha[1]……也有啊,否则我用HLX:=IF(ts=0,H2,H2-cha[1]);……HLX:=IF(ts=0,H2,H2-cha[1]-cha[2]);这些都能正确显示。


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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/5/3 16:01:20    Post IP:171.88.42.75[显示全部帖子]

以下是引用jinzhe在2014/4/29 17:10:51的发言:

这样的写法是没问题的,你的显示有问题肯定是某些变量的没有该有的数值,你把代码全部贴出来看看

 

公式“倒数K线”:

dskx:CURRBARSCOUNT-1;

 

H2:=SELFDATAN(3); //该自定义数据为保存的每日9:15-15:00资金曲线。测试时可使用其他数据比如K线代替
tm:=OPENMINUTES(TIME); //开盘分钟
ts:=STKINDI('','倒数K线.dskx',0,6); //距离最后K线的天数(对开盘日来说就是距今天数)
cha[1]:=VALUEWHEN(tm=255 and ts=1,H2); //昨天15:00的流出额
cha[2]:=VALUEWHEN(tm=255 and ts=2,H2); //前天15:00的流出额
cha[3]:=VALUEWHEN(tm=255 and ts=3,H2);
cha[4]:=VALUEWHEN(tm=255 and ts=4,H2);

H21:IF(ts=0,H2,H2-cha[1]); //这个可以正常显示今天与昨天的连续资金线,非开盘时间除外
 
以下代码却不能正常显示:
if ts=0 then HLX:=H2;
if ts=1 then HLX:=H2-cha[1];
if ts=2 then HLX:=H2-cha[1]-cha[2];
if ts=3 then HLX:=H2-cha[1]-cha[2]-cha[3];
HLX2:HLX;
 
以下代码比较接近,也不正确:
HLX:IF(ts>0,H2-SUM(cha[ts],ts),H2);

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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/5/4 13:16:11    Post IP:171.88.42.75[显示全部帖子]

以下是引用jinzhe在2014/5/4 10:25:43的发言:
自定义数据的公式贴出来

 

自定义数据3:=ALLTICKUA('SH',0)-ALLTICKDA('SH',0);

 

其曲线相当于易士0号无红绿色版。目前是分日的,想连接为累加的。

 

为测试方便,用大盘K线代替SELFDATAN(3)都是可以的。


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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/5/4 15:57:40    Post IP:171.88.42.75[显示全部帖子]

以下是引用jinzhe在2014/5/4 14:20:51的发言:

分段显示没有问题的

比如这样的

runmode:0;

if c>o then n:=1;

if c<=o then n:=0;

nn:n;你看看这样的代码是不是OK的

你的代码没问题。

 

可我这两段应该完全一样的代码,却显示完全不同:

 

代码一:

HLX2:IF(ts=0,H2,H2-cha[1]);

 

代码二:

if ts=0 then HLX:=H2;
if ts<>0 then HLX:=H2-cha[1];
HLX2:HLX;
 
代码二中HLX2与H2完全相等,没任何变化;代码一却变化了。真奇怪。
 
 

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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/5/4 15:59:22    Post IP:171.88.42.75[显示全部帖子]

更奇怪的是,把cha[1]换成常数也一样

 

代码一:

HLX2:IF(ts=0,H2,H2-20);

 

代码二:

if ts=0 then HLX:=H2;
if ts<>0 then HLX:=H2-20;
HLX2:HLX;
 
其中代码二完全不起作用。而其中ts是能正确显示的。

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


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2014/5/4 16:10:16    Post IP:171.88.42.75[显示全部帖子]


原因好象是这样:

 

分段显示只在逐K线模式才正常显示,而cha[1]所用的Valuewhen似乎在序列模式才正确。


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