Podnieś swoje umiejętności debugowania Pine Script® na wyższy poziom dzięki naszym nowym funkcjom log.*(), które wyświetlają tekst w nowym panelu Pine Logs podczas wykonywania skryptu. Trzy nowe funkcje do logowania to:
- log.error() tworzy komunikaty typu „Błąd”, które są wyświetlane na czerwono.
- log.info() tworzy komunikaty typu „Info”, które są wyświetlane na szaro.
- log.warning() tworzy komunikaty typu „Ostrzeżenie”, które są wyświetlane na pomarańczowo.
Aby wyświetlić Pine Logs, wybierz „Pine Logs…” z menu „Więcej” w Edytorze lub z menu „Więcej” skryptu załadowanego na twoim wykresie, jeśli używa funkcji log.*().
Pine Logs działają wszędzie: na historycznych belkach, w czasie rzeczywistym i w trybie Odtwarzania. Funkcje logowania mogą być wywoływane z dowolnego rodzaju skryptu (wskaźnika, strategii lub biblioteki) oraz z dowolnego miejsca w skrypcie, w tym w blokach lokalnych, pętlach i wewnątrz funkcji request.security() oraz podobnych. Funkcje logowania można wywoływać na dwa sposoby: używając tylko argumentu typu string lub za pomocą łańcucha formatującego i listy wartości w stylu str.format().
Skrypty korzystające z logów muszą być prywatnymi skryptami; opublikowane skrypty prywatne lub publiczne nie mogą generować logów, nawet jeśli zawierają wywołania funkcji log.*().
Poniższy przykład kodu używa wszystkich trzech funkcji logowania:
//@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)
Ten przykład wyświetla indeks słupka na co setnej historycznej belce za pomocą pomarańczowego komunikatu ostrzegawczego. W czasie rzeczywistym wyświetla czerwony komunikat błędu dla każdej nowej belki oraz, dla każdej aktualizacji w czasie rzeczywistym, tworzy komunikat informacyjny w kolorze szarym, pokazujący numer aktualizacji, cenę zamknięcia oraz czas, który upłynął od ostatniej aktualizacji wykresu.
Aby zobaczyć Pine Logs w akcji:
- Zapisz powyższy przykład kodu jako osobisty skrypt i dodaj go do wykresu z aktywnym rynkiem.
- Otwórz panel „Pine Logs”, korzystając z menu „Więcej” w Edytorze lub menu „Więcej” wskaźnika na wykresie.
Przed każdym wpisem w dzienniku znajduje się znacznik czasu. Dla historycznych barów jest to czas otwarcia słupka (time), a dla wiadomości w czasie rzeczywistym jest to bieżący czas. Nowe wiadomości pojawiają się na dole panelu. Tylko ostatnie 10 000 wiadomości będzie wyświetlanych dla belki historycznych; wiadomości w czasie rzeczywistym są dodawane do nich.
Góra panelu zawiera ikony, które pozwalają rozpocząć/zatrzymać logowanie, określić datę początkową, filtrować logi według typu wiadomości i przeszukiwać logi. Pole wyszukiwania zawiera podmenu, które pozwala na uwzględnienie wielkości liter, całe wyrazy oraz użycie wyrażeń regularnych.
Kiedy najedzisz kursorem na wiadomość w dzienniku, pojawią się ikony, które pozwalają na wyświetlenie kodu źródłowego, który wygenerował wiadomość, lub przejście do odpowiadającej belki na wykresie:
Kiedy na twoim wykresie działa wiele skryptów korzystających z logów, każdy z nich utrzymuje własny zestaw wiadomości. Możesz przełączać się między logami każdego skryptu za pomocą rozwijanego menu na górze panelu Pine Logs:
Aby być na bieżąco z nowymi funkcjami Pine Script®, śledź notatki o wydaniach Podręcznika Użytkownika. Konto PineCoders publikuje aktualizacje ze swojego Squawk Box’a na Telegramie, swojego konta na Twitterze oraz publicznego czatu Pine Script® Q&A na TradingView.
Mamy nadzieję, że uważacie tę bardzo oczekiwaną funkcję za równie przydatną, jak my sądzimy, że będzie, i prosimy o dalsze przesyłanie nam opinii i sugestii, abyśmy mogli uczynić platformę jak najlepszą. Tworzymy TradingView dla was, i zawsze z ogromnym zainteresowaniem słuchamy waszych myśli.
— Zespół TradingView