ویرایشگر
اسکریپتها کجا نوشته میشوند، ویرایشگر هنگام تایپ مشکلها را چطور نشان میدهد، ذخیره، گذاشتن اسکریپت روی نمودار و بهروزرسانیاش، و نگهداری اسکریپتهای شما.
ویرایشگر اسکریپت پنلی است زیر نمودار (در گوشی تمامصفحه). نمودار کوچک میشود تا جا باز شود، پس چیزی روی قیمت را نمیپوشاند. آن را از اندیکاتورها، در زبانهٔ روی نمودار، زیر اسکریپتهای من باز میکنید: برای ویرایش یک اسکریپت آن را انتخاب کنید، و برای شروع یک اسکریپت تازه اسکریپت جدید را بزنید. اسکریپت جدید با یک مثال کوچکِ آمادهٔ اجرا باز میشود.
چه چیزی میبینید#
- کد، با شمارهٔ خطها، رنگ برای توضیحها، متنها، عددها و نامهای داخلی، و نشان دادن پرانتزهای جفت. تورفتگی چهار فاصله است؛ کلید Tab تورفتگی میدهد.
- نام اسکریپت در بالا، که نمودار و پنل اندیکاتورها با همین نام صدایش میزنند.
- یک وضعیت کنار نام. آماده یعنی اسکریپت هیچ مشکلی ندارد. آماده (استراتژی) میگوید اسکریپت یک استراتژی است. آماده · 2 یادداشت یعنی کار میکند و اخطارهایی دارد که باید خواند. 1 مشکل یعنی هنوز کامپایل نمیشود؛ ویرایشگر اولین خطایی را که پیدا کند نشان میدهد.
- فهرستی از مشکلات یا یادداشتها کنار کد. هر مورد نام یک خط و کدش را دارد (مثل
E3171). مشکل خطایی است که جلوی اجرای اسکریپت را میگیرد؛ یادداشت اخطاری است که جلوی اجرا را نمیگیرد. جایی که اشتباه را بشود مکانیکی درست کرد، مورد یک دکمهٔ Fix پیشنهاد میدهد. - ماژولی که کامپایل شود کتابخانه — آمادهٔ ایمپورت را نشان میدهد؛ خودش چیزی رسم نمیکند (نگاه کنید به ماژولها و کتابخانهها).
ویرایشگر چند لحظه بعد از اینکه تایپ را متوقف کنید اسکریپت را بررسی میکند و خط را همراه با پیامش علامت میزند: یک خط موجی زیرش، قرمز برای مشکل و کهربایی برای یادداشت.
اسکریپتی میتواند کار کند و باز هم به نگاه دوباره نیاز داشته باشد. این یکی اجرا میشود و ویرایشگر برایش یک یادداشت میآورد، چون موتور اخطار میدهد که کندل ساعتیِ در حال شکلگیری را میخواند و مقدار آن تکان میخورد:
indicator "A note, not a problem"
edition = 1
display = price
let forming = data.series("60", close, symbol = symbol.id, live = true)
plot(forming)اگر نامی را غلط بنویسید، ویرایشگر یک مشکل نشان میدهد و، جایی که بتواند، نامی را که احتمالاً منظورتان بوده میگوید. قاعدهٔ یک ورودی (show_if یا check) که قیمت یا متغیری را نام ببرد مشکل E3133 است، و قاعدههای show_if که به هم برمیگردند E3134؛ هر دو هنگام تایپ پیدا میشوند و ورودیها میگوید یک قاعده چه چیزهایی را میتواند نام ببرد. ویرایشگر خط، پیام و کد آن را نشان میدهد؛ خواندن پیامهای ویرایشگر پیامهایی را که اول با آنها روبهرو میشوید یکییکی توضیح میدهد.
تکمیل خودکار#
هنگام تایپ، ویرایشگر تابعهای داخلی را با پارامترهایشان و متغیرهای داخلی مثل close و bar.index پیشنهاد میدهد. برای پذیرفتن یک پیشنهاد Enter را بزنید. در این نسخه نام پارامترهایی که پیشنهادها و کارت راهنمای کنار کد نشان میدهند، ممکن است با نامهایی که بررسیکننده میپذیرد فرق داشته باشد: مثلاً یک خط رسمشده name و width میگیرد. وقتی نامی پذیرفته نشود، پیام نامهای پذیرفتنی را فهرست میکند، و فهرست تابعها هر تابع را با پارامترهایی که میپذیرد فهرست کرده است.
نوار ابزار#
| کار | چه میکند | میانبر |
|---|---|---|
| ذخیره | اسکریپت را نگه میدارد؛ اگر وارد حساب شده باشید، با حساب شما نگه داشته میشود و روی همهٔ دستگاهها یکی است. نسخهای که قبلاً روی نمودار است با کد تازه اجرا میشود | Cmd یا Ctrl + S |
| افزودن به نمودار | اسکریپت را مثل هر اندیکاتور دیگری روی نمودار میگذارد | Cmd یا Ctrl + Enter |
| بهروزرسانی روی نمودار | نسخهٔ در حال اجرا را با کد تازه عوض میکند؛ ورودیها، ظاهر و نمایان بودن همانطور که بودند میمانند | Cmd یا Ctrl + Enter |
| تست (استراتژیها) | اسکریپت را ذخیره میکند و آن را در Strategy Lab اجرا میکند (درس 15) | |
| Format | اسکریپت را با چیدمان استاندارد (تورفتگی، فاصلهها، شکستن خطها) بازنویسی میکند؛ معنای آن عوض نمیشود. اسکریپتی که خطا دارد قالببندی نمیشود | Shift + Cmd یا Ctrl + F |
| باز کردن فایل | اسکریپتی را که بهصورت فایل متنی (.txt) روی کامپیوترتان نگه داشتهاید باز میکند؛ میتوانید فایل را روی کد هم رها کنید | |
| Learn | هشت درس کوتاه، هر کدام برنامهای که باید کاملش کنید؛ Check my work آن را روی نمودار شما اجرا میکند و میگوید هنوز چه چیزی کم است | |
| مستندات | همین راهنما را در یک زبانهٔ تازه باز میکند | |
| حذف (سطل زباله) | اسکریپت را بعد از تأیید شما با حذف پاک میکند (یا با نگه داشتن از تصمیمتان برمیگردید) |
در سرآیند هر اسکریپت edition = 1 را بنویسید. این میگوید اسکریپت برای کدام خوانشِ زبان نوشته شده؛ اگر نباشد، نسخهٔ زبان (edition) فعلی به کار میرود. اسکریپت باید برای ذخیرهشدن بهاندازهٔ کافی کوچک باشد: حداکثر 400,000 کاراکتر. تعداد اسکریپتهایی که میتوانید نگه دارید به پلن شما بستگی دارد: سقفها و بودجهٔ اجرا را ببینید.
منوی اسکریپتها در بالا اسکریپتهای دیگر شما را فهرست میکند و اسکریپت تازه شروع میکند:
- اسکریپت جدید یک اسکریپت تازه با یک مثال کوچکِ آمادهٔ اجرا باز میکند.
- From a template از یک برنامهٔ کوچکِ آماده شروع میکند: یک اندیکاتور، یک استراتژی، یک هشدار روی سیگنال، یک سشن معاملاتی یا یک جدول داشبورد.
- Format when saving تا وقتی تیک دارد، اسکریپت را هر بار که ذخیرهاش میکنید قالببندی میکند.
- اگر حساب شما آن را داشته باشد، گزینهای برای آوردن اسکریپتی که برای یک نرمافزار نمودار دیگر نوشته شده است. این یک تبدیل آزمایشی کد منبع برای زیرمجموعهای محدود است: بیشتر برنامهها پذیرفته نمیشوند، و آنچه تبدیل میشود باید خط به خط بررسی شود. این راهنما به آن نمیپردازد.
با کشیدن لبهٔ بالای پنل میتوانید اندازهاش را تغییر دهید.
اگر اسکریپتی روی نمودار متوقف شود#
اسکریپتی که کامپایل میشود هم ممکن است هنگام اجرا متوقف شود: شاید بیشتر از بودجه خرج کند یا دادههای نماد دیگری را بخواهد. آنوقت ویرایشگر روی نمودار متوقف شد را با پیام موتور نشان میدهد که کندل و خط را نام میبرد. سقفها و بودجهٔ اجرا فهرست چیزهایی است که موتور محدود میکند.
بهطور پیشفرض خصوصی#
اسکریپتها مال حساب شما هستند. هیچکس دیگری نمیتواند یکی را باز کند، و در این انتشار راهی برای به اشتراک گذاشتن اسکریپت وجود ندارد. پلن رایگان نمودار 2 اسکریپت نگه میدارد؛ MillionChart Pro تا 100 اسکریپت.
نگاه کنید به: اولین اسکریپت شما، خواندن پیامهای ویرایشگر، ماژولها و کتابخانهها.