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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 麻烦客服帮我把一个简单的均线模型改为金字塔的

   

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


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

主题:麻烦客服帮我把一个简单的均线模型改为金字塔的

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


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/12/15 14:42:03
麻烦客服帮我把一个简单的均线模型改为金字塔的  发帖心情 Post By:2016/12/21 15:24:54    Post IP:112.193.42.254[只看该作者]

麻烦客服帮我把一个简单的均线模型改为金字塔的

//------------------------------------------------------------------------
// 简称:DualMA
// 名称:双均线交易系统
// 类别: 交易指令
// 类型: 用户应用
//------------------------------------------------------------------------
Params
 Numeric FastLength(3);  //短周期
 Numeric SlowLength(10);  //长周期
  
 Numeric StopPoint(30);  //止损点
 Numeric WinPoint(100);   //止赢点
 
 Numeric FlostStopStartPoint(50);   //浮动止损启动条件
 Numeric FlostStopPoint(20);   //浮动止损点
 
 Numeric TradeUint(5); //每次交易手数
 
Vars
 NumericSeries AvgValue1;
 NumericSeries AvgValue2;
 BoolSeries bCrossOver(false);
 BoolSeries bCrossDn(False);
Begin
 AvgValue1 = AverageFC(CLOSE,FastLength);
 AvgValue2 = AverageFC(CLOSE,SlowLength);
 PlotNumeric("MA1",AvgValue1);
 PlotNumeric("MA2",AvgValue2);
 
 
  
 bCrossOver = CrossOver(AvgValue1,AvgValue2);
 bCrossDn   = CrossUnder(AvgValue1,AvgValue2);
 
 //均线交叉时开仓
 if(bCrossOver[1])
 {
  if(MarketPosition != 1)
   Buy(TradeUint,Open);
  
 }
 Else if(bCrossDn[1])
 {
  if(MarketPosition != -1)
   SellShort(TradeUint,Open);
 }
 
 //止盈止损
 SetWinPoint(WinPoint);
 //止损点
 SetStopPoint(StopPoint);
 //浮动止损
 SetFloatStopPoint(FlostStopStartPoint,FlostStopPoint);
 
 PlotNumeric("Assets",Available+PositionProfit+Margin);
 SetOwnAxis("Assets");
End


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/12/21 15:29:32    Post IP:180.169.30.6[只看该作者]

麻烦每句话都注释一下


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/12/15 14:42:03
  发帖心情 Post By:2016/12/21 15:55:45    Post IP:112.193.42.254[只看该作者]

麻烦客服帮我把一个简单的均线模型改为金字塔的

//------------------------------------------------------------------------
// 简称:DualMA
// 名称:双均线交易系统
// 类别: 交易指令
// 类型: 用户应用
//------------------------------------------------------------------------
Params //参数
Numeric FastLength(3); //短周期
Numeric SlowLength(10); //长周期

Numeric StopPoint(30); //止损点
Numeric WinPoint(100); //止赢点

Numeric FlostStopStartPoint(50); //浮动止损启动条件
Numeric FlostStopPoint(20); //浮动止损点

Numeric TradeUint(5); //每次交易手数

Vars 变量
NumericSeries AvgValue1; 平均线
NumericSeries AvgValue2;平均线
BoolSeries bCrossOver(false);是否上穿
BoolSeries bCrossDn(False);是否下穿
Begin开始
AvgValue1 = AverageFC(CLOSE,FastLength);
AvgValue2 = AverageFC(CLOSE,SlowLength);
PlotNumeric("MA1",AvgValue1);
PlotNumeric("MA2",AvgValue2);绘制均线



bCrossOver = CrossOver(AvgValue1,AvgValue2);判断是否上穿
bCrossDn = CrossUnder(AvgValue1,AvgValue2);判断是否下穿

//均线交叉时开仓
if(bCrossOver[1])
{
if(MarketPosition != 1)
Buy(TradeUint,Open);上穿买入开仓

}
Else if(bCrossDn[1])
{
if(MarketPosition != -1)
SellShort(TradeUint,Open);下穿卖出开仓
}

//止盈止损
SetWinPoint(WinPoint);达到止盈点平仓
//止损点
SetStopPoint(StopPoint);达到止损点平仓
//浮动止损
SetFloatStopPoint(FlostStopStartPoint,FlostStopPoint);达到浮动止损平仓

PlotNumeric("Assets",Available+PositionProfit+Margin);
SetOwnAxis("Assets");
End


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


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/12/15 14:42:03
  发帖心情 Post By:2016/12/21 16:03:55    Post IP:112.193.42.254[只看该作者]

PlotNumeric("Assets",Available+PositionProfit+Margin);
SetOwnAxis("Assets");绘制资产曲线

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/12/21 16:04:51    Post IP:180.169.30.6[只看该作者]

//Numeric FastLength(3); //短周期
//Numeric SlowLength(10); //长周期
fastlength:=3;
slowlength:=10;
//Numeric StopPoint(30); //止损点
//Numeric WinPoint(100); //止赢点
stoppoint:=30;
winpoint:=100;
//Numeric FlostStopStartPoint(50); //浮动止损启动条件
//Numeric FlostStopPoint(20); //浮动止损点
floststopstartpoint:=50;
floststoppoint:=20;

//Numeric TradeUint(5); //每次交易手数
tradernint:=5;
//Vars 变量
//NumericSeries AvgValue1; 平均线
//NumericSeries AvgValue2;平均线
//BoolSeries bCrossOver(false);是否上穿
//BoolSeries bCrossDn(False);是否下穿
//Begin开始
AvgValue1:  ma(CLOSE,FastLength),linethick3;
AvgValue2:  ma(CLOSE,SlowLength),linethick3;
//PlotNumeric("MA1",AvgValue1);
//PlotNumeric("MA2",AvgValue2);绘制均线
bCrossOver: = Cross(AvgValue1,AvgValue2);//判断是否上穿
bCrossDn: = Cross(AvgValue2,AvgValue1);//判断是否下穿

//均线交叉时开仓
//if(bCrossOver[1])
{
if(MarketPosition != 1)
Buy(TradeUint,Open);上穿买入开仓

}
//Else if(bCrossDn[1])
{
if(MarketPosition != -1)
SellShort(TradeUint,Open);下穿卖出开仓
}
if bcrossover then buy(holding=0,5,marketr);
if bcrossdn then buyshort(holding=0,5,marketr);

if c-enterprice>100 then sell(1,0,marketr);
if enterprice-c>100 then sellshort(1,0,marketr);

if enterprice-c>30 then sell(1,0,marketr);
if c-enterprice>30 then sellshort(1,0,marketr);

if hhv(h,enterbars+1)>enterprice+50 and c<hhv(h,enterbars+1)-20 then sell(1,0,marketr);
if llv(l,enterbars+1)<enterprice-50 and c>llv(l,enterbars+1)+20 then sellshort(1,0,marketr);

 



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:11 积分:0 威望:0 精华:0 注册:2016/12/15 14:42:03
  发帖心情 Post By:2016/12/22 9:12:20    Post IP:182.139.29.232[只看该作者]

均线交叉平仓同时反向开仓怎么写?


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/12/22 9:18:19    Post IP:180.169.30.6[只看该作者]

if bcrossover then buy(holding=0,5,marketr);
if bcrossdn then buyshort(holding=0,5,marketr);

改为:

 

if bcrossover then begin

   sellshort(1,0,marketr);

   buy(holding=0,5,marketr);

end
if bcrossdn then begin

   sell(1,0,marketr);

   buyshort(holding=0,5,marketr);

end



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部