开拓者期货期权程序化系统交易论坛

标题: 如何理解下列语句 [打印本页]

作者: 文韦    时间: 2010-10-17 20:09:58     标题: 如何理解下列语句

If(day!=day)
if(day!=Day[1])
if (date<>date[1])
If(Date!=Date[1]
if(day != today)
请教如何理解上面5句?有哪些区别?
作者: lh948    时间: 2010-10-18 09:09:26

Day[1]是上一个bar的day数据
date[1]是上一个bar的date数据
<>和!=都是不等于的意思
if(day!=Day[1])和if(date<>date[1])是用当前bar的数据和上一根bar的数据进行比较,作用是区分是否是新的一天的bar
If(day!=day)这个是没有意义的
if(day != today)today不是系统函数,应该是用户自定义的变量或者其他
作者: 文韦    时间: 2010-10-18 09:59:53

2# lh948

谢谢!
1、那么如何理解 (date<>date[1])和(day<>Day[1])的区别呢?
2、在分钟图上有时要判断当前bar是否为今天,如果我在日线上操作,是否还需要用到(day<>Day[1])呢?
3、另外编写了个交易指令,今天同一时间不停发单直至满仓,提示资金不足,能否帮忙看看哪里有问题?(在日线图上操作的)
代码如下:
Vars
        Numeric  N;  // 波幅
        Numeric  myentryprice;   // 开仓价格
        NumericSeries Line1;
        NumericSeries Line2;
Begin      
        N=High[1]-Low[1];
        Line1 = Open+N*0.2;
        Line2 = Open-N*0.2;
               
if( date!=date[1] || barstatus==0)       
{GetGlobalVar(0)==0;}

If(CurrentTime < 0.144500)  // 时间在14:45之前
{
        If(MarketPosition == 0 )
        {
          if(CrossOver(High,Line1))
         {
          myentryprice=Line1+1;               
         A_SendOrder (Enum_Buy,Enum_Entry,1, myentryprice);
          }
          setglobalvar(0,1);
         Return;
                  
         if(CrossUnder(Low,Line2))
              {
         myentryprice=Line2-1;               
        A_SendOrder (Enum_Sell,Enum_Entry,1, myentryprice);
        setglobalvar(0,1);
        Return;
        }
        }
}


        If(MarketPosition == 1 And Close < Low) // 多仓的止损
        {
        A_SendOrder (Enum_Sell,Enum_Exit,0, Low);
        }
               
        If(MarketPosition == -1 And Close > High) // 空仓的止损
        {
        A_SendOrder (Enum_Buy,Enum_Exit,0, High);
        }
               

If(CurrentTime > 0.145500) // 时间在14:55之后
{
        If(MarketPosition == 1)
        {
        A_SendOrder (Enum_Sell,Enum_Exit,0, Low);
        }
               
        Else
        {
        If(MarketPosition == -1)
        {
        A_SendOrder (Enum_Buy,Enum_Exit,0, High);
        }
        }
}

End
[attach]3985[/attach]
今天棕榈油开盘上涨超过8210点,满足条件后就不停发单,只好手动平掉,取消自动了。
作者: zhou87li87    时间: 2018-5-28 15:57:35

A函数是不受MarketPosition控制的




欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2