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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件策略编写求助区 → 再求帮忙写公式,谢谢啦!

   

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


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

主题:再求帮忙写公式,谢谢啦!

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


加好友 发短信
等级:新手上路 帖子:54 积分:0 威望:0 精华:0 注册:2015/1/7 8:05:14
再求帮忙写公式,谢谢啦!  发帖心情 Post By:2015/1/27 17:29:32 [只看该作者]

求帮忙写公式,谢谢啦!  发帖心情 Post By:2015/1/25 8:35:48 [只看该作者

用于IF的一分钟日内交易K线

1.MACD(26,12,9,1)DIF向上交叉MACD,买进;DIF向下交叉MACD,卖出!

2.设40个价位的移动止盈。

3.初始开仓1手,如果本次操作盈利,下一次仍然开仓1手;如果本次操作亏损,下一次开仓加多1手,即开两手;如果第二次仍然亏损,第三次开仓3手,以此类推(最高开仓数为5手),直到完全弥补前面(当天)的亏损,又回到开仓1手。

以上为基本要求,是否可以写成自动化交易程序?

万分感谢。

已经有位老师帮我写过一次,但用过了!根本无效,乱码!死叉还买进!金叉却卖出!一开单就两手!
在网上问,又没人复我!!!!!!!急!!!!!!

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


加好友 发短信
等级:新手上路 帖子:54 积分:0 威望:0 精华:0 注册:2015/1/7 8:05:14
  发帖心情 Post By:2015/1/27 19:21:21 [只看该作者]

图片点击可在新窗口打开查看

 回到顶部
美女呀,离线,留言给我吧!
pyd
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2015/1/28 9:50:06 [只看该作者]

之前少写了止盈的,另外你图上输出开仓平条件就知道该不该开仓。

VARIABLE:n=1,ying=0,kui=0;
dea:stkindi('','macd.dea',0,1);
diff:stkindi('','macd.diff',0,1);
jc:cross(dea,diff);//金叉
sc:cross(diff,dea);//死叉

if date<>ref(date,1) then begin //第二天重置为0重新计算
 n:=1;
 ying=0;
 kui:=0;
 end

if jc and n<=5 then begin //限制最多5手
buy(holding=0,n,market);
end
//移动止盈
if h-enterprice>=30*mindiff then sell(holding>0,holding,market);

if sc then begin
sell(holding>0,holding,market);
if numprofit(1)>0 then begin//盈利n赋值为1手
n:=1;
ying:=numprofit(1)+ying;//盈利的和
end

if numprofit(1)<0 then begin //亏损n+1手
 n:=n+1;
 kui:=numprofit(1)+kui;//亏损总数
 end
 end
if ying>kui then n:=1;

if n>=5 then n:=5;

 


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


加好友 发短信
等级:新手上路 帖子:54 积分:0 威望:0 精华:0 注册:2015/1/7 8:05:14
  发帖心情 Post By:2015/1/28 10:32:37 [只看该作者]

谢谢!空单会开吗?

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


加好友 发短信
等级:新手上路 帖子:54 积分:0 威望:0 精华:0 注册:2015/1/7 8:05:14
  发帖心情 Post By:2015/1/28 10:50:22 [只看该作者]

刚才再试了一下,还是那几个问题:1,金死叉是下单相反了,本该下多单的,却下了平多单。2,本来平单后,应该下一手空单,但却没有下空单。麻烦你帮忙看看,谢谢

 回到顶部
美女呀,离线,留言给我吧!
pyd
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2015/1/28 10:56:27 [只看该作者]

条件我刚才是按你上个帖子里的diff和dea写的,没看到你现在改成macd了,这个我一会改下。

1楼你只说买进卖出我就只写了开多平多,你没有说清什么条件开多或开空,请把条件描述清楚

[此贴子已经被作者于2015/1/28 10:59:18编辑过]

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


加好友 发短信
等级:新手上路 帖子:54 积分:0 威望:0 精华:0 注册:2015/1/7 8:05:14
  发帖心情 Post By:2015/1/28 12:50:30 [只看该作者]

只要是死叉就开空单,也就是平多单的时候就接着开空单。如果上手多单还是亏钱,下手空单就加多一手空单,直到把前面的亏损赚回来为止(封顶是五手)。而且,盈利(指当天总盈利)后的下一手单,只开一手单。


意思是:平空和开多是同时的,平多开空也是同时的。只是手数随盈亏增减。(这是日内交易)


谢谢,不知道这样清晰了吗?谢谢

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


加好友 发短信
等级:新手上路 帖子:54 积分:0 威望:0 精华:0 注册:2015/1/7 8:05:14
  发帖心情 Post By:2015/1/29 8:23:19 [只看该作者]

尊敬的老师:
       我还在等着您的回复啦!谢谢谢谢谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 回到顶部
美女呀,离线,留言给我吧!
pyd
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2015/1/29 9:14:53 [只看该作者]

没有专门的工作人员编写求助区的策略,一般是其他区的工作人员抽空编写,如果您急需编写,可以请其他收费人员编写。

 回到顶部
美女呀,离线,留言给我吧!
pyd
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2015/1/29 13:39:04 [只看该作者]

VARIABLE:n=1,盈亏=0;
macd:stkindi('','macd.macd1',0,1);
diff:stkindi('','macd.diff',0,1);
jc:cross(diff,macd);//金叉
sc:cross(macd,diff);//死叉
if date<>ref(date,1) then begin //第二天重置为0重新计算
 n:=1;
 盈亏:=0;
 end
 if n>=5 then n:=5;
 
 if jc and n<=5  THEN begin
sellshort(holding<0,holding,market);
buy(holding=0,n,market);
盈亏:=NUMPROFIT(1)+盈亏;
if 盈亏<0 and n<5 then n:=n+1;
if 盈亏>0 then n:=1;
end

if  sc and n<=5 then BEGIN
sell(holding>0,holding,market);
buyshort(holding=0,n,market);
盈亏:=NUMPROFIT(1)+盈亏;
if 盈亏<0 and n<5 then n:=n+1;
if 盈亏>0 then n:=1;
end

if hhv(h,enterbars+1)-l>=40*mindiff then
 sell(holding>0,holding,market);

if h-llv(l,enterbars+1)>=40*mindiff then 
sellshort(holding<0,holding,market);


 回到顶部