A_SendOrderEx

A_SendOrderEx发出订单,A_SendOrderEx(Enum_Sell,Enum_Entry,Lots,Q_Last-MinDiff*SellJs,Sid )

请问我如何通过Sid这个数组获取上述订单编号(我知道Ord.ORDERID可以),感谢老师!!!

A_SendOrderEx
A_SendOrderEx 的问题
A_sendOrderEx为什么不成交?
A_SendOrderEx总是返回False
A_SendOrderEx发单失败 不知原因
A_SendOrderEx函数下单返回False
SetConsecEntries()在使用A_SendOrderEx()时设置无效?
A_SendOrderEx的OrderIds里面是成交编号吗
a_sendorderex函数的返回参数orderids疑问
A_SendOrder 执行速度是不是要快于A_SendOrderEX呢?

你这个问题搞了几天了?

sid是获得报单索引号


如何取得报单报单编号

有函数根据索引号取报单的所有信息

帮助很详细的

Params
	//此处添加参数
	Numeric P1(30);//止盈点数
	Numeric P2(10);//止损点数
Vars
	//此处添加变量
	
	Global Array<Integer> Oid;//开仓单号
	Global Array<Integer> Pid;//止盈单号
	Global Array<Integer> Lid;//止损单号
	Global Numeric Con1;//Position是系统关键字
	//Global Numeric A;
	Global Numeric MinDiff;////最小变动价/一跳价	
    Global Numeric PPP;//基准价
 Events
	//此处实现事件函数
	OnInit()
	{
		Con1=0;
		//A=0;
		PPP=0;
	}
	OnReady()
	{
		MinDiff=PriceScale*MinMove;//最小变动价/一跳价	
	}
	OnOrder(OrderRef Ord)//委托更新事件
	{
	    IF (Ord.status==Enum_FILLED AND Ord.ORDERID==Oid[0])//开仓单(多)已成交
		{
			A_SendOrderEx(Enum_Sell,Enum_Exit,Ord.volume,Ord.price+MinDiff*P1,Pid);//发出止盈单
			PPP=Ord.price;//保存成交价,后面计算止损价时要用
		}
		ELSE IF (Ord.status==Enum_Canceled AND Ord.ORDERID==Pid[0])
		{
			A_SendOrderEx(Enum_Sell,Enum_Exit,Ord.volume,Ord.price-MinDiff*P2,Lid);//发出止损单
		}
        ELSE IF (Ord.status==Enum_FILLED AND Ord.ORDERID==Pid[0] )//止盈单成交	
        {
        	//AddTradeFlag(Enum_Strategy_Finished);
        	Con1=0;//与上一行命令同功能:结束程序或重新开始程序
        }	
		ELSE IF (Ord.status==Enum_FILLED AND Ord.ORDERID==Lid[0] )//止损单成交	
        {
        	//AddTradeFlag(Enum_Strategy_Finished);
        	Con1=0;//与上一行命令同功能:结束程序或重新开始程序
        }	
	}
	//Bar更新事件函数,参数indexs表示变化的数据源图层ID数组
	OnBar(ArrayRef<Integer> indexs)//BAR更新事件
	{
		IF (BarStatus==2)
		{
			IF (Con1==0)
			{
				BOOL RET=A_SendOrderEx(Enum_Buy,Enum_Entry,1,Q_LowerLimit,Oid );
				IF (RET=TRUE)
				{
					Con1=1;
				}
				Print("Oid="+TEXT(Oid[0]));
			}
			ELSE IF (Con1==1 AND C<PPP-MinDiff*P2)
			{
				A_DeleteOrder(Pid[0]);//撤止盈单
				//Con1=0;
			}
			//A=A+1;
		}
}

	

都是按你们的教学视频学的啊,我就想知道下面这一行命令是什么意思?

IF (Ord.status==Enum_FILLED AND Ord.ORDERID==Oid[0])//开仓单(多)已成交

我分别打印Ord.ORDERID和Oid[0],前者显示订单编号,后者显示“0”,为什么呢?

差别是:我是加载在策略里进行的,教学视频是加载在K线上运行的。难道是这个原因?

理解老师们都很忙,因为提问的学生太多。

但是,我的上一个帖子你们都做了测试了,不妨再花点时间帮我彻底解决这个问题。

我们都有一个共同的目的:建设好TB系统。你们研发维护并教学,我们使用试错并反馈。高效的沟通当然必不可少

但是,因为对TB系统的理解存在较大差异,沟通当然是不太顺畅的,建议开启付费视频指导模式(就像家电上门维修一样)。

或者,直接在社区直接开通语音/视频传送模式,像QQ或微信一样。无极易就有这样的QQ群,感觉沟通效率应该更高。


你说:帮助很详细的

在哪里?你可能觉得我这一问很弱智,但是我就像农村小孩第一次到了大上海,眼前无路😭