در جلسه هجدهم از آموزش دوره اسکریپت نویسی، با Pending Order ها در زبان برنامه نویسی MQL آشنا خواهید شد.
در مجموع 4 pending_order داریم :
- OP_BUYLIMIT
- OP_SELLLIMIT
- OP_BUYSTOP
- OP_SELLSTOP
نکته : اگر بخواهیم یک پوزیشن BUYSTOP باز کنیم باید قیمتی که وارد می کنیم بالاتر از قیمت جاری مارکت باشد و اگر بخواهیم پوزیشن BUYLIMIT باز کنیم باید قیمتی که وارد می کنیم پایین تر از قیمت جاری مارکت باشد و برای پوزیشن های SELLSTOP قیمتی که در نظر می گیریم باید پایین تر از قیمت جاری مارکت باشد و برای SELLLIMIT هم قیمتی که در نظر می گیریم باید بالاتر از قیمت جاری مارکت باشد .
تابع ()OrderDelete : پوزیشن های pending را نمی توان close کرد و باید delete شوند و برای delete کردن پوزیشن های pending از تابع ()OrderDelete استفاده می کنیم .
نکته : برای پوزیشن های pending می توانیم تاریخ انقضا (expiration Time) تعیین کنیم که اگر تا آن زمان پوزیشن pending فعال نشد به صورت اتوماتیک delete خواهد شد.
نکته : زمانی که در تابع OrderSend تاریخ انقضا (expiration Time) تعیین می کنیم نباید در تابع OrderModify مقدار تاریخ انقضا (expiration Time) را صفر قرار دهیم و برای اینکه تاریخ انقضایی که در OrderSend وارد کرده ایم حفظ شود از تابع ()OrderExpiration استفاده می کنیم. خروجی این تابع از نوع datetime می باشد.