人人爽天天爽夜夜爽qc-人人爽天天爽夜夜爽曰-人人天天爱天天做天天摸-人人天天夜夜-色网站在线-色网站在线看

您現在的位置:程序化交易>> 期貨公式>> 金字塔等>> 金字塔知識>>正文內容

DrawLine為什么不劃線? [金字塔]

  • 咨詢內容: 以下代碼,在if條件滿足時,如何在左峰跟右峰的最高點之間畫線呢,這時候什么ref,hhv之類的函數都不能用了,很困惑。

    代碼如下:

    variable:lastPeakLow:=0;
    variable:lastPeakHigh:=0,lastPeakIndex:=0,lastPeakBreak:=0;
    //右峰數據
    lPeakLow:=Ref(Low,1);
    lPeakHigh:=Ref(High,1);
    //上一根K線是5根K線中的最高點,等待突破
    lastPeak:=REF(H,1)=HHV(H,左腿長);
    if lastPeak then BEGIN
         lastPeakBreak:=0;
         lastPeakIndex:=BARPOS-1;
         lastPeakLow:=lPeakLow;
         lastPeakHigh:=lPeakHigh;
         //DrawIcon(1, lastPeakHigh, 1);
    end;

     
    //尋找左峰,先記錄左峰數據:
    //尋找峰谷距離內的最高點
    prePeakHigh:=HHV(H,峰谷最寬);
    //最高點與當前峰的距離
    prePeakDist:=HHVBARS(H,峰谷最寬);
    //最高點K線的橫坐標
    prePeakIndex:=BARSCOUNT(c)-prePeakDist;
    //雙峰間的最低點
    preLow:=LLV(L,BARSCOUNT(c)-prePeakIndex);
    //判斷最高點是否為一個峰,即:該K線的最高點是5根K線中最高的,最低點不是5根中最低的
    prePeak:=REF(H,prePeakDist)=HHV(Ref(H,prePeakDist),左腿長);// and REF(L,prePeakDist)!=LLV(Ref(L,prePeakDist),左腿長);
    //如果不成立,則清除最高點數據,不記錄為左峰
    //成立,則計算雙峰相關數據
    if prePeak=0 then prePeakCount:=0;
    else
    //右峰必須達到的最低點
    highLimit:=preLow+(prePeakHigh-preLow)*0.8;

    //右峰突破時,記錄lastPeak信息
    if lastPeakBreak=0 and Low<lastPeakLow then begin
        //DRAWICON(1, lastPeakHigh, 5);
        //DRAWNumber(1, lastPeakHigh+20, lastPeakIndex, 7);
        //DRAWNumber(1, lastPeakHigh+30, lastPeakLow, 2);
        //DRAWNumber(1, lastPeakHigh+20, lastPeakHigh, 2);
        //突破成立lastPeak時,比較lastPeak和prePeak,看看是不是一個M?
        //是M,則標記,不是,直接記錄lastPeak為prePeak

        if prePeakHigh!=0 and lastPeakIndex-prePeakCount<峰谷最寬 and lastPeakIndex-prePeakCount>峰谷最窄
        and lastPeakHigh<=prePeakHigh and lastPeakHigh>highLimit then begin
            DRAWICON(1, lastPeakLow, 5);
            DRAWTEXT(1, lastPeakHigh+100, '上一個高點:'+numtostr(prePeakHigh,0)+';當前高點:'+numtostr(lastPeakHigh,0),colorgreen);
            DrawText(1, lastPeakHigh+200,'最低點:'+numtostr(preLow,0), COLORYELLOW);
            DrawText(1, lastPeakHigh+300,'上一個高點距離:'+numtostr(lastPeakIndex-prePeakCount,0),COLORWHITE);
            DRAWLINE(barpos=prePeakIndex,prePeakHigh,barpos=lastPeakIndex,lastPeakHigh,1);
        end;
        else begin
            prePeakHigh:=lastPeakHigh;
            prePeakLow:=lastPeakLow;
            prePeakCount:=lastPeakIndex;
        end;
        lastPeakBreak:=1;       
    end;


    個人分析,運行到if中的時候,barpos已經不可能再等于左峰的barscount了,所以系統找不到對應K線。
    那究竟如何畫呢?
    另外,如何使用Peak函數呢,有沒有簡便一點的方法來實現這樣一個邏輯:
    如果某一個K線,是5根K線中最高的,則當其低點被突破時,尋找左峰(上一個峰),如果存在一個左峰,則產生交易。
    (換句話來說,就是捕捉一個M形態。當一個M形態的右峰最高K線的低點被突破時,產生交易)
    [此貼子已經被作者于2013/10/5 18:26:38編輯過]

     

  • 金字塔客服: 左腿長,峰谷最寬,峰谷最窄,這3個是什么?

     

  • 用戶回復: 這個是預設參數左腿長:4峰谷最寬:20峰谷最窄:4

     

  • 網友回復:

    最后加這么一句

    DRAWLINE(REF(H,prePeakDist)=HHV(Ref(H,prePeakDist),左腿長),prePeakHigh,REF(H,1)=HHV(H,左腿長),lastPeakHigh,0);

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 1145508240  有需要幫忙請點擊這里留言?。?!進行 有償 編寫!不貴!點擊查看價格!


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 级毛片久久久毛片精品毛片 | 国产欧美一级片 | 老司机日日摸夜夜摸精品影院 | 看黄网址在线观看 | 久久午夜免费视频 | 国产免费成人在线视频 | 一个人看的免费高清视频www | 久久综合偷偷噜噜噜色 | 日本在线视频二区 | 57pao国产成视频免费播放 | 欧美成亚洲 | 91在线公开视频 | 国产麻豆精品高清在线播放 | 中文字幕一区二区三区四区 | 免费人成网站免费看视频 | 国产专区在线 | 国产一区曰韩二区欧美三区 | 爆操在线 | 日本看片网址 | 国产一级aaa全黄毛片 | 91看片淫黄大片欧美看国产片 | 免费鲁丝片一级在线观看 | 亚洲日本欧美在线 | 欧美视频在线观看一区 | 国产情精品嫩草影院88av | 2018天天爽天天玩天天拍 | 一区视频免费观看 | 日韩一级二级三级 | 在线一级视频 | 黄色片一级毛片 | 免费观看黄a一级视频日本 免费观看黄a一级视频 | 欧美精品免费在线 | 成人免费看黄 | 国产成人精品一区二区免费 | 成人久久18免费网站 | 亚洲日本久久一区二区va | 国产免费黄色 | 久久精品伊人波多野结 | 色图综合 | 亚洲一区二区免费在线观看 | 成人看片黄a在线观看 |