متغیر و آرایه های پیش فرض – درس اول – کتاب آموزش زبان mql (دوره متوسطه)

متغیر و آرایه های پیش فرض

درس اول

در تعریف متغیرهای پیش فرض آورده اند:  متغیرهایی وجود دارند که MQL به آن ها مقدار می دهد و با هر حرکت در بازار مقدار آن ها نیز تغییر می کند. به جدول زیر دقت کنید.

متغیر و آرایه های پیش فرض

متغیر و آرایه های پیش فرض در کتاب MQL ایران ام کیو ال

❓ مسئله شماره 1:
اکسپرتی بنویسید که آخرین قیمت فروش و خرید را در چارت نمایش دهد.
با توجه به آموزش های گذشته فایل جدیداکسپرت بسازید و نام گذاری کنید.

اکسپرت آخرین قیمت خرید و فروش

کتاب آموزش ایران MQL

سایر مراحل را بدون تغییر جلو ببرید تا به finish برسانید.

 تابع  OnTick

اگر بخواهید آخرین قیمت بازار را چاپ کنید و هماهنگ با قیمت بازار، قیمت برنامه تغییر کند از تابع OnTick استفاده نمایید. تابع OnTick که در اکسپرت ها قرار دارد زمانی فراخوانی و اجرا می‌شود که قیمت چارتی که اندیکاتور روی آن قرار دارد تغییر کند و به اصطلاح فنی به ازای هر تیک این تابع فراخوانی و اجرا می‌شود. دقت نمایید که تابع OnTick هیچ ورودی و خروجی‌ای نمی‌گیرد.
به شیوه دستور نویسی آن توجه کنید.

 تابع  OnTick

برای جلوگیری از از ادغام با قیمت Bid یک خط آن را پایین آورده و قیمت Bid را بنویسید. مانند تصویر بالا.  compile را کلیک کرده و نباید اخطاری نمایش دهد. سپس وارد برنامه شوید.

 تابع  OnTick ایران MQL

قیمت ها در حال تغییر می باشد. قیمت چاپ شده با مقیاس عمودی (vertical scale) مطابقت دارد. چنانچه بخواهید قیمت ask را مشاهده کنید از منوی تنظیمات Properties گزینه show ask line را تیک دار کنید.

 تابع  OnTick در ایران MQL

آموزش زبان MQL دوره متوسطه

برای چاپ سایر قیمت ها ، در متاتریدر متغیرها را در خطوط زیر بنویسید. جهت نمایش نام هر متغیر برای هر کدام رشته تعریف کنید به عنوان مثال:

ایران MQL

آموزش ایران MQL کتاب

در قسمت point عدد نمایشی در واقع عدد علمی 1.00005 می باشد.

آرایه های پیش فرض

در این قسمت با آرایه ها و توابع دستیابی به داده های کندل در زبان برنامه نویسی MQL آشنا خواهید شد. در MQL تعدادی آرایه های پیش فرض برای دسترسی به دیتای کندل ها وجود داردکه مانند متغیرها مقداردهی می شود. به جدول زیر دقت کنید.

کتاب ایران MQL

نحوه نوشتاری آن به عنوان مثال:

;[شماره کندل]Open
;Open[0]

نکته آموزشی کتاب MQL

آرایه های پیش فرض

❓ مسئله شماره 2:
اکسپرتی بنویسید که شماره کندل را از کاربر گرفته و تایم کندل را چاپ نماید.
در متاتریدر متغیر از کاربر بگیرید و می توانید مقداری مشخص نکنید. چونکه بناست چاپ شود نیازی نیست دستورها در تابع  OnTick بنویسید بلکه در onInt بگذارید تا زمانی که برنامه اجرا شد خودبه خود اجرا شود.

دستورها در تابع  OnTick

آرایه های پیش فرض در آموزش MQL

در برنامه نام کلاس را به فضای داخلی درگ کنید تا پنجره expert- به همراه نام کلاس نمایش شود. قسمت  valueمقدار را وارد کنید.

پنجره expert

حروف نمایشی عبارتند از: o:open    H: High   L:Low  C:Close  V:Value
چنانچه بخواهید همه مقادیر به صورت جداگانه برای شما نمایش شود. همه آن ها زیر هم قید کنید به عنوان مثال:
دستورها در تابع  OnTick ایران MQL آموزش

دستورها در تابع  OnTick

کتاب آموزش ایران MQL

❓ مسئله شماره 3:
اکسپرتی بنویسید که در صورتی که دو کندل صعودی پشت سر هم تشکیل شد buy را در دستور پرینت چاپ نماید و در صورتی که دو کندل نزولی پشت سرهم تشکیل شد کلمه sell در دستور پرینت چاپ شود.
پاسخ: اگر به عنوان مثال دو کندل صعودی وجود داشته باشد، آنچه در ذهن تبادر پیدا می کند اینکه کندل شماره 2 کوچک تر از کندل شماره 1 باشد. و در sell  کلوز کندل 2 بزرگ تر از کندل 1 باشد.

آموزش اکسپرت کندل نزولی

برای جلوگیری از عملیات خطا در محاسبات کلوز بهتر است که جداگانه محاسبه کنید به عنوان مثال: اگر open کوچک تر از Close بود یعنی کندل صعودی است. بنابراین شرط اینگونه می شود که اگر Close کندل دوم بزرگ تر از open آن باشد و همچنین کندل اول Close بزرگ تر از open بود در این صورت buy چاپ شود. و برعکس آن برای sell اجرا گردد.
کدنویسی آن به صورت زیر می باشد.

آموزش برنامه نویسی اکسپرت

expert نویسی

کتاب آموزش ربان MQL دوره متوسطه

 

 

منبع : کتاب آموزش زبان MQL (دوره متوسطه)
مدرس : استاد حسین احمدی

 

سایر مقالات مرتبط

پاسخ‌ها

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

  1. با سلام و احترام
    در عین سادگی بسیار عالی و روان و کاربردی است. از شما استاد بزرگوار سپاسگزارم.