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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 发现一个问题,策略中同一时间有多个成交时,sendmail语句一个邮件也不发,请老师帮忙解决一下。

   

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


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

主题:发现一个问题,策略中同一时间有多个成交时,sendmail语句一个邮件也不发,请老师帮忙解决一下。

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


加好友 发短信
等级:黑侠 帖子:749 积分:0 威望:0 精华:0 注册:2016/9/4 18:09:26
发现一个问题,策略中同一时间有多个成交时,sendmail语句一个邮件也不发,请老师帮忙解决一下。  发帖心情 Post By:2016/12/22 20:09:41 [只看该作者]

发现一个问题,策略中同一时间有多个成交时,sendmail语句一个邮件也不发,请老师帮忙解决一下。
策略如下
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
macd:=stkindi('','macd.macd1',0,6);//日macd值
J:=stkindi('','kdj.j',0,6);
if CROSS(diff,dea) and CURRENTTIME>144500  and  tbuyholding(1)=0 and TTOTALDAYTRADE<1 then BEGIN 
 tbuy(1,10000/close,mkt);
 SENDMAIL(1,'13913992413@139.COM; 13773473555@139.COM',STKLABEL & STKNAME & NUMTOSTR(CLOSE,2)& '《买》_【普1_macd金叉】','');
 end
if (J>118  or  c>tenterprice*1.045  or  c<tenterprice*0.93  or  tenterbars>=20 ) and tbuyholding(0)>0 then  BEGIN  
tsell(1,0,mkt);
 SENDMAIL(1 ,'13913992413@139.COM; 13773473555@139.COM',STKLABEL & STKNAME & NUMTOSTR(CLOSE,2)&'《卖》_【普1_macd金叉】','');
 end
[此贴子已经被作者于2016-12-22 20:11:06编辑过]

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


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2016/12/22 20:11:56 [只看该作者]

如果是单个信号,可以正常发送吗?你用的是什么邮箱。
你可以使用手机监控助手同样可以发送消息到手机上。
[此贴子已经被作者于2016-12-22 20:12:03编辑过]


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


加好友 发短信
等级:黑侠 帖子:749 积分:0 威望:0 精华:0 注册:2016/9/4 18:09:26
  发帖心情 Post By:2016/12/22 21:07:23 [只看该作者]

单个信号可以正常发送。我用的是139的邮箱。

 

我前面用软件勾选的发邮件功能,同一时间触发的多个记录是通过一个邮件发出的。  为了想不打开邮件就能看到代码和价格,才在策略中使用sendmail语句的,能不能既用sendmail语句,又勾选邮件?不知道这样会是什么情况?



此主题相关图片如下:捕获.gif
按此在新窗口浏览图片


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2016/12/23 14:13:18 [只看该作者]

 SENDMAIL(1 ,'2857926939@qq.com; 13773473555@139.COM',STKLABEL & STKNAME & NUMTOSTR(CLOSE,2)&'《卖》_【普1_macd金叉】',''),ALLOWREPEAT;

后面加一个allowerpeat

 

本地用下面代码发送正常

 

DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
macd:=stkindi('','macd.macd1',0,6);//日macd值
J:=stkindi('','kdj.j',0,6);
if 1 then BEGIN

 SENDMAIL(1,'2857926939@qq.com; 13773473555@139.COM',STKLABEL & STKNAME & NUMTOSTR(CLOSE,2)& '《买》_【普1_macd金叉】','');
 end
if 1 then  BEGIN 

 SENDMAIL(1 ,'2857926939@qq.com; 13773473555@139.COM',STKLABEL & STKNAME & NUMTOSTR(CLOSE,2)&'《卖》_【普1_macd金叉】',''),ALLOWREPEAT;
 end


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


加好友 发短信
等级:黑侠 帖子:749 积分:0 威望:0 精华:0 注册:2016/9/4 18:09:26
  发帖心情 Post By:2016/12/23 17:03:36 [只看该作者]

不错,问题解决了,金字塔团队图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看



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


加好友 发短信
等级:新手上路 帖子:61 积分:0 威望:0 精华:0 注册:2018/10/31 19:25:06
  发帖心情 Post By:2018/11/18 19:24:04 [只看该作者]

sendmail(开多条件 AND ENTERBARS=0, 'xxx@qq.com', stkname&' 多单'&'  开仓价格: '&numtostr(ENTERPRICE,2), '');

 

请问这样写,  是否在开仓的Bar才发送邮件? 其他k线都不会发送 ?


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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/19 9:10:07 [只看该作者]

sendmail(开多条件 AND ENTERBARS=0, 'xxx@qq.com', stkname&' 多单'&'  开仓价格: '&numtostr(ENTERPRICE,2), '');

红色字体就是设置的条件,在满足上述条件后才会发送邮件,不满足条件当然就不会发送了

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


加好友 发短信
等级:新手上路 帖子:61 积分:0 威望:0 精华:0 注册:2018/10/31 19:25:06
  发帖心情 Post By:2018/11/19 11:15:38 [只看该作者]

enterbars=0   这个条件成立,是否能够在出现开仓命令后立即发送邮件?且只发送一次?

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


加好友 发短信
等级:新手上路 帖子:61 积分:0 威望:0 精华:0 注册:2018/10/31 19:25:06
  发帖心情 Post By:2018/11/19 11:18:48 [只看该作者]

enterbars(0)  函数是否要判断是否成交?还是说出现开仓命令就开始算?

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/19 13:11:47 [只看该作者]

1、可以用全局变量做限制只发送一次

variable:flag=0;

if not(cond) then flag:=0;

if cond and flag=0 then begin

  sendmail();

  flag:=1;

end


2、 只要图表上有了信号就算,不会考虑是否成交的情况;


3、另外建议您有问题可以新建自己的帖子提问


 回到顶部