您現在的位置:程序化交易>> 期貨公式>> 文華財經>> 文華財經知識>>正文內容

Def_TickData(CodeName,0,50);的問題 [文華財經]

  • 咨詢內容:

    ?執行語句:data = Def_TickData(CodeName,0,50);
    21:34:55? 開始判斷:IF( data.State == 1) // ,
    21:34:55? data.State == 1表達式:false

    老是出現這樣的情況,這是有些什么原因,運行Def_TickData(CodeName,0,50);后老是取data.State失敗,

    ?

    ?來源:程序化99

  • 文華技術人員: 與您的編寫有關
    您將完整模型發送上來,我們分析一下

    ?

    ?來源: www.tumamayizhan.com

  • 文華客服: ?

    VAR_TICKDATA data;
    VAR N,N1,BPRICE,Lost,Win,CurTime,I,J,Temp,XJ;//BKID1預先掛的止贏委托號,t1時間控制延遲1秒
    GLOBAL_VAR High,BKID,New,Type,Typp,CONQC,xj1,TA11,BD,PH,PL,CC,SHANG,XIA,MA1,MA5,xj5,TA1,xj2,xj3,xj4,junz,T11a,T1a,du2,kong,duo,du,du1,PA2,yk44,YK55,yk6,yk66,Type1,t006,js001,js002,YK1,YK4,YK5,YK6,T10,YK2,YK3,Type2,PA1,BKTIME,KG1,CD0,CD11,SKTIME,PA,BKID1,Yk,T11,T1,CD12,T112,T12,T117,T17,BKID3,BKID4,BKID33,BKID44,BKID333,BKID444,BKID3333,BKID4444,T113,T13,T114,T14,T115,T15,T116,T16,BKID2, Type3,Type4,Type5,Type31,Type30,JS,CD1,CD2,DKJS,DKJS1,KKJS,KKJS1,CD3,Type60,Type61,KP,Typp1,DY0,DY1,DY2,XY1,XY2,TYPP2; //Yk是盈虧情況;type2是止損循環的開關讓他有信號時止循環1次,pa是掛單價,tipp=0表示有倉位,type=1表示有空倉,type1=1表示有多倉,BKTIME, SKTIME開倉時間
    VAR CodeName;


    VOID MAIN()
    {?
    ?? CodeName = "rb1805";
    ?? N = 1; // 下單手數
    ?? N1 = MinPrice(CodeName); //當合約價格最小變動價位
    ?? Lost = 2; //止損3個最小變動價位
    ?? Win = 50 ;//止盈10個最小變動價位
    ?? New = Price(CodeName, "New"); //獲取當前合約最新價
    ? // BPRICE=T_SellAvgPrice(CodeName );//取得持倉欄中該合約多頭持倉均價T_SellAvgPrice( )
    ?

    ??????????????????????????

    ?


    CurTime = CurrentTime(); // 獲取當前時間
    ?? //?? MessageOut(CurTime);
    ?? // 收盤前30秒清倉
    ?? CONQC = ((Hour( CurTime ) == 14 && Minute( CurTime ) == 55 && Second( CurTime ) > 30 )||(Hour( CurTime ) == 14 && Minute( CurTime ) == 57&& Second( CurTime ) > 30 ));//||(Hour( CurTime ) == 22 && Minute( CurTime ) == 56&& Second( CurTime ) > 30 )
    ?
    ??? KP = ((Hour( CurTime ) == 9 && Minute( CurTime ) == 00 && Second( CurTime ) > 01 )||(Hour( CurTime ) == 21 && Minute( CurTime ) == 00&& Second( CurTime ) > 01 ));
    ? IF(KP==1)
    {KG1=0;
    ?Typp = 0;
    ?T_DeleteOrderAll();
    }
    ??? IF( Typp == 0&&(CONQC == 1))
    ?? {
    ?? MessageOut("收盤前30秒清倉");
    ?IF(CD11==1)
    ???????? {?? T_DeleteOrder(BKID);
    ?????? T_DeleteOrder(BKID2);
    ?????? T_DeleteOrder(BKID1);
    ??????? T_DeleteOrder(BKID3);
    ?????? T_DeleteOrder(BKID4);
    ????? T_DeleteOrder(BKID33);
    ?????? T_DeleteOrder(BKID44);
    ?T_DeleteOrder(BKID333);
    ?????? T_DeleteOrder(BKID444);
    ?T_DeleteOrder(BKID3333);
    ?????? T_DeleteOrder(BKID4444);
    ?????????? CD11=0;
    ??????? T_DeleteOrderAll();
    ??????

    ?????? }
    ?????????
    ???????? IF(T115==0)
    ????????????? {
    ?????????????? T15=0;
    ??????????????? T15=CurrentTime();
    ???????????????? T115=1;
    ????
    ?????????????? }

    ???????? IF(CurrentTime()-T15>1)
    ?????? {
    ???????? T115=0;
    ?
    ????
    ??? T_Deal(CodeName,1,2,T_SHBuyPosition(CodeName,0),Offers(CodeName,"bid1")); // T_Deal(CodeName,1,2,T_SHBuyPosition(CodeName ,0),Offers(CodeName,"bid1"));
    ?????? T_Deal(CodeName,0,2,T_SHSellPosition(CodeName,0),Offers(CodeName,"ask1"));
    ????? KG1=0;
    ?? Type = 0;
    ????? Type1 = 0;
    ????? Typp = 1;
    ????? Typp1 = 0;
    ?? }
    }
    ?

    ?

    ? IF(Typp == 0) //CurrentServerTime(CodeName)>Time("9:08:00" )&&New<(T_GetRiseLimit(CodeName)-N1*20)&&New>(T_GetFallLimit(CodeName)+N1*20)&&
    ? {
    ??????? //? IF(T11==0)
    ???????? //???? {T1=CurrentTime();
    ??????????? //???? T11=1;
    ????
    ??????????? //?? }

    ??????? //? IF(CurrentTime()-T1>1)
    ?????? //? {
    ???????? // T11=0;
    ???? data = Def_TickData(CodeName,0,50);
    //MessageOut("xj2"+xj2);
    ??
    //MessageOut("data.Num"+data.Num);

    ?? IF( data.State == 1) // ,
    ?? {
    ?? //空開?
    ???? xj1= data[0].Ask1; // 表示第一筆tick數據的賣一價。
    xj2=data[data.Num-1].Ask1;// 表示最新一筆tick的賣一價。??
    //xj4= data[24].Ask1;???
    ?//? IF( Typp == 0 && CONQC != 1)
    ?//? {
    IF(T11a==0)
    ????????????? {T1a=CurrentTime();
    ???????????????? T11a=1;
    ????
    ?????????????? }

    ????????? IF(CurrentTime()-T1a>600)
    ???????? {
    ????????? T11a=0;
    ????????? xj5=xj1;
    ????????? }
    ???? KG1=KG1+1;
    ??????
    ????????
    ???? junz=(xj1+xj2)/2;
    ?xj3= Offers(CodeName,"ask1");
    ??????
    kong=0;
    duo=0;?
    IF(xj3-junz>2)
    {kong=1;
    //MessageOut("XJ1"+xj1);
    //MessageOut("xj2"+xj2);

    ?

  • 網友回復: 我們這里實際運行看了一下,執行上是沒有問題的
    只不過由于測試的時候該合約沒有今倉,平倉手數為0 ,因此委托失敗。
    如果您螺紋1805有今倉持倉的話,是可以正常平倉的。
    另外,您的模型語法檢查是不通過的,您加載下面的再看一下:
    VAR_TICKDATA data;VAR N,N1,BPRICE,Lost,Win,CurTime,I,J,Temp,XJ;//BKID1預先掛的止贏委托號,t1時間控制延遲1秒GLOBAL_VAR High,BKID,New,Type,Typp,CONQC,xj1,TA11,BD,PH,PL,CC,SHANG,XIA,MA1,MA5,xj5,TA1,xj2,xj3,xj4,junz,T11a,T1a,du2,kong,duo,du,du1,PA2,yk44,YK55,yk6,yk66,Type1,t006,js001,js002,YK1,YK4,YK5,YK6,T10,YK2,YK3,Type2,PA1,BKTIME,KG1,CD0,CD11,SKTIME,PA,BKID1,Yk,T11,T1,CD12,T112,T12,T117,T17,BKID3,BKID4,BKID33,BKID44,BKID333,BKID444,BKID3333,BKID4444,T113,T13,T114,T14,T115,T15,T116,T16,BKID2, Type3,Type4,Type5,Type31,Type30,JS,CD1,CD2,DKJS,DKJS1,KKJS,KKJS1,CD3,Type60,Type61,KP,Typp1,DY0,DY1,DY2,XY1,XY2,TYPP2; //Yk是盈虧情況;type2是止損循環的開關讓他有信號時止循環1次,pa是掛單價,tipp=0表示有倉位,type=1表示有空倉,type1=1表示有多倉,BKTIME, SKTIME開倉時間VAR CodeName;
    VOID MAIN(){ ?? ?CodeName = "rb1805";? ?N = 1; // 下單手數? ?N1 = MinPrice(CodeName); //當合約價格最小變動價位? ?Lost = 2; //止損3個最小變動價位? ?Win = 50 ;//止盈10個最小變動價位? ?New = Price(CodeName, "New"); //獲取當前合約最新價? // BPRICE=T_SellAvgPrice(CodeName );//取得持倉欄中該合約多頭持倉均價T_SellAvgPrice( )?? ? ? ? ? ? ? ? ? ? ? ? ???
    CurTime = CurrentTime(); // 獲取當前時間? ?// ? MessageOut(CurTime);? ?// 收盤前30秒清倉? ?CONQC = ((Hour( CurTime ) == 14 && Minute( CurTime ) == 55 && Second( CurTime ) > 30 )||(Hour( CurTime ) == 14 && Minute( CurTime ) == 57&& Second( CurTime ) > 30 ));//||(Hour( CurTime ) == 22 && Minute( CurTime ) == 56&& Second( CurTime ) > 30 )??? ? KP = ((Hour( CurTime ) == 9 && Minute( CurTime ) == 00 && Second( CurTime ) > 01 )||(Hour( CurTime ) == 21 && Minute( CurTime ) == 00&& Second( CurTime ) > 01 ));? IF(KP==1){KG1=0;?Typp = 0;?T_DeleteOrderAll();}? ? IF( Typp == 0&&(CONQC == 1))? ?{? ?MessageOut("收盤前30秒清倉");?IF(CD11==1)? ? ? ? ?{ ? T_DeleteOrder(BKID);? ? ? ?T_DeleteOrder(BKID2);? ? ? ?T_DeleteOrder(BKID1);? ? ? ? T_DeleteOrder(BKID3);? ? ? ?T_DeleteOrder(BKID4);? ? ? T_DeleteOrder(BKID33);? ? ? ?T_DeleteOrder(BKID44);?T_DeleteOrder(BKID333);? ? ? ?T_DeleteOrder(BKID444);?T_DeleteOrder(BKID3333);? ? ? ?T_DeleteOrder(BKID4444);? ? ? ? ? ?CD11=0;? ? ? ? T_DeleteOrderAll();?? ? ??? ? ? ?}? ? ? ? ??? ? ? ? ?IF(T115==0)? ? ? ? ? ? ? {? ? ? ? ? ? ? ?T15=0;? ? ? ? ? ? ? ? T15=CurrentTime();? ? ? ? ? ? ? ? ?T115=1;? ? ?? ? ? ? ? ? ? ?}? ? ? ? ?IF(CurrentTime()-T15>1)? ? ? ?{? ? ? ? ?T115=0;?? ? ?? ? T_Deal(CodeName,1,2,T_SHBuyPosition(CodeName,0),Offers(CodeName,"bid1")); // T_Deal(CodeName,1,2,T_SHBuyPosition(CodeName ,0),Offers(CodeName,"bid1"));?? ? ? ?T_Deal(CodeName,0,2,T_SHSellPosition(CodeName,0),Offers(CodeName,"ask1"));?? ? ? KG1=0;? ?Type = 0;? ? ? Type1 = 0;? ? ? Typp = 1;? ? ? Typp1 = 0;? ?}}??? IF(Typp == 0) //CurrentServerTime(CodeName)>Time("9:08:00" )&&New<(T_GetRiseLimit(CodeName)-N1*20)&&New>(T_GetFallLimit(CodeName)+N1*20)&&? {? ? ? ? // ?IF(T11==0)? ? ? ? ?// ? ? {T1=CurrentTime();? ? ? ? ? ? // ? ? T11=1;? ? ?? ? ? ? ? ? // ? }? ? ? ? // ?IF(CurrentTime()-T1>1)? ? ? ?// ?{? ? ? ? ?// T11=0;? ? ?data = Def_TickData(CodeName,0,50);//MessageOut("xj2"+xj2);??//MessageOut("data.Num"+data.Num);? ?IF( data.State == 1) // ,? ?{? ?//空開 ?? ? ?xj1= data[0].Ask1; // 表示第一筆tick數據的賣一價。xj2=data[data.Num-1].Ask1;// 表示最新一筆tick的賣一價。 ??//xj4= data[24].Ask1; ? ??// ?IF( Typp == 0 && CONQC != 1)?// ?{IF(T11a==0)? ? ? ? ? ? ? {T1a=CurrentTime();? ? ? ? ? ? ? ? ?T11a=1;? ? ?? ? ? ? ? ? ? ?}? ? ? ? ? IF(CurrentTime()-T1a>600)? ? ? ? ?{? ? ? ? ? T11a=0;? ? ? ? ? xj5=xj1;? ? ? ? ? }? ? ?KG1=KG1+1;?? ? ? ?? ? ? ? ?? ? ?junz=(xj1+xj2)/2;?xj3= Offers(CodeName,"ask1");? ? ? ?kong=0;duo=0; ?IF(xj3-junz>2){kong=1;//MessageOut("XJ1"+xj1);//MessageOut("xj2"+xj2);}}}} ?


    文件名:10.jpg

    ?

  • 網友回復: ?好的謝謝,就是這個?data = Def_TickData(CodeName,0,50);

    IF( data.State == 1) ,
    加載是data.State有是返回1就能一直運行,有時加載后它不返回1就一直不能運行等多長時間都不是1

 

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

可聯系技術人員 QQ: 511411198  點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 97久久香蕉国产线看观看| 久久黄色精品视频| 精品国产亚洲一区二区三区| 国产成人一区二区三区电影网站 | 视频在线一区二区| 国产男女猛视频在线观看| 99re国产视频| 婷婷六月天在线| 国产做无码视频在线观看| 久久只有这里的精品69| 欧美xx性在线| 亚洲成av人片在线观看天堂无码| 男爵夫人的调教| 午夜老司机永久免费看片| 贵州美女一级纯黄大片| 国产日韩一区二区三区在线观看 | 1024视频在线| 国精品无码一区二区三区左线 | freefron性中国国产高清| 成人动漫h在线观看| 久久久久免费看成人影片| 日韩欧美亚洲综合久久| 亚洲av无码成人精品区狼人影院| 一二三四视频免费视频| 三年片韩国在线观看| 99在线免费视频| 国产a免费观看| 精品国产一区二区三区久久狼| 爆乳女仆高潮在线观看| 李宗60集奇奥网全集| 成人精品视频99在线观看免费| 在线免费观看一区二区三区| 国产成人小视频| 亚洲国产另类久久久精品黑人| 波多野结衣在线免费电影| 人妻熟妇乱又伦精品视频| 精品久久久久久无码人妻热 | 日韩在线一区二区三区| 久草视频在线资源站| 校园春色亚洲欧美| 亚洲一二区视频|