GETTICK问题

Numeric PaiXu(ArrayRef<String> contracts_Temp) { If(BarStatus <> 2) { Return 0; } Integer i_Temp; For i_Temp = 0 To GetArraySize(contracts_Temp) - 1 //冒泡排序 { Integer j_Temp; For j_Temp = 0 To GetArraySize(contracts_Temp) - 2 - i_Temp { CodeProperty props_Temp_1; CodeProperty props_Temp_2; GetProperty(contracts_Temp[j_Temp], props_Temp_1); GetProperty(contracts_Temp[j_Temp + 1], props_Temp_2); If(props_Temp_1.strikePrice > props_Temp_2.strikePrice) { String s_temp = contracts_Temp[j_Temp]; ArrayErase(contracts_Temp, j_Temp, 1); ArrayInsert(contracts_Temp, j_Temp + 1, s_temp); } } } //Print(DateTimeToString(SystemTimestamp)); //Print(sys); //For i_Temp = 0 To GetArraySize(contracts_Temp) - 1 //{ //Print(contracts_Temp[i_Temp]); //} //Print(sys); //Print("还剩 = " + Text(Date_Left) + "个交易日"); //Print(sys); Return 0; } Numeric Options() //获取最近的期权 { If(BarStatus <> 2) { Return 0; } Array<String> contracts; GetSymbolContracts(SymbolType, ExchangeCode, Enum_CategoryOptions, contracts, -1); Numeric K = FindFirstOf(Symbol_Temp, "."); String Str_Temp = Left(Symbol_Temp, K); Numeric i_Temp; ArrayClear(contracts_C); ArrayClear(contracts_P); For i_Temp = 0 To GetArraySize(contracts) - 1 { CodeProperty props; GetProperty(contracts[i_Temp], props); Numeric Date_Temp = GetOffsetTradingDay(SystemDateTime, props.expiredDateTime); If(Date_Temp < 3) { Continue; } Date_Left = Min(Date_Left, Date_Temp); If(Date_Left == Date_Temp) { Date_Last = props.expiredDateTime; } } For i_Temp = 0 To GetArraySize(contracts) - 1 { CodeProperty props; GetProperty(contracts[i_Temp], props); Numeric Date_Temp = GetOffsetTradingDay(SystemDateTime, props.expiredDateTime); If(Date_Temp == Date_Left) { If(props.opType == 1) { ArrayPushBack(contracts_C, contracts[i_Temp]); } If(props.opType == 2) { ArrayPushBack(contracts_P, contracts[i_Temp]); } } } PaiXu(contracts_C); PaiXu(contracts_P); CodeProperty props; GetProperty(contracts_C[0], props); Numeric Numeric_Temp = props.strikePrice; String Str_Temp0 = contracts_C[0]; String Str_Temp1 = StringReplace(Str_Temp0, "-", ""); Symbol_Temp = StringReplace(Str_Temp1, "C" + Text(Numeric_Temp), ""); Return 0; } Numeric XuZhi_N_Dang() //获取平值档位期权 { If(BarStatus <> 2) { Return 0; } GetTick(Symbol_Temp, Tick_Symbol_Temp); //获取期货盘口 Numeric Temp_C = 10 ^ 10; //Numeric Temp_P = 10 ^ 10; Integer i_Temp; For i_Temp = 0 To GetArraySize(contracts_C) - 1 { CodeProperty props; GetProperty(contracts_C[i_Temp], props); Numeric strikePrice_Temp = props.strikePrice; Numeric abs_Temp_C = Abs(strikePrice_Temp - Tick_Symbol_Temp.last); If(Temp_C > abs_Temp_C) { Temp_C = abs_Temp_C; strikePrice_N = props.strikePrice; Symbol_C_N = contracts_C[i_Temp]; //平值看涨 } //Print("strikePrice_N = " + Text(strikePrice_N)); //Print("Tick_Symbol_Temp.last = " + Text(Tick_Symbol_Temp.last)); } For i_Temp = 0 To GetArraySize(contracts_P) - 1 { CodeProperty props; GetProperty(contracts_P[i_Temp], props); Numeric strikePrice_Temp = props.strikePrice; If(strikePrice_Temp == strikePrice_N) { Symbol_P_N = contracts_P[i_Temp]; //平值看跌 } } Return 0; }此时 GetTick(Symbol_C_N, Tick_C_N); 系统运行查看时间需要50-100毫秒不等,请教如何解决这个时延的问题,是函数体内哪里出了问题导致的么,还是交易所TICK发送机制的问题?