پروسه اشکالزدایی در Pine Script® خود را با استفاده از توابع جدید log.*() به سطح دیگری ببرید. این توابع متن را در پنل جدید “Pine Logs” به نمایش میگذارند در حین اجرای اسکریپت. سه تابع جدید در این زمینه وجود دارد:
- log.error() پیغامهایی از نوع “خطا” ایجاد میکند که به رنگ قرمز نمایش داده میشوند.
- log.info() پیغامهایی از نوع “اطلاعات” تولید میکند که به رنگ خاکستری ظاهر میشوند.
- log.warning() پیغامهایی از نوع “هشدار” ایجاد میکند که به رنگ نارنجی نمایش داده میشوند.
شما میتوانید برای مشاهده “Pine Logs” گزینه “Pine Logs…” را از منوی “بیشتر” ویرایشگر انتخاب کنید، یا از منوی “بیشتر” اسکریپتی که بر روی چارت شما بارگذاری شده است و از توابع log.*() استفاده میکند.
عملکرد “Pine Logs” در همه جا کاربرد دارد: بر روی بارهای تاریخی، در زمان واقعی، و در حالت پخش مجدد. توابع لاگبرداری میتوانند از هر نوع اسکریپتی (اندیکاتور، استراتژی یا کتابخانه) و از هر نقطهای در اسکریپت فراخوانی شوند، از جمله بلوکهای محلی، حلقهها و از داخل تابعهایی مانند request.security(). شما میتوانید توابع لاگبرداری را به دو روش فراخوانی کنید: با استفاده از تنها یک آرگومان رشتهای، یا با استفاده از یک رشته فرمت و فهرستی از مقادیر به سبک str.format().
اسکریپتهای استفاده کننده از لاگها باید اسکریپتهای شخصی باشند؛ اسکریپتهای منتشر شده به صورت خصوصی یا عمومی نمیتوانند لاگ تولید کنند، حتی اگر شامل فراخوانی به توابع log.*() باشند.
کد نمونه زیر از هر سه تابع لاگبرداری استفاده میکند:
//@version=5 indicator("Pine Logs") if barstate.ishistory if bar_index % 100 == 0 log.warning("nBar index: {0,number,#}", bar_index) else // پردازش بار در زمان واقعی. varip lastTime = timenow varip updateNo = 0 if barstate.isnew updateNo := 0 log.error("nNew bar") else log.info("nUpdate no: {0}nclose: {1}nSeconds elapsed: {2}", updateNo, close, (timenow - lastTime) / 1000) updateNo += 1 lastTime := timenow plot(timenow)
این مثال شماره بارها را در هر صد بار تاریخی با استفاده از پیغام هشدار نارنجی نمایش میدهد. در زمان واقعی، برای هر بار جدید یک پیغام خطا به رنگ قرمز نشان میدهد، و برای هر بروزرسانی در زمان واقعی یک پیغام اطلاعاتی خاکستری نمایش میدهد که شامل شماره بروزرسانی، قیمت بسته شدن و زمان گذشته از آخرین بروزرسانی چارت است.
برای مشاهده عملکرد Pine Logs:
- کد نمونه بالا را به عنوان یک اسکریپت شخصی ذخیره کنید و آن را به چارت با یک بازار فعال اضافه کنید.
- پنل “Pine Logs” را با استفاده از منوی “بیشتر” ویرایشگر یا منوی “بیشتر” اندیکاتور بر روی چارت باز کنید.
برای استفاده رایگان از تریدینگ ویو پرمیوم از چارت آتو تی کریپتو استفاده کنید
هر ورودی ثبت شده دارای یک زمانبندی است. این زمان، زمان باز شدن نوار برای نوارهای تاریخی و زمان کنونی برای پیامهای زمان واقعی است. پیامهای جدید در پایین صفحه قرار میگیرند. تنها 10,000 پیام آخر برای نوارهای تاریخی نمایش داده خواهد شد و پیامهای زمان واقعی به آنها اضافه میشوند.
بالای صفحه، نمادهایی وجود دارند که به شما این امکان را میدهند که ثبتنام را شروع/متوقف کنید، تاریخ شروع را مشخص کنید، ثبتها را بر اساس نوع پیام فیلتر کنید و در ثبتها جستجو کنید. فیلد جستجو شامل یک زیرمنو است که به شما امکان میدهد تا تطابقهای دقیق، کلمات کامل و استفاده از regex را انجام دهید.
زمانی که بر روی یک پیام ثبتشده حرکت میکنید، نمادهایی ظاهر میشوند که به شما این امکان را میدهند تا کد منبعی را که پیام را تولید کرده مشاهده کنید یا به نوار چارت مربوط به آن مراجعه کنید:
زمانی که چندین اسکریپت در چارت شما از ثبتها استفاده میکنند، هر یک مجموعهای جداگانه از پیامها را حفظ میکند. شما میتوانید با استفاده از منوی کشویی در بالای پنجره ثبتها به ثبتهای هر اسکریپت تغییر دهید:
برای آگاهی از ویژگیهای جدید Pine Script®، به یادداشتهای منتشر شده در راهنمای کاربری توجه کنید. حساب PineCoders نیز بهروزرسانیهای مربوط به خود را از جعبه سخنگو در تلگرام، حساب توییتر و از چت عمومی سوال و جواب Pine Script® در تریدینگ ویو ارسال میکند.
امیدواریم که این ویژگی درخواست شده برای شما مفید باشد و لطفاً نظرات و پیشنهادات خود را به ما ارسال کنید تا بتوانیم پلتفرم را به بهترین شکل ممکن بسازیم. ما TradingView را برای شما ساختهایم و همیشه مشتاق شنیدن نظرات شما هستیم.
— تیم تریدینگ ویو
برای استفاده رایگان از تریدینگ ویو پرمیوم از چارت آتو تی کریپتو استفاده کنید