金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2145|回复: 4

请老师转码后台交易模式,感谢

[复制链接]

75

主题

191

帖子

191

积分

等级: 免费版

注册:
2023-4-11
曾用名:
发表于 2023-4-27 10:43 | 显示全部楼层 |阅读模式
感谢老师的指导,通过学习发现有些逻辑和策略上的应用在图表交易下是不能实行的,现在只能转码到后台交易模式,但这块完全不懂了,代码粘出,还请老师帮忙调整下,万分感谢!

[PEL] 复制代码
input:N(5,1,100,1);
//参数定义
EMA13:=EMA(C,10),COLORWHITE;  
X1:=(C+L+H)/3; 
X2:=EMA(X1,5); 
X3:=EMA(X2,4); 
STICKLINE(X2>X3 AND C>EMA13,LOW,HIGH,2.2,0),COLORRED; 
STICKLINE(X2>X3 AND C>EMA13,CLOSE,OPEN,2.2,0),COLORRED; 
STICKLINE(X2<X3 AND C<EMA13,LOW,HIGH,2.2,0),COLORFFFF52;
STICKLINE(X2<X3 AND C<EMA13,CLOSE,OPEN,2.2,0),COLORFFFF52;
DK:=STKINDI('','AA.DK',0,1) AND HOLDING>=0;
KK:=STKINDI('','AA.KK',0,1) AND HOLDING<=0;
 

  
//多单开仓模块****************************************************************************** 
//开多单
  IF REF(DK,1) AND HOLDING=0 THEN BEGIN  //[color=#ff0000]这里按老师提示,采用前一根K线做信号判断方式,请问老师这样编写是否正确?开仓限定为1手,且不允许加仓[/color]
   多开:BUY(1,1,LIMIT,c);
  END

 //多单止损
   IF AVGENTERPRICE-C>15*MINDIFF AND HOLDING>0 THEN BEGIN
   多单固定止损:SELL(1,HOLDING,MARKET);
END


DRAWICON(HOLDING=1,c,1);
DRAWICON(HOLDING>1,c,5);

//多单移动止盈模块****************************************************************************** 
variable:maxprofit=0;//有仓位时最大获利幅度
input:N(5,1,100,1);

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

//多单更新记录的部分
if holding > 0 and enterbars > 0 and win>30*MINDIFF then
begin
  win:=(c-AVGENTERPRICE)/enterprice*100; //记录最大盈利
  if win>maxprofit then
    maxprofit:=win;

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


//出现最高盈利后,回落到盈利的N%平仓出场.
多移动止赢:SELL(win2 >= 90 and openprofit > 0, 0,limit,c);

//**********************************************************************************************************************************
//**********************************************************************************************************************************


//空单开仓模块****************************************************************************** 
//开空单
  IF REF(KK,1) AND HOLDING=0 THEN BEGIN //[color=#ff0000]这里按老师提示,采用前一根K线做信号判断方式,请问老师这样编写是否正确?[/color][color=#ff00]开仓限定为1手,且不允许加仓[/color]
   空开:BUYSHORT(1,1,LIMIT,c);
  END

 //空单止损
  IF C-AVGENTERPRICE>15*MINDIFF AND HOLDING<0 THEN BEGIN
  空单固定止损:SELLSHORT(1,HOLDING,MARKET);
END

DRAWICON(HOLDING=-1,c,1);
DRAWICON(HOLDING<-1,c,5);


//空单移动止盈模块****************************************************************************** 
variable:maxprofit=0;//有仓位时最大获利幅度
input:N(5,1,100,1);

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

//空单更新记录的部分
if holding < 0 and enterbars > 0 and win>30*mindiff then
begin
  win:=(AVGENTERPRICE-c)/enterprice*100; //记录最大盈利
  if win > maxprofit then
    maxprofit:=win;

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

空移动止盈:SELLshort(win2 >= 90 and openprofit > 0, 0,limit,c);

持仓:HOLDING,COLORRED,NODRAW;

回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-4-27 11:21 | 显示全部楼层
[PEL] 复制代码
input:n(5,1,100,1);
//参数定义
ema13:=ema(c,10),colorwhite;  
x1:=(c+l+h)/3; 
x2:=ema(x1,5); 
x3:=ema(x2,4); 


多可用:tbuyholdingex('','',1);
空可用:tsellholdingex('','',1);
多均价:tavgenterpriceex2('','',0);
空均价:tavgenterpriceex2('','',1);
dk:=stkindi('','aa.dk',0,1) and  多可用>=0;
kk:=stkindi('','aa.kk',0,1) and 空可用<=0;
    

//开多单
  if ref(dk,1) and 多可用=0 then begin  
   多开:tbuy(1,1,lmt,c);
  end
 
 //多单止损
   if 多均价-c>15*mindiff and 多可用>0 then begin
   多单固定止损:tsell(1,0,mkt);
