金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
12
返回列表 发新帖
楼主: 先生

帮忙写个回调交易系统指标谢谢

[复制链接]

10

主题

66

帖子

66

积分

等级: 免费版

注册:
2021-7-23
曾用名:
 楼主| 发表于 2022-1-11 23:17 | 显示全部楼层
技术006 发表于 2022-1-11 22:32
不要看图说话,请给出具体量化描述定义条件。

就是趋势由空转多后超过5条K线回调到均线价格就开仓 不要按收盘价  只要是回调到均线价格就开仓
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-1-12 09:07 | 显示全部楼层
[PEL] 复制代码
INPUT:N(100,1,600,1);
emaN:EMA(C,N);
 
kd:cross(emaN,l) and ref(all(c>emaN,5),1);
kk:cross(h,emaN) and ref(all(c<emaN,5),1);
 
IF C-AVGENTERPRICE>20*MINDIFF THEN BEGIN
空止损:SELLSHORT(1,HOLDING,MARKET);
END
 
IF AVGENTERPRICE-C>20*MINDIFF THEN BEGIN
多止损:SELL(1,HOLDING,MARKET);
END
 
duomaxProfit:=HHV(H,ENTERBARS+1)-AVGENTERPRICE;
kongmaxProfit:=AVGENTERPRICE-LLV(L,ENTERBARS+1);
 
 
if duomaxProfit>=20*MINDIFF and (HHV(H,ENTERBARS+1)-c)>=15*MINDIFF then 多移动:SELL(1,holding,MARKET);
if kongmaxProfit>=20*MINDIFF and (c-LLV(L,ENTERBARS+1))>=15*MINDIFF then 空移动:SELLSHORT(1,holding,MARKET);
 
 
buy(kd and holding=0,1,market);
buyshort(kk and holding=0,1,market);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

10

主题

66

帖子

66

积分

等级: 免费版

注册:
2021-7-23
曾用名:
 楼主| 发表于 2022-1-12 13:42 | 显示全部楼层
技术009 发表于 2022-1-12 09:07
[mw_shl_code=pel,true]INPUT:N(100,1,600,1);
emaN:EMA(C,N);

能不能帮我改下止损止盈代码 如下:当出现开仓后,开仓价格相比,最大损失超过5%止损

当出现盈利后,记录最大盈利。与最大盈利价格相比,回落到60%幅度后止赢离场。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-1-12 13:46 | 显示全部楼层
可以参考这个范例自行尝试修改下:
https://www.weistock.com/bbs/for ... thread&tid=2058
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

10

主题

66

帖子

66

积分

等级: 免费版

注册:
2021-7-23
曾用名:
 楼主| 发表于 2022-1-12 13:54 | 显示全部楼层
技术009 发表于 2022-1-12 13:46
可以参考这个范例自行尝试修改下:
https://www.weistock.com/bbs/forum.php?mod=viewthread&tid=2058

谢谢
回复

使用道具 举报

10

主题

66

帖子

66

积分

等级: 免费版

注册:
2021-7-23
曾用名:
 楼主| 发表于 2022-1-12 20:58 | 显示全部楼层
技术009 发表于 2022-1-12 13:46
可以参考这个范例自行尝试修改下:
https://www.weistock.com/bbs/forum.php?mod=viewthread&tid=2058

自己改了老半天 系统提示都是错的,能在帮我改下吗。
回复

使用道具 举报

37

主题

9933

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-1-13 02:11 | 显示全部楼层
贴出你修改后的代码,我们看下错在哪里
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

10

主题

66

帖子

66

积分

等级: 免费版

注册:
2021-7-23
曾用名:
 楼主| 发表于 2022-1-13 12:30 | 显示全部楼层
技术006 发表于 2022-1-13 02:11
贴出你修改后的代码,我们看下错在哪里

INPUT:N(100,1,600,1);
emaN:EMA(C,N);
  
kd:cross(emaN,l) and ref(all(c>emaN,5),1);
kk:cross(h,emaN) and ref(all(c<emaN,5),1);

