int Get_OpenTime_Max() { int i, n, ticket; datetime max=0, x; n = OrdersTotal(); if (n == 0) return(-1); for (i=0; i<n; i++) { if (OrderSelect(i, SELECT_BY_POS) == false) continue; x = OrderOpenTime(); if (x > max) { ticket = OrderTicket(); max = x; } } return(tacket); } int start() { int tacket; double op; tacket = Get_OpenTime_Max(); if (tacket == -1) { Print("错误!没有未平仓的定单。"); return(0); } if (OrderSelect(ticket, SELECT_BY_TICKET) == false) { Print("错误!OrderSelect() fail. errno=", GetLastError()); return(-1); } op = OrderOpenPrice(); Print("最近的未平仓的定单的开仓价格=", DoubleToStr(op, 5)); return(0); }
感谢呀 论坛好人呀 祝你多多赚钱! 多多发财!万事如意呀!
y2k_connect 大师你好! 请问您给出的代码中的第一段程序是什么意思,函数Get_OpenTime_Max() 有何作用呀?请帮我说明一下好吗?因为我把您的这段代码镶嵌到我的程序中,我原来的程序不开仓交易了!请帮助!
hooyisl 写道 >>
y2k_connect 大师你好! 请问您给出的代码中的第一段程序是什么意思,函数Get_OpenTime_Max() 有何作用呀?请帮我说明一下好吗?因为我把您的这段代码镶嵌到我的程序中,我原来的程序不开仓交易了!请帮助!
y2k_connect 大师你好! 请问您给出的代码中的第一段程序是什么意思,函数Get_OpenTime_Max() 有何作用呀?请帮我说明一下好吗?因为我把您的这段代码镶嵌到我的程序中,我原来的程序不开仓交易了!请帮助!
"返回最近的未平仓的定单的开仓价格"
Get_OpenTime_Max()函数比较所有未平定单的开仓时间,返回最近一次开仓的定单编号。
然后在start()中,根据Get_OpenTime_Max()返回结果,取定单的开仓价格。最后用Print()打印“返回最近的未平仓的定单的开仓价格”,供你测试。
你不能简单的嵌入我提供的全部代码,因为那样的话会,程序会出现2个start()函数,必然发生会冲突。
请教大师,返回最近的未平仓的定单的开仓价格,应如何写代码!请大师帮助!
感谢!