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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件交易策略发布专区 → TB的早盘突破公式转金字塔公式

   

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


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

主题:TB的早盘突破公式转金字塔公式

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


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
[求助]金字塔有没有自己的商品指数呀  发帖心情 Post By:2010/3/28 11:52:54 [显示全部帖子]

//TB公式代码如下

Params
        Numeric nMins(30);                // N分钟的突破
    Numeric nOffset(3);                // 突破式的价格偏移
Vars
        NumericSeries HighestOf30Min;
    NumericSeries lowestOf30Min;
    Numeric myPrice;
    Numeric MinPoint;
    Numeric lots(1);
Begin
        MinPoint = MinMove*PriceScale;
        If(Date <> Date[1])
        {
                HighestOf30Min = High;
                lowestOf30Min = Low;
        }Else If(Time < 0.0900+nMins*0.0001)
        {
                HighestOf30Min = max(high,HighestOf30Min[1]);
                lowestOf30Min = min(Low,lowestOf30Min[1]);
        }Else
        {
                HighestOf30Min = HighestOf30Min[1];
                lowestOf30Min = lowestOf30Min[1];
        }
       
        If(High >= HighestOf30Min + nOffset*MinPoint && MarketPosition != 1)
        {
                myPrice = HighestOf30Min + nOffset*MinPoint;
                If(Open > myPrice) myPrice = Open;
                Buy(lots,myPrice);
        }

        If(Low <= lowestOf30Min - nOffset*MinPoint && MarketPosition != -1)
        {
                myPrice = lowestOf30Min - nOffset*MinPoint;
                If(Open < myPrice) myPrice = Open;
                SellShort(lots,myPrice);
        }

        If(Time >= 0.1459)
        {
                Sell(lots,Open);
                BuyToCover(lots,Open);
        }
End

 

/////////////////////////////////////////////////////////////////////////////////////

//下面为金字塔代码 (感谢轮回)


INPUT:NMIN(30,10,60,10);     //设置参数
INPUT:NOFFSET(3,1,20,1);     //设置参数
INPUT:LOTS(1,1,1000,1);      //设置参数
CYC:=BARSLAST(DATE>REF(DATE,1))+1;                                                    //统计日内K线数
HIGHESTOF30MIN:=VALUEWHEN(TIME<=90000+NMIN*100,HHV(H,CYC));        {在从开盘到设定时间(默认参数开盘30分)内保存当天最高价}
LOWESTOF30MIN:=VALUEWHEN(TIME<=90000+NMIN*100,LLV(L,CYC));         {在从开盘到设定时间(默认参数开盘30分)内保存当天最低价}
IF HIGH >= HIGHESTOF30MIN + NOFFSET*MINDIFF AND HOLDING<=0  THEN  {如果最高价突破设定时间内的前高加设定偏移并且目前没有多单,那么}
BEGIN
 MYPRICE: = HIGHESTOF30MIN + NOFFSET*MINDIFF;                                     {预设进场价.既等于设定时间内的前高加设定偏移}
 IF OPEN > MYPRICE THEN                                                                            {如果开盘价大于预设进场价,那么奋不顾身闯进去,(注:这是移植的,原设计并不一定完美,这时可能不是那么好成交的,我也不必多费唇舌了).}
 BEGIN
  MYPRICE: = OPEN;
  SELLSHORT(HOLDING<0,0,LIMITR,MYPRICE);                                                {如果有空单先平}
  BUY(HOLDING=0,LOTS,LIMITR,MYPRICE);                                                     {如果没有多单则以开盘价开多LOTS手}
 END
END
IF LOW <= LOWESTOF30MIN - NOFFSET*MINDIFF AND HOLDING>=0  THEN      {以下开空部分同上,只不过方向相反}
BEGIN
 MYPRICE: = LOWESTOF30MIN - NOFFSET*MINDIFF;
 IF OPEN < MYPRICE THEN
 BEGIN
  MYPRICE: = OPEN;
  SELL(HOLDING>0,0,LIMITR,MYPRICE);
  BUYSHORT(HOLDING=0,LOTS,LIMITR,MYPRICE);
 END
END
IF TIME >= 145900 THEN                                                                                {收盘平仓}
BEGIN
 SELL(HOLDING>0,0,LIMITR,OPEN);
 SELLSHORT(HOLDING<0,0,LIMITR,OPEN);
END

[此贴子已经被作者于2010-3-28 22:19:36编辑过]

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


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/3/28 12:26:22 [显示全部帖子]

测试收益情况不错图片点击可在新窗口打开查看

 


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看


 回到顶部