buy(kd and holding=0,1,market);
buyshort(kk and holding=0,1,market);

//平仓
SELL(CROSS(emaN,l),0,limit,c);
SELLSHORT(CROSS(h,emaN),0,limit,c);

//判断当前持仓状态下的最大盈利
win:=0;
win2:=0;
if holding > 0 and enterbars > 0 then
begin
  win:=(c-enterprice)/enterprice*100; //记录最大盈利
  if win>emaN,l then
   emaN,l:=win;

  win:=(emaN,l-win)/emaN,l*100; //最大盈利后的回调幅度
end
if holding < 0 and enterbars > 0 then
begin
  win2:=(enterprice-c)/enterprice*100; //记录最大盈利
  if win2 >h,emaN then
    h,emaN:=win2;

win2:=(h,emaN-win)/h,emaN*100; //最大盈利后的回调幅度
end
//出现浮动亏损比如2%平仓
多止损:SELL(win < -2,0,limit,c);
空止损:SELLSHORT(win2 < -2,0,limit,c);

//出现最高盈利后,回落到盈利的60%平仓出场
多止赢:SELL(win >= 60 and openprofit > 0, 0,limit,c);
空止赢:SELLSHORT(win2 >= 60 and openprofit > 0, 0,limit,c);
001.png
变成这样 没有开空  而且也没有止损跟止盈出来    哎
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-1-13 13:47 | 显示全部楼层
本帖最后由 技术009 于 2022-1-13 13:53 编辑

[PEL] 复制代码
variable:maxprofit=0;//有仓位时最大获利幅度

INPUT:N(100,1,600,1);
emaN:EMA(C,N);

kd:cross(emaN,l) and ref(all(c>emaN,5),1),NODRAW;
kk:cross(h,emaN) and ref(all(c<emaN,5),1),NODRAW;


buy(kd and holding=0,1,market);
buyshort(kk and holding=0,1,market);

if holding<>0 then  maxprofit:=0;

//判断当前持仓状态下的最大盈利
win:=0;
win2:=0;

if holding > 0 and enterbars > 0 then
begin
  win:=(c-enterprice)/enterprice*100; //记录最大盈利
  if win>maxprofit then
    maxprofit:=win; 

  win2:=(maxprofit-win)/maxprofit*100; //最大盈利后的回调幅度
end

if holding < 0 and enterbars > 0 then
begin
  win:=(enterprice-c)/enterprice*100; //记录最大盈利
  if win > maxprofit then
    maxprofit:=win;

win2:=(maxprofit-win)/maxprofit*100; //最大盈利后的回调幅度
end

//出现浮动亏损比如2%平仓
多止损:SELL(win < -2,0,limitr,c);
空止损:SELLSHORT(win< -2,0,limitr,c);

//出现最高盈利后,回落到盈利的60%平仓出场
多止赢:SELL(win2 >= 60 and openprofit > 0, 0,limitr,c);
空止赢:SELLSHORT(win2 >= 60 and openprofit > 0, 0,limitr,c);

持仓:holding,NODRAW;
浮动盈亏:openprofit,NODRAW;
回撤幅度:win2,NODRAW;;
最大盈利百分比:maxprofit,NODRAW;

你自行添加的出场语句删除了(非盈亏相关),因为那个条件你平仓条件完全是和开仓是有重合的,不合理。
建议仔细理清代码逻辑 再进行调整。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

10

主题

66

帖子

66

积分

等级: 免费版

注册:
2021-7-23
曾用名:
 楼主| 发表于 2022-1-13 22:03 | 显示全部楼层
技术009 发表于 2022-1-13 13:47
[mw_shl_code=pel,true]
variable:maxprofit=0;//有仓位时最大获利幅度

出现最高盈利后,回落到盈利的60%平仓出场 如果没有设置时间的话就会在一根或者两根k线上回落而结束。请问这个要怎么解决才能让行情多跑呢 ? 002.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-5-24 20:30 , Processed in 0.144594 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表