end
 
 
//开空单
  if ref(kk,1) and 空可用=0 then begin 
   空开:tbuyshort(1,1,lmt,c);
  end
 
 //空单止损
  if c-空均价>15*mindiff and 空可用>0 then begin
  空单固定止损:tsellshort(1,0,mkt);
end 


str1:=STKLABEL+'_H';
str2:=STKLABEL+'_L';



//初始化全局变量
IF TBUYHOLDINGEX( '','' ,0 )>0 AND EXTGBDATA(str1 )=0 THEN BEGIN
EXTGBDATASET(str1,1 );
END

//监控开始后的最高价
IF DYNAINFO(  7)>EXTGBDATA(str1 ) and EXTGBDATA(str1 )>0 THEN BEGIN
EXTGBDATASET(str1,DYNAINFO(  7));
END

//发现盈利回撤90% 执行平仓,将全局变量赋值为0表示移动止损动作完成
dyk:DYNAINFO(  7)-多均价;
maxpro1:EXTGBDATA(str1)-多均价;

IF (maxpro1-dyk)/maxpro1>=0.9 and EXTGBDATA(str1 )>0 THEN BEGIN
TSELL(1,1,MKT );
EXTGBDATASET( str1,0);
END



//空头部分
IF TSELLHOLDINGEX( '','' ,0 )>0 AND EXTGBDATA(str2)=0 THEN BEGIN
EXTGBDATASET( str2,1 );
END


IF DYNAINFO(  7)<EXTGBDATA(str2) and EXTGBDATA(str2 )>0 THEN BEGIN
EXTGBDATASET( str2,DYNAINFO(  7));
END

kyk:空均价-DYNAINFO(  7);
maxpro2:空均价-EXTGBDATA(str1);

IF  (maxpro2-kyk)/maxpro2>=0.9 and EXTGBDATA(str2 )>0 THEN BEGIN
TSELL(1,1,MKT );
EXTGBDATASET(str2,0);
END



 

 


 


金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

75

主题

191

帖子

191

积分

等级: 免费版

注册:
2023-4-11
曾用名:
 楼主| 发表于 2023-4-27 17:02 | 显示全部楼层
技术009 发表于 2023-4-27 11:21
[mw_shl_code=pel,true]input:n(5,1,100,1);
//参数定义
ema13:=ema(c,10),colorwhite;  

老师,经运行发现开仓信号正常,并且能够开进单子,现在是平仓策略的止盈部份没有任何反应,不知道具体什么原因,盈利回撤90%到10%都试过了,还是不会触发止盈。
另外止盈需要有一个前置条件:盈利达到10*MINDIFFE后,再启用止盈监测。

感谢,感谢!
回复

使用道具 举报

38

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2023-4-27 17:11 | 显示全部楼层
看着应该没问题啊,你试试看用debugfile输出下这个最大盈利和当前盈利看下数值是否准确

//发现盈利回撤90% 执行平仓,将全局变量赋值为0表示移动止损动作完成
dyk:DYNAINFO(  7)-多均价;
maxpro1:EXTGBDATA(str1)-多均价;
DEBUGFILE('D:\TEST.TXT','当前最大盈利为%.2f',maxpro1);
DEBUGFILE('D:\TEST.TXT','当前盈利为%.2f',dyk);
DEBUGFILE('D:\TEST.TXT','当前回撤为%.2f',(maxpro1-dyk)/maxpro1);
IF (maxpro1-dyk)/maxpro1>=0.9 and EXTGBDATA(str1 )>0 THEN BEGIN
TSELL(1,1,MKT );
EXTGBDATASET( str1,0);
END
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

38

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2023-4-27 17:14 | 显示全部楼层
//发现盈利回撤90% 执行平仓,将全局变量赋值为0表示移动止损动作完成
dyk:DYNAINFO(  7)-多均价;
maxpro1:EXTGBDATA(str1)-多均价;
DEBUGFILE('D:\TEST.TXT','当前最大盈利为%.2f',maxpro1);
DEBUGFILE('D:\TEST.TXT','当前盈利为%.2f',dyk);
DEBUGFILE('D:\TEST.TXT','当前回撤为%.2f',(maxpro1-dyk)/maxpro1);
//这里10个点是要求当前盈利满足,还是最大盈利满足过,如果是最大盈利就把dyk>10改成maxpro1>10*mindiff
IF (maxpro1-dyk)/maxpro1>=0.9 and EXTGBDATA(str1 )>0 and dyk>10*mindiff THEN BEGIN
TSELL(1,1,MKT );
EXTGBDATASET( str1,0);
END
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-11 07:24 , Processed in 0.189131 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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