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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 我一直在用你们的金子塔软件,目前想自己编程,遇到以下的问题:

   

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


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

主题:我一直在用你们的金子塔软件,目前想自己编程,遇到以下的问题:

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/8 11:49:54    Post IP:219.134.241.34[显示全部帖子]

老师,我的意思是把满足条件的K线连起来(满足条件每根K线High值连接起来),并且在主图上输出来
请老师指教!

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/8 14:33:35    Post IP:219.134.241.34[显示全部帖子]

谢谢老师,我试试,另外在for循环中是否可以用画线函数?

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/9 10:17:47    Post IP:219.134.241.34[显示全部帖子]

首先非常感谢老师的回答,我试了下,还是没有达到我想要的,请老师再次指教:
我的策略思路是这样的:
第一步: 从历史数据中找到满足条件的K线,然后把这些k线对应的数据分别存储到几个数组中(具体存放k线的HIGH,LOW,TIME)
第二步: 利用上一步的数组数据,在for循环中再次判断符合条件的K线数据,让后把相邻两个符合条件的K线HIGH用线连接起来
这个就是我想要实现的,目前存在的问题如下:
1. 在第二步中找到的K线如果用线连起来的话,怎样跟具体的K线时间对应起来,因为画线函数中没有体现K线的时间

如果上述方式是不对的,是否还有别的方法来实现我策略,请老师赐教!
再次感谢!


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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/11 18:23:50    Post IP:219.134.241.34[显示全部帖子]

老师,以下是我写的范例,具体不用太关注这个公式的意义,只是我的策略中打算这样来实现画线(把满条件的K线依次连接起来)
请老师看一下,是否可以这样来实现

用1分钟的k线图


{定义数组全局变量}
variable:gHighBuffer[10000]=0.0;
variable:gLowBuffer[10000]=0.0;
variable:gTimeBuffer[10000]=0;


MyHigh:=HIGH;
MyLow:=LOW;
MyTime:=TIME;

i:=0;
j:=1;
tempcount:=datacount;

{存储历史数据到对应的数组中}
for i=tempcount  downto 1 do      
begin
   if((mod(i,2)=1) 
   begin
     gHighBuffer[j]:=MyHigh[i];    {存贮K线最高值}
     gLowBuffer[j]:=MyLow[i];      {存贮K线最低值}
     gTimeBuffer[j]:=MyTime[i];    {存贮K线时间}
     j:=j+1;  
   end;
end;


{在上述生成的数组中,按照规则将相邻的2跟K线高低依次相连,然后再主图上输出}
{我的目的是把上面新的数组里面的相邻2个K线的high值、low值依次连接起来;也就是第j跟k线的High值和第二根k线的low值相连,第j-1根k线的low值和第三根k线的high值相连,依次类推,直到第一根}
j:=j-1;
bFlag:=0;
fTemp:=gHighBuffer[j];
for i=j downto 2 do      
begin
    if(bFlag=0)
    begin
       drawline(1,fTemp,1,gLowBuffer[i-1],0,colorred,1,VTDASH);   {这样是否正确?我不知怎样写这些条件?怎样跟主图上的K线时间对应?}
       bFlag:=1;
       fTemp:=gLowBuffer[i-1];
    end;
    else
    begin
       drawline(1,fTemp,1,gHighBuffer[i-1],0,colorwhite,1,VTDASH);   {这样是否正确?我不知怎样写这些条件?怎样跟主图上的K线时间对应?}
       bFlag:=0;
       fTemp:=gHighBuffer[i-1];
    end;
    
end;



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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/18 8:57:01    Post IP:219.134.241.34[显示全部帖子]

等待老师的答复!

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/18 13:57:58    Post IP:219.134.241.34[显示全部帖子]

多谢老师,请一定帮忙看看怎样实现,这个对我很重要!

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/27 8:43:03    Post IP:219.134.241.34[显示全部帖子]

老师,针对我的面临的问题,有没有解决办法?
或者老师有没有别的思路来实现?

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/28 10:21:48    Post IP:219.134.241.34[显示全部帖子]

多谢老师,我先看下,有问题再请教!

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/28 14:48:51    Post IP:219.134.241.34[显示全部帖子]

刚才看了下,我觉得是不是有点问题
以下举个例子:
如果目前1分钟K线的根数是300个
那么我能不能这样使用序列变量,我只给符合条件的k线进行赋值
       mydata[300]=8.34;
       mydata[297]=0.42;
       mydata[285]=7.64;
      mydata[280]=0.56;
      ...
       mydata[5]=7.24;
       mydata[1]=0.05;
      drawmydata:mydata;

  由于序列变量赋值不是连续的,我只关注我赋值的K线数据
   这样能不能只把第300根、第297根、第285根、第280根。。。第5根、第1根的值在图上输出来?

请老师指教

       

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2014/8/8 11:45:48
  发帖心情 Post By:2014/8/29 8:35:22    Post IP:219.134.241.34[显示全部帖子]


既然这样,我能不能先对序列变量mydata进行初始化,全部赋值成drawnull

mydata:=close;

for i=1 to datacount do begin

      mydata[i]:=drawnull;

end


然后,我再根据自己的条件,对某些有用的K线再进行单独赋值

比如:

       mydata[300]=8.34;
       mydata[297]=0.42;
       mydata[285]=7.64;
      mydata[280]=0.56;
      ...
       mydata[5]=7.24;
       mydata[1]=0.05;

 

dd:mydata;

可以这样做吗?

 


 回到顶部
总数 23 1 2 3 下一页