في الاختبار ، أحصل على خطأ داخلي في Error Code 0 في أوامر جانب الشراء فقط ولا نبيع الأوامر الجانبية.
2 أسئلة:
1. ما هو الخطأ الداخلي المرتبط برمز الخطأ 0 الذي اعتقدت أنه ليس خطأ؟
2. لماذا أتلقى هذا الخطأ فقط في أوامر الشراء؟
النتيجة المحددة المطبوعة هي: خطأ أثناء تعديل التعديل و TP من شراء أمر! رمز الخطأ: 0 خطأ داخلي
والذي يتوافق مع التعديل الأول. بقدر ما استطيع ان اقول رمز شراء الجانب هو الصحيح.
في ما يلي الكود المستخدم للوظيفة أدناه ... قد يبدو أن الكود يحتوي على reduny ، ومع ذلك فقد تم تصميمه للتأكد من أنه يتم إرسال نقاط التوقف الصعبة والنسخ الصعبة ويتم نشرها بعد ملء الطلب لوسطاء نوع ecnstp.
Inserted Code void set_stop_tp () {int totalorders = OrdersTotal ()؛ for (int i = totalorders-1؛ igt؛ = 0؛ i--) {if (! OrderSelect (i، SELECT_BY_POS)) {Print (TimeToStr (TimeCurrent ()، TIME_SECONDS)، CHECK Function gt؛، __FUNCTION__، !! !!! ، رمز الخطأ = ، GetLastError ()) ؛ } النتيجة int ؛ التحقق من الشهرة {//تعديل إيقاف و TP على الخادم إذا لم يكن أثناء إدخال الطلب إذا (((OrderStopLoss () == 0) || (OrderTakeProfit () == 0)) (OrdersTotal () gt؛ 0) (UseHardStop == true) ) {RefreshRates ()؛/تعديل كلا من SL و TP إذا لم يتم ضبطهما بعد إذا ((OrderType () == OP_BUY) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss () == 0) (OrderTakeProfit ( ) == 0))) result = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderOpenPrice () - HardStop، OrderOpenPrice () HardTP، 0،0)؛ تحقق = GetLastError ()؛ إذا (تأكد من! = 0) {طباعة (خطأ أثناء تعديل التعديل و TP من أمر شراء! رمز الخطأ: ، GetLastError () ، ، ErrorDescription (تحقق)) ؛ } if ((OrderType () == OP_SELL) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss () == 0) (OrderTakeProfit () == 0))) result = OrderModify ( OrderTicket ()، OrderOpenPrice ()، OrderOpenPrice () HardStop، OrderOpenPrice () - HardTP، 0،0)؛ تحقق = GetLastError ()؛ إذا (تأكد من! = 0) {طباعة (خطأ أثناء تعديل وقف TP أمر البيع! رمز الخطأ: ، GetLastError () ، ، ErrorDescription (تحقق)) ؛ }/تعديل TP فقط إذا لم يتم ضبطه بعد إذا ((OrderType () == OP_BUY) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss ()! = 0) (OrderTakeProfit () = = 0))) result = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderStopLoss ()، OrderOpenPrice () HardTP، 0،0)؛ تحقق = GetLastError ()؛ if (check! = 0) {Print (Error during Modifying TP of Buy Order !!! Error code:، GetLastError ()،، ErrorDescription (check))؛ } if ((OrderType () == OP_SELL) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss ()! = 0) (OrderTakeProfit () == 0))) result = OrderModify ( OrderTicket ()، OrderOpenPrice ()، OrderStopLoss ()، OrderOpenPrice () - HardTP، 0،0)؛ تحقق = GetLastError ()؛ if (check! = 0) {Print (Error during Modifying TP of Sell Order !!! Error code:، GetLastError ()،، ErrorDescription (check))؛ }/تعديل SL فقط إذا لم يتم ضبطه بعد إذا ((OrderType () == OP_BUY) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss () == 0) (OrderTakeProfit ()! = 0))) result = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderOpenPrice () - HardStop، OrderTakeProfit ()، 0،0)؛ تحقق = GetLastError ()؛ if (check! = 0) {Print (Error during Modifying Stop of Buy Order !!! Error code:، GetLastError ()،، ErrorDescription (check))؛ } if ((OrderType () == OP_SELL) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss () == 0) (OrderTakeProfit ()! = 0))) result = OrderModify ( OrderTicket ()، OrderOpenPrice ()، OrderOpenPrice () HardStop، OrderTakeProfit ()، 0،0)؛ تحقق = GetLastError ()؛ if (check! = 0) {Print (Error In Modifying Stop of Sell Order !!! Error code:، GetLastError ()،، ErrorDescription (check))؛ }}
تم إعادة نشر الرمز خارج مربعforexdropCode:
*******************************
void set_stop_tp ()
{
int totalorders = OrdersTotal ()؛
لـ (int i = totalorders-1؛ igt؛ = 0؛ i--)
{
إذا (! OrderSelect (i، SELECT_BY_POS)) {
Print (TimeToStr (TimeCurrent ()، TIME_SECONDS)، CHECK Function gt؛، __FUNCTION__، !!!!!، Error code =، GetLastError ())؛ }
النتيجة int؛
التحقق من الشهرة
{
//تعديل توقف و TP على الخادم إذا لم يكن خلال إدخال النظام
if (((OrderStopLoss () == 0) || (OrderTakeProfit () == 0)) (OrdersTotal () gt؛ 0) (UseHardStop == true)) {RefreshRates ()؛
//تعديل كلا من SL و TP إذا لم يتم ضبطهما بعد
if ((OrderType () == OP_BUY) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss () == 0) (OrderTakeProfit () == 0)))
result = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderOpenPrice () - HardStop، OrderOpenPrice () HardTP، 0،0)؛
تحقق = GetLastError ()؛
إذا (تأكد من! = 0) {طباعة (خطأ أثناء تعديل التعديل و TP من أمر شراء! رمز الخطأ: ، GetLastError () ، ، ErrorDescription (تحقق)) ؛ }
if ((OrderType () == OP_SELL) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss () == 0) (OrderTakeProfit () == 0)))
result = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderOpenPrice () HardStop، OrderOpenPrice () - HardTP، 0،0)؛
تحقق = GetLastError ()؛
إذا (تأكد من! = 0) {طباعة (خطأ أثناء تعديل وقف TP أمر البيع! رمز الخطأ: ، GetLastError () ، ، ErrorDescription (تحقق)) ؛ }
//تعديل TP فقط إذا لم يتم ضبطه بعد
if ((OrderType () == OP_BUY) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss ()! = 0) (OrderTakeProfit () == 0)))
result = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderStopLoss ()، OrderOpenPrice () HardTP، 0،0)؛
تحقق = GetLastError ()؛
if (check! = 0) {Print (Error during Modifying TP of Buy Order !!! Error code:، GetLastError ()،، ErrorDescription (check))؛ }
if ((OrderType () == OP_SELL) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss ()! = 0) (OrderTakeProfit () == 0)))
النتيجة = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderStopLoss ()، OrderOpenPrice () - HardTP، 0،0)؛
تحقق = GetLastError ()؛
if (check! = 0) {Print (Error during Modifying TP of Sell Order !!! Error code:، GetLastError ()،، ErrorDescription (check))؛ }
//تعديل SL فقط إذا لم يتم ضبطه بعد
if ((OrderType () == OP_BUY) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss () == 0) (OrderTakeProfit ()! = 0)))
result = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderOpenPrice () - HardStop، OrderTakeProfit ()، 0،0)؛
تحقق = GetLastError ()؛
if (check! = 0) {Print (Error during Modifying Stop of Buy Order !!! Error code:، GetLastError ()،، ErrorDescription (check))؛ }
if ((OrderType () == OP_SELL) (OrdersTotal () gt؛ 0) (OrderSymbol () == Trade) ((OrderStopLoss () == 0) (OrderTakeProfit ()! = 0)))
result = OrderModify (OrderTicket ()، OrderOpenPrice ()، OrderOpenPrice () HardStop، OrderTakeProfit ()، 0،0)؛
تحقق = GetLastError ()؛
if (check! = 0) {Print (Error In Modifying Stop of Sell Order !!! Error code:، GetLastError ()،، ErrorDescription (check))؛ }
}