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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请教 ,帮看看

   

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


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

主题:请教 ,帮看看

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


加好友 发短信
等级:新手上路 帖子:25 积分:0 威望:0 精华:0 注册:2018/3/22 23:16:23
请教 ,帮看看  发帖心情 Post By:2018/4/4 12:17:46    Post IP:171.212.223.114[只看该作者]

dc1:=5*mindiff;
dc2:=10*mindiff;

variable:a=0;
variable:b=0;

kd:=open+dc1 and holding=0;
kk:=open-dc1 and holding=0;

开空:buyshort(kk,1,market);
开多:buy(kd,1,market);

repeat
begin
if a<c then a=c;
if a>c+dc2 and holding>0 then
begin
sell(holding>0,holding,market);
buyshort(holding=0,1,market);
end
if b>c then b=c;
if b<c+dc2 and holding<0 then
begin
sellshort(holding<0,holding,market);
buy(holding=0,1,market);
end
if time>=185900 then
begin
sell(holding>0,holding,market);
sellshort(holding<0,holding,market);
end
end
until time>185930


用了循环     一加载到图标上就卡住了  ,是陷入死循环了吗

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


加好友 发短信
等级:管理员 帖子:26631 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2018/4/4 12:28:34    Post IP:180.169.30.6[只看该作者]

你使用循环是为了实现什么操作思路。

你代码中的处理方式压根就不适合PEL策略处理的机制。本身策略就是按时间方向,不多循环运行的

[此贴子已经被作者于2018/4/4 12:30:42编辑过]


编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
beely
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:25 积分:0 威望:0 精华:0 注册:2018/3/22 23:16:23
  发帖心情 Post By:2018/4/4 12:49:32    Post IP:101.206.167.102[只看该作者]

以下是引用wenarm在2018/4/4 12:28:34的发言:

你使用循环是为了实现什么操作思路。

你代码中的处理方式压根就不适合PEL策略处理的机制。本身策略就是按时间方向,不多循环运行的

[此贴子已经被作者于2018/4/4 12:30:42编辑过]

我是想实现在一个判断周期内变量不被重置

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


加好友 发短信
等级:管理员 帖子:26631 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2018/4/4 13:15:20    Post IP:180.169.30.6[只看该作者]

k线计算过程中,每根k上的值,如果k起始位置未发生变化的情况下,其变量的在每根k值,一般不会发生变化。

 

而且是上面的处理方式也控制不了。首先CLOSE,本身就是序列变量,它在时间方向上。(历史部分)其值就不会变。

 

或者你说明下,你遇到的具体是什么问题,才考虑用上面的方式进行处理的?

 



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
beely
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:25 积分:0 威望:0 精华:0 注册:2018/3/22 23:16:23
  发帖心情 Post By:2018/4/4 13:35:24    Post IP:101.206.167.102[只看该作者]

以下是引用wenarm在2018/4/4 13:15:20的发言:

k线计算过程中,每根k上的值,如果k起始位置未发生变化的情况下,其变量的在每根k值,一般不会发生变化。

 

而且是上面的处理方式也控制不了。首先CLOSE,本身就是序列变量,它在时间方向上。(历史部分)其值就不会变。

 

或者你说明下,你遇到的具体是什么问题,才考虑用上面的方式进行处理的?

 

谢谢你,我的策略是在开盘后确定开仓方向,然后以实时价回调或者反弹10个点做反手交易的日内交易,我也不知道我现在这种编程思路对不对,还希望指教下,

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


加好友 发短信
等级:管理员 帖子:26631 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2018/4/4 14:08:30    Post IP:180.169.30.6[只看该作者]

以下是引用beely在2018/4/4 13:35:24的发言:

谢谢你,我的策略是在开盘后确定开仓方向,然后以实时价回调或者反弹10个点做反手交易的日内交易,我也不知道我现在这种编程思路对不对,还希望指教下,

你这个需求,直接就能,根据holding的状态判断当前图表的仓位方向。

不过你需要先了解pel的语法特点以及其图表后台的机制问题。

 

holding>0代表多头持仓,

holding<0代表多空持仓,

holding=0代表持仓为0,

 

例如:价格上涨10个点位,后进行平多开空.(已经存在持仓情况)

if   holding>0 and ENTERPRICE<close+10*mindiff then begin
 sell();
 BUYSHORT();

end

 



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
beely
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:25 积分:0 威望:0 精华:0 注册:2018/3/22 23:16:23
  发帖心情 Post By:2018/4/4 14:20:53    Post IP:101.206.167.102[只看该作者]

以下是引用wenarm在2018/4/4 14:08:30的发言:

你这个需求,直接就能,根据holding的状态判断当前图表的仓位方向。

不过你需要先了解pel的语法特点以及其图表后台的机制问题。

 

holding>0代表多头持仓,

holding<0代表多空持仓,

holding=0代表持仓为0,

 

例如:价格上涨10个点位,后进行平多开空.(已经存在持仓情况)

if   holding>0 and ENTERPRICE<close+10*mindiff then begin
 sell();
 BUYSHORT();

end

 

谢谢你,我的思路不是上涨10个点反手交易,是开仓后开始计算历史最高价回调十个点就反手交易多转空(历史最低价反弹10个点反手空转多),请问这怎么实现?

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


加好友 发短信
等级:管理员 帖子:26631 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2018/4/4 14:29:51    Post IP:180.169.30.6[只看该作者]

一样的。开仓以来以来的最高价

HH:hhv(high,ENTERBARS);

直接拿这个和当前行情比较就行了。



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26631 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2018/4/4 14:35:33    Post IP:180.169.30.6[只看该作者]

buy(BARPOS=1,1,MARKETr);

 

if   holding>0 and hhv(high,ENTERBARS)<close+10*mindiff  and  ENTERBARS>0  then begin
 sell();
 BUYSHORT();

end

 

hhv(high,ENTERBARS)可以得到开仓以来的最高价,当然你也可以通过全局变量进行标记。

 

[此贴子已经被作者于2018/4/4 14:36:41编辑过]


编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
beely
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:25 积分:0 威望:0 精华:0 注册:2018/3/22 23:16:23
  发帖心情 Post By:2018/4/4 16:21:59    Post IP:101.206.167.102[只看该作者]

以下是引用wenarm在2018/4/4 14:35:33的发言:

buy(BARPOS=1,1,MARKETr);

 

if   holding>0 and hhv(high,ENTERBARS)<close+10*mindiff  and  ENTERBARS>0  then begin
 sell();
 BUYSHORT();

end

 

hhv(high,ENTERBARS)可以得到开仓以来的最高价,当然你也可以通过全局变量进行标记。

 

[此贴子已经被作者于2018/4/4 14:36:41编辑过]

灰常感谢,我之前就是想用全局变量,但是没处理好。
[此贴子已经被作者于2018/4/4 16:23:23编辑过]

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