Selcoin/ docs
SelScript

Hata kodları ve sorun giderme

Derleme, veri, boş çizgi, tablo ve yayın hatalarının çözümleri.

Hata mesajını okuyun

Mesajdaki kod, satır/sütun ve hata/uyarı düzeyini birlikte değerlendirin. İlk hatayı düzeltip yeniden deneyin; sonraki hatalar onun sonucu olabilir. Uyarı, her zaman scriptin tamamının durduğu anlamına gelmez.

Kod kataloğu

KodAnlamÇözüm
LANGUAGE_VERSIONİlk satır veya dil sürümü yanlışİlk satıra tam //@selscript=1 yazın; öncesine boş satır koymayın.
TAB / INDENT / PARSE / LEXGirinti veya sözdizimiTabı boşluğa çevirin; : ve parantez/tırnak kapanışını kontrol edin.
FUNCTIONKayıtlı olmayan fonksiyonReferanstaki adı kullanın; Pine işlevlerinin tümü mevcut değildir.
NAME / MEMBERBilinmeyen değişken veya alanTanımı kullanımdan önce yapın; MACD için .line, bars için .close gibi geçerli alanı seçin.
TYPETürler uyuşmuyorSayı, boolean ve metni örtük dönüştürmeyin; if close > 0 gibi açık koşul kullanın.
PLACEMENTÇağrı yanlış yerdeGirdi/TA/isteği koşulsuz üst seviyeye; sayısal plot ifadesini üst seviyeye taşıyın.
ARGUMENT / CONSTANTArgüman adı, sayısı veya sabitlik kuralıFonksiyon imzasını kontrol edin; security üç konumsal argüman ister.
PERIOD / INPUT_RANGE / INPUT_SOURCEDönem veya kullanıcı girdisiTA dönemi 1–5000; varsayılan min/max içinde olmalı, source aktif OHLCV olmalı.
HISTORY_INDEX / HISTORY_TYPEGeçmiş indeksi veya seri türü0–5000 sabit indeks ve sayısal/boolean seri kullanın.
OCCURRENCEOlay sırası geçersizvaluewhen occurrence için 0–4999 sabit tam sayı kullanın.
PRECISIONOndalık basamak sayısımath.round/str.tostring için 0–12 sabit tam sayı kullanın.
COLOR / LOCATION / SHAPE / WIDTHGörsel parametreHex RGB/RGBA, desteklenen şekil/konum ve 1–4 çizgi kalınlığı kullanın.
SECURITY_SYMBOL / SECURITY_TIMEFRAME / SECURITY_CONTEXT / SECURITY_TYPEYüksek-aralık isteğiDoğrudan sembol ve aralık metni, skaler ifade, aynı/yüksek aralık kullanın.
FINANCIAL_METRIC / FINANCIAL_PERIOD / FINANCIAL_OFFSETFinansal alan veya dönemKatalogdaki metrik, FQ/FY ve 0–39 offset kullanın.
TABLE / TABLE_LIMIT / TABLE_RANGETablo kimliği veya boyutuTanımlı tablo, geçerli koordinat, en fazla dört tablo/256 hücre kullanın.
TABLE_CELL / TABLE_MERGE / TABLE_STYLEHücre, birleşim veya stilHer hücreyi bir kez tanımlayın; çakışan birleşimi kaldırın; katalogdaki hizalamayı seçin.
LOOP_RANGE / BREAKDöngü sınırı veya breakNegatif olmayan, artan sabit sınırlar ve en fazla 256 iterasyon; break blok sonunda olmalı.
DATASET_LIMIT / OUTPUT_LIMITVeri/çıktı tanımı sınırıDört harici bağlam, 32 çizim tanımı ve sekiz sinyal sınırını kontrol edin.
SOURCE_LIMIT / COMPLEXITY / DEPTH / OPERATION_LIMIT / STRING_LIMITKaynak veya hesap bütçesiKodu, döngüleri, metinleri ve gereksiz çıktıları azaltın.
NUMERICGeçersiz sayısal sonuçSıfır payda, negatif karekök veya taşmayı kontrol edin; na değerini koruyun.

Hatalı ve düzeltilmiş örnek

Aşağıdaki kod bilerek hatalıdır; PLACEMENT üretir:

//@selscript=1
indicator("Invalid EMA", overlay=true)
if close > open:
    ema = ta.ema(close, 20)

Hesabı üst seviyeye taşıyın:

//@selscript=1
indicator("Correct EMA", overlay=true)
ema = ta.ema(close, 20)
plot.line(close > open ? ema : na)

Veri erişimi hataları

Sembol çözülememesi, desteklenmeyen zaman aralığı veya geçici veri erişim hatası derleme hatası değildir. Tam borsa kimliğini, ürün türünü ve destek matrisini kontrol edin. FX: grafiğinin çalışması harici FX isteğinin çalışacağını göstermez. Veri hatasını sembolü sessizce değiştirerek gizlemeyin.

Çizgi yok, yalnız fiyat etiketi var

  1. Doğru sürümün uygulandığını kontrol edin; Kaydet tek başına güncellemez.
  2. Stil’de çıktı açık, opaklık sıfırdan büyük ve doğru zaman grubu seçili olsun.
  3. Hesabın başlangıcına yetecek veri yükleyin; tek geçerli nokta sürekli çizgi oluşturmaz.
  4. na veya yanlış panel/fiyat ölçeği olup olmadığını kontrol edin.
  5. Yalnız kütüphane sürümünde oluyorsa yayın sürümünü ve girdilerini özel sürümle karşılaştırın.

Tablo görünmüyor

Son mumun bulunduğunu, hücre koşulunun true olduğunu ve tablonun Stil’de açık olduğunu kontrol edin. Konumu değiştirin; başka panelin altında veya fiyat ölçeği üzerinde kalmış olabilir. Eksik sayıyı "—" ile gösterin.

Sürekli hesaplama ve bekleme

Açık mum güncellemeleri yeniden hesaplama üretebilir. Aynı değişmeyen bağlamda sürekli hata/istek döngüsü varsa bunun normal olduğunu varsaymayın. Hata mesajı, sembol, aralık, yayın/sürüm ve tekrar adımlarıyla destek isteyin; özel kodu paylaşmak zorunda değilsiniz.

Çalışan örnekler · Sınırlar

Diğer doğrulanmış hatalı örnekler

Bu kodlar bilerek hatalıdır; başlıktaki hata kodunu üretmeleri beklenir. Çözüm yukarıdaki kod kataloğundadır.

FUNCTION

//@selscript=1
indicator("Invalid", overlay=true)
plot(close)

INPUT_RANGE

//@selscript=1
indicator("Invalid", overlay=true)
length = input.int("Length", 20, min=1, max=10)

COLOR

//@selscript=1
indicator("Invalid", overlay=true)
plot.line(close, color="red")

HISTORY_INDEX

//@selscript=1
indicator("Invalid", overlay=true)
plot.line(close[-1])

FINANCIAL_PERIOD

//@selscript=1
indicator("Invalid", overlay=true)
value = request.financial(market.symbol, "TOTAL_REVENUE", "TTM")

TABLE_CELL

//@selscript=1
indicator("Invalid", overlay=true)
t = table.new("top_left", 1, 1)
table.cell(t, 0, 0, "A")
table.cell(t, 0, 0, "B")

Bu sayfada