Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共4 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:【新手上路】报错说缺少分号,我逐行检查过了,每一行都有,想问一下是什么情况

1楼
QuantMe 发表于:2017/6/5 10:49:51
 如题,麻烦帮我看一下问题出在哪里,谢谢!!!!!!!

代码如下:
INPUT : t20( 20 , 15 , 60 , 1 ) ;
INPUT : t10( 10 , 10 , 30 , 1 ) ;
INPUT : atrLen( 20 , 15 , 60 , 1 ) ;


nT := 1 ;
buyOrderThisBar := 0 ;

VARIABLE : _debug := 1 ;
VARIABLE : _tDebug := 1 ;
VARIABLE : _debugOut := 0 ;

VARIABLE : myEntryPrice := 0 ;
VARIABLE : myExitPrice := 0 ;
VARIABLE : turtleUnits := 0 ;
VARIABLE : position := 0 ;
VARIABLE : posNum   := 0 ;

VARIABLE : t20H := CLOSE ;
VARIABLE : t20L := CLOSE ;
VARIABLE : t10H := CLOSE ;
VARIABLE : t10L := CLOSE ;
VARIABLE : onePercentAssest := Asset * 0.01 ;

t20H := REF( HHV( H , t20 ) , 1 ) ;
t20L := REF( LLV( H , t20 ) , 1 ) ;
t10H := REF( HHV( H , t10 ) , 1 ) ;
t10L := REF( LLV( H , t10 ) , 1 ) ;

avgTR := REF( MA( TR , atrLen ) , 1 ) ;

IF BARPOS = 1 THEN BEGIN
    position = 0 ;
END

IF     position = 0     AND     BARPOS > t20     AND     H > L     THEN BEGIN
    LONG := H > t20H ;
    SHORT := L < t20L ;
   
    IF (LONG AND SHORT) THEN BEGIN
    END
    ELSE BEGIN
        IF LONG THEN BEGIN
            myEntryPrice := IF( OPEN > t20H + MINDIFF , OPEN , t20H + MINDIFF ) ;
            posNum          := FLOOR( onePercentAssest / avgTR ) ;
            N             := avgTR ;
            BUY( _debug , posNum , LIMITR , myEntryPrice ) ;
            position     := 1 ;
            turtleUnits  := 1 ;
            buyOrderThisBar := 1 ;
        END
       
        IF SHORT THEN BEGIN
            myEntryPrice := IF( OPEN < t20L - MINDIFF , OPEN , t20L - MINDIFF ) ;
            posNum       := FLOOR( onePercentAssest / avgTR ) ;
            N              := avgTR ;
            BUYSHORT( _debug , posNum , LIMITR , myEntryPrice ) ;
            position     := -1 ;
            turtleUnits  := 1 ;
            buyOrderThisBar    := 1 ;
        END
    END
END
2楼
QuantMe 发表于:2017/6/5 10:51:08
 
IF position = 1      AND     BARPOS > t20     AND     H > L      THEN BEGIN
    
    WHILE ( H > myEntryPrice + 0.5 * N ) AND ( turtleUnits < 4 ) DO BEGIN    // 加仓
        myEntryPrice := IF( OPEN > myEntryPrice + 0.5 * N , OPEN , myEntryPrice + 0.5 * N ) ;
        myEntryPrice := CEILING( myEntryPrice / MINDIFF ) * MINDIFF ;
        posNum         := FLOOR( onePercentAssest / N ) ;
        BUY( _debug , posNum , LIMITR , myEntryPrice ) ;
        turtleUnits  := turtleUnits + 1 ;
        buyOrderThisBar := 1 ;
    END
    
    LONGEXIT1 := LOW < t10L ;
    IF LONGEXIT1 AND buyOrderThisBar = 0 THEN BEGIN
        myExitPrice := IF( OPEN < t10L - MINDIFF , OPEN , t10L - MINDIFF ) ;
        SELL( _debug , 0 , LIMITR , myExitPrice ) ;
        position     := 0 ;
        turtleUnits := 0 ;
    END
    
    LONGEXIT2 := LOW < myEntryPrice - 2 * N ;
    IF LONGEXIT2 AND POSITION = 1 AND buyOrderThisBar = 0 THEN BEGIN
        myExitPrice    := IF( OPEN < myEntryPrice - 2 * N , OPEN , myEntryPrice - 2 * N ) ;
        myExitPrice := FLOOR( myExitPrice / MINDIFF ) * MINDIFF ;
        SELL( _debug , 0 , LIMITR , myExitPrice ) ;
        position     := 0 ;
        turtleUnits := 0 ;
    END
    
    
END
ELSE
IF position = -1    AND     BARPOS > t20    AND        H > L     THEN BEGIN

    WHILE  LOW < myEntryPrice - 0.5 * N  AND    BARPOS > t20 AND     H > L DO BEGIN
        myEntryPrice    := IF( OPEN < myEntryPrice - 0.5 * N , OPEN , myEntryPrice - 0.5 * N  ) ;
        myEntryPrice    := FLOOR( MYENTRYPRICE /  MINDIFF ) * MINDIFF ;
        posNum            := FLOOR( onePercentAssest / N ) ;
        BUYSHORT( _debug , posNum , LIMITR , myEntryPrice ) ;
        turtleUnits     := turtleUnits + 1 ;
        buyOrderThisBar    := 1 ;
    END
    
    SHORTEXIT1 := HIGH > t10H ;
    IF SHORTEXIT1     AND buyOrderThisBar = 0 THEN BEGIN
        myExitPrice     := IF( OPEN > t10H + MINDIFF , OPEN , t10H + MINDIFF ) ;
        SELLSHORT(    _debug , 0 , LIMITR , myExitPrice ) ;
        postiion        := 0 ;
        turtleUnits        := 0 ;
    END
    
    SHORTEXIT2 := HIGH > myEntryPrice + 2 * N ;
    IF SHORTEXIT2    AND position = -1    AND buyOrderThisBar = 0 THEN BEGIN
        myExitPrice        := IF( OPEN > myEntryPrice + 2 * N  , OPEN , myEntryPrice + 2 * N  ) ;
        myEntryPrice    := CEILING( myEntryPrice / MINDIFF ) * MINDIFF ;
        SELLSHORT(    _debug , 0 , LIMITR , myExitPrice ) ;
        position         := 0 ;
        turtleUnits        := 0 ;
    END
    
    
END


CONTINUELINE@
资产        : ASSET , LINETHICK0 ;
可用现金    : CASH(0) , LINETHICK0 ;
持仓量        : HOLDING , LINETHICK0 ;
交易次数    : TOTALDAYTRADE , LINETHICK0 ;

IF _DEBUGOUT>0 THEN BEGIN

    DEBUGFILE2('C:\DEBUGFILE.TXT','BARPOS=%.0F' ,BARPOS,NT ) ;
    DEBUGFILE2('C:\DEBUGFILE.TXT','T20HI=%.2F' ,T20HI ,NT) ;
    DEBUGFILE2('C:\DEBUGFILE.TXT','N=%.2F' ,N ,NT) ;
    DEBUGFILE2('C:\DEBUGFILE.TXT','CLOSE=%.2F' ,C ,NT) ;
    DEBUGFILE2('C:\DEBUGFILE.TXT','POSITION=%.0F' ,POSITION,NT ) ;
    DEBUGFILE2('C:\DEBUGFILE.TXT','TURTLEUNITS=%.0F' ,TURTLEUNITS,NT ) ;
    DEBUGFILE2('C:\DEBUGFILE.TXT','MYENTRYPRICE=%.0F' ,MYENTRYPRICE ,NT) ;
    DEBUGFILE2('C:\DEBUGFILE.TXT','MYEXITPRICE=%.0F' ,MYEXITPRICE ,NT) ;
    
END //IF

当前持仓    : HOLDING , COLORGRAY , LINETHICK0 ;
当前资产    : ASSET , NOAXIS , COLORGRAY ;
3楼
pyd 发表于:2017/6/5 12:48:47

这个的问题吧


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

4楼
QuantMe 发表于:2017/6/5 13:02:59
哦哦哦,原来是这样!

我第一次用不太理解这个label,以为放在这里也没有关系。

谢谢啦!!

图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看
共4 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03125 s, 3 queries.