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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → [求助]公式全部改成做空

   

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


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

主题:[求助]公式全部改成做空

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


加好友 发短信
等级:新手上路 帖子:30 积分:0 威望:0 精华:0 注册:2017/3/2 18:21:35
[求助]公式全部改成做空  发帖心情 Post By:2017/3/3 14:43:24 [只看该作者]

//定义参数
Input:N(81,1,100,10),P1(14,2,40,4),P2(14,2,40,4),P3(36,10,100,2);

//中间变量 
Variable:ls=0,Gl=0,Dl=0;
Num:=2;
Em:Ema(Close,34);//收盘价34期EMA
Sm:Sma(Close,8,1);//收盘价8期SMA
Rsv:=(Close-Llv(Low,N))/(Hhv(High,N)-Llv(Low,N))*100;
K:Sma(RSV,P1,1),NOAXIS;
D:Sma(K,P2,1),noaxis;
Tp:=Valuewhen(Cross(k,d),High);//KD交叉时对应高点
Gj:=Valuewhen(H>=HHV(High,P3),High);//前一轮行情最高价
Cond4:=Barslast(H>=HHV(High,P3));//前一轮行情高点到现在的周期数
Dj:=Llv(Low,Cond4);//前一轮行情最低价

Cond1:=Sm>Em;
Cond2:=Cross(K,D);//K、D交叉
Cond3:=Barslast(COND2)<=4 AND High>Tp;//KD交叉以后四个周期内,价格突破
BuyCond:Cond1 And K>D And Cond3 ;//开仓条件


//下单语句
If BuyCond And Holding=0 Then
   Begin
   Buy(1,Num,Market);
   Gl:=Gj;//开仓时前一轮行情高价
   Dl:=Dj;//开仓时前一轮最低价
   ls:=Gl-Dl;//区间幅度
   End
   
//幅度止损部分  
If Enterprice>=Gl And Close<=Dl+0.618*ls Then Sell(1,Num,Market);
If Enterprice>=Dl+0.786*ls And Enterprice<=Gl And Close<=Dl+0.5*ls Then Sell(1,Num,Market);
If Enterprice>=Dl+0.5*ls And Enterprice<=Dl+0.786*ls And Close<=Dl+0.236*ls Then Sell(1,Num,Market);
If Enterprice>=Dl+0.236*ls And Enterprice<Dl+0.5*ls And Close<=Dl Then Sell(1,Num,Market);

//幅度止盈部分
If Close>=Dl+1.272*ls Then Sell(1,Intpart(Num/2),Market);
If Close>=Dl+1.618*ls Then Sell(1,0,Market);

 

把这个公式全部改成做空的




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


加好友 发短信
等级:超级版主 帖子:2266 积分:0 威望:0 精华:0 注册:2016/11/15 9:18:08
  发帖心情 Post By:2017/3/3 14:47:03 [只看该作者]

楼主,请自己修改。做空语句是buyshort与sellshort,条件部分自己根据思想修改即可。


【必看】隆重推出“论坛VIP身份认证,更好、更快地为您服务!详情请看置顶帖。


————————————————————

90%问题均可在历史帖中重现,请善用检索

————————————————————

VIP认证的好处: 帖子将更好更快地被处理

————————————————————

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


加好友 发短信
等级:新手上路 帖子:30 积分:0 威望:0 精华:0 注册:2017/3/2 18:21:35
  发帖心情 Post By:2017/3/3 15:05:31 [只看该作者]

我不会改,我才开始学习,麻烦您帮我改一下,可以做多,也可以做空!

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


加好友 发短信
等级:超级版主 帖子:18691 积分:0 威望:0 精华:0 注册:2013/7/15 9:22:16
  发帖心情 Post By:2017/3/3 15:21:13 [只看该作者]

只改交易指令是没有用的,建议客户自己学习编写

http://www.weistock.com/bbs/dispbbs.asp?boardid=16&Id=55132

 


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


加好友 发短信
等级:新手上路 帖子:30 积分:0 威望:0 精华:0 注册:2017/3/2 18:21:35
  发帖心情 Post By:2017/3/3 16:55:02 [只看该作者]

好的 谢谢


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


加好友 发短信
等级:新手上路 帖子:30 积分:0 威望:0 精华:0 注册:2017/3/2 18:21:35
  发帖心情 Post By:2017/3/6 18:53:07 [只看该作者]

我改成这样,但是好像哪里不对呀?麻烦帮我看看

 

//中间变量
Variable:ls=0,Gl=0,Dl=0;
Num:=2;
Em:Ema(Close,34);//收盘价34期EMA
Sm:Sma(Close,8,1);//收盘价8期SMA
Rsv:=(Close-Llv(Low,N))/(Hhv(High,N)-Llv(Low,N))*100;
K:=Sma(RSV,P1,1),NOAXIS;
D:=Sma(K,P2,1),noaxis;
Tp:=Valuewhen(Cross(D,K),LOW);//KD交叉时对应低点
Gj:=Valuewhen(L<=LLV(LOW,P3),LOW);//前一轮行情最低价
Cond4:=Barslast(L<=LLV(LOW,P3));//前一轮行情低点到现在的周期数
Dj:=HHV(high,Cond4);//前一轮行情最高价

Cond1:=Sm<Em;
Cond2:=Cross(D,K);//K、D交叉
Cond3:=Barslast(COND2)<=4 AND LOW<Tp;//KD交叉以后四个周期内,价格突破
BuyCond:=Cond1 And K<D And Cond3 ;//开仓条件


//下单语句
If BuyCond And Holding=0 Then
   Begin
   BUYSHORT(1,Num,Market);
   Gl:=Gj;//开仓时前一轮行情低价
   Dl:=Dj;//开仓时前一轮最高价
   ls:=Dl-GL;//区间幅度
   End
  
//幅度止损部分 
If Enterprice>=Dl And Close<=Dl-0.382*ls Then SELLSHORT(1,Num,Market);
If Enterprice<=Gl-1.786*ls And Enterprice>=Dl And Close>=Gl-1.5*ls Then SELLSHORT(1,Num,Market);
If Enterprice<=Gl-1.5*ls And Enterprice>=Gl-1.786*ls And Close>=Gl-1.236*ls Then SellSHORT(1,Num,Market);
If Enterprice<=Gl-1.236*ls And Enterprice>Gl-1.5*ls And Close>=Gl Then SellSHORT(1,Num,Market);

//幅度止盈部分
If Close<=Gl-0.272*ls Then SellSHORT(1,Intpart(Num/2),Market);
If Close<=Gl-0.618*ls Then SellSHORT(1,0,Market);

 


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


加好友 发短信
等级:超级版主 帖子:2266 积分:0 威望:0 精华:0 注册:2016/11/15 9:18:08
  发帖心情 Post By:2017/3/7 8:38:58 [只看该作者]

请编写完公式后点击“编译公式”按钮,进行初步调试。目前就您6楼提供的代码,反馈的第一个便是 未定义的变量N。

后续代码存在疑问,用户需自行掌握调试技巧,详情:http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=1246


————————————————————

90%问题均可在历史帖中重现,请善用检索

————————————————————

VIP认证的好处: 帖子将更好更快地被处理

————————————————————

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


加好友 发短信
等级:新手上路 帖子:30 积分:0 威望:0 精华:0 注册:2017/3/2 18:21:35
  发帖心情 Post By:2017/3/7 18:53:02 [只看该作者]

Input:N(81,1,100,10),P1(14,2,40,4),P2(14,2,40,4),P3(36,10,100,2);

 

//中间变量
Variable:ls=0,Gl=0,Dl=0;
Num:=2;
Em:Ema(Close,34);//收盘价34期EMA
Sm:Sma(Close,8,1);//收盘价8期SMA
Rsv:=(Close-Llv(Low,N))/(Hhv(High,N)-Llv(Low,N))*100;
K:=Sma(RSV,P1,1),NOAXIS;
D:=Sma(K,P2,1),noaxis;
Tp:=Valuewhen(Cross(D,K),LOW);//KD交叉时对应低点
Gj:=Valuewhen(L<=LLV(LOW,P3),LOW);//前一轮行情最低价
Cond4:=Barslast(L<=LLV(LOW,P3));//前一轮行情低点到现在的周期数
Dj:=HHV(high,Cond4);//前一轮行情最高价

Cond1:=Sm<Em;
Cond2:=Cross(D,K);//K、D交叉
Cond3:=Barslast(COND2)<=4 AND LOW<Tp;//KD交叉以后四个周期内,价格突破
BuyCond:=Cond1 And K<D And Cond3 ;//开仓条件


//下单语句
If BuyCond And Holding=0 Then
   Begin
   BUYSHORT(1,Num,Market);
   Gl:=Gj;//开仓时前一轮行情低价
   Dl:=Dj;//开仓时前一轮最高价
   ls:=Dl-GL;//区间幅度
   End
  
//幅度止损部分 
If Enterprice>=Dl And Close<=Dl-0.382*ls Then SELLSHORT(1,Num,Market);
If Enterprice<=Gl-1.786*ls And Enterprice>=Dl And Close>=Gl-1.5*ls Then SELLSHORT(1,Num,Market);
If Enterprice<=Gl-1.5*ls And Enterprice>=Gl-1.786*ls And Close>=Gl-1.236*ls Then SellSHORT(1,Num,Market);
If Enterprice<=Gl-1.236*ls And Enterprice>Gl-1.5*ls And Close>=Gl Then SellSHORT(1,Num,Market);

//幅度止盈部分
If Close<=Gl-0.272*ls Then SellSHORT(1,Intpart(Num/2),Market);
If Close<=Gl-0.618*ls Then SellSHORT(1,0,Market);

 


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


加好友 发短信
等级:新手上路 帖子:30 积分:0 威望:0 精华:0 注册:2017/3/2 18:21:35
  发帖心情 Post By:2017/3/7 18:55:13 [只看该作者]

有变量的,一楼的变量!我编译公式成功的,但是把图表放小后,信号就消失不见了

 


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


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

历史信号受K线数量的影响,尤其你其中还使用对数据比较敏感的函数sma.

所以会在成信号的变化



编程无捷径,技巧靠积累。
 回到顶部