איתור באגים בקוד Pine Script® שלך עם יומני Pine

Aug 29, 2023

קח את איתור הבאגים של Pine Script® לרמה אחרת עם פונקציות ה-log.*() החדשות שלנו, המציגות טקסט בחלונית יומני Pine החדשה בזמן שהסקריפט מופעל. שלוש פונקציות הרישום החדשות הן:

  • log.error()  יוצר הודעות מסוג “שגיאה” המוצגות באדום.
  •  log.info() יוצר הודעות מסוג “Info” המוצגות באפור.
  • log.warning()  יוצר הודעות מסוג “אזהרה” המוצגות בכתום.

אתה יכול להציג יומני Pin  על ידי בחירת  “יומני “Pine … מתפריט “עוד” בעורך, או מתפריט  “עוד” בסקריפט שנטען בגרף שלך אם הוא משתמש בפונקציות log.*() .

יומני Pine עובדים בכל מקום: על ברים היסטוריים, בזמן אמת ובמצב הפעלה חוזרת. ניתן לקרוא לפונקציות הרישום מכל סוג של סקריפט (אינדיקטור, אסטרטגיה או ספריה) ומכל מקום בסקריפט, כולל בלוקים מקומיים, לולאות ומתוך request.security() ופונקציות דומות. אתה יכול לקרוא לפונקציות רישום בשתי דרכים: באמצעות ארגומנט מחרוזת בלבד, או שימוש במחרוזת עיצוב וברשימת ערכים באופן str.format()

סקריפטים המשתמשים ביומנים חייבים להיות סקריפטים אישיים; סקריפטים שפורסמו באופן פרטי או ציבורי אינם יכולים ליצור יומנים, גם אם הם מכילים קריאות לפונקציות יומן.*().

דוגמא הקוד הבאה משתמשת בכל שלוש פונקציות הרישום:

//@version=5
indicator("Pine Logs")
if barstate.ishistory
    if bar_index % 100 == 0
        log.warning("\nBar index: {0,number,#}", bar_index)
else
    // Realtime bar processing.
    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 בפעולה:

  1. שמור את דוגמת הקוד לעיל בסקריפט אישי והוסף אותו לגרף עם שוק פעיל.
  2. פתח את חלונית ” יומני Pine” באמצעות תפריט “עוד” של העורך או תפריט “עוד” של האינדיקטור בגרף.

חותמת זמן מציינת כל רשומת יומן. זוהי שעת הפתיחה של הבר עבור ברים היסטוריים, והשעה הנוכחית להודעות בזמן אמת. הודעות חדשות יותר מופיעות בתחתית החלונית. רק 10,000 ההודעות האחרונות יוצגו עבור ברים היסטוריים; הודעות בזמן אמת מצורפות לאלה.

החלק העליון של החלונית מכיל סמלים המאפשרים לך להתחיל/להפסיק את הרישום, לציין תאריך התחלה, לסנן את היומנים לפי סוג הודעה ולחפש ביומנים. שדה החיפוש מכיל תפריט משנה המאפשר לך להתאים מקרים, מילים שלמות, ולהשתמש ב-Regex.

כאשר אתה מרחף מעל הודעת יומן, מופיעים אייקונים המאפשרים לך להציג את קוד המקור שיצר את ההודעה או לדלג לבר הגרף המתאים: יומני Pine

כאשר מספר סקריפטים בגרף שלך משתמשים ביומנים, כל אחד שומר על סט הודעות משלו. אתה יכול לעבור בין היומנים של כל סקריפט על ידי שימוש בתפריט הנפתח בחלק העליון של חלונית יומני Pine:

כדי להישאר מעודכן בתכונות החדשות של Pine Script®, עקוב אחר הערות הגרסה של המדריך למשתמש. חשבון PineCoders משדר גם עדכונים מה-Squawk Box שלו בטלגרם, חשבון הטוויטר שלו, ומהצ’אט הציבורי של Pine Script® Q&A ב-TradingView.

אנו מקווים שתמצא תכונה מבוקשת זו שימושית, ואנא המשך לשלוח לנו את המשובים וההצעות שלך כדי שנוכל להפוך את הפלטפורמה לטובה ביותר שהיא יכולה להיות. אנו בונים עבורך TradingView, ואנחנו תמיד שמחים לשמוע את דעתך.

— צוות TradingView

Look first Then leap

TradingView נבנית עבורך, אז וודא שאתה מפיק את המקסימום מהתכונות המצויינות שלנו
פתח גרף