Data sejarah tidak termasuk catatan pergerakan harga intra-bar; hanya data pergerakkan harga buka, tinggi, rendah dan dekat (OHLC). Ini membawa kepada skrip yang kadang-kadang berfungsi secara berbeza pada data sejarah dan dalam masa nyata, di mana hanya harga buka yang diketahui dan di mana harga biasanya akan bergerak berkali-kali sebelum nilai akhir tinggi, rendah dan tutup bagi bar masa nyata ditetapkan setelah bar masa nyata ditutup.
Sekiranya kita menambahkan skrip pada carta, tunggu sehingga ia mengira pada sebilangan bar masa nyata dan kemudian muatkan semula halaman. Anda kadang-kadang akan melihat plot skrip berubah sedikit. Perkara ini adalah salah satu daripada beberapa jenis kelakuan yang biasa disebut sebagai 'indicator repainting'. Ini adalah jenis repanting yang menjadi perhatian kita di sini dan ia adalah apa yang akan kita kenal ketika menggunakan repanting. Disebabkan apabila ciri-ciri tertentu digunakan dalam skrip, mereka akan menghitung secara berbeza pada bar sejarah dan masa nyata.
Jenis kelakuan lain, yang betul atau yang salah, yang dikenali sebagai repanting, adalah termasuk memplot dengan pengimbangan negatif pada bar masa lalu dan menggunakan maklumat masa depan yang tidak tersedia yang diterima melalui panggilan yang salah difahami ke fungsi sekuriti. Hal ini dapat mengakibatkan data tidak tersedia dalam masa nyata, ke dalam pengiraan skrip.
Tidak semua petunjuk merujuk kepada jenis 'repainting' yang kita bincangkan di sini. Dalam kebanyakan kes, ia bergantung pada apakah fungsi atau konstruk bahasa tertentu digunakan atau tidak digunakan dalam kod tersebut. Sebagai makluman tindak balas repainting ini bukan pepijat, tetapi ia terhasil dari perbezaan yang wujud antara bar bersejarah dan maklumat bar masa nyata di TradingView.
Kita dapat melihat 'repainting' dalam kes berikut:
1. Strategi menggunakan calc_on_every_tick = true. Strategi dengan parameter calc_on_every_tick = false juga mungkin terdedah kepada 'repainting', tetapi pada tahap yang rendah.
2. Menggunakan kod keselamatan untuk meminta data dari resolusi yang lebih tinggi daripada resolusi simbol utama carta:
// Add this study on 1 minute chart
//@version=4
study("My Script")
c = security(syminfo.tickerid, "5", close)
plot(close)
plot(c, color=color.red)
3. Using security to request data from a resolution lower than the resolution of chart’s main symbol (more information here):
Kajian ini akan mengira secara berbeza pada data masa nyata dan sejarah, tanpa mengira nilai parameter lookahead (lihat Understanding lookahead).
3. Menggunakan keselamatan untuk meminta data dari resolusi yang lebih rendah daripada resolusi simbol utama carta (maklumat tambahan di sini):
// Add this study on 5 minute chart
//@version=3
study("My Script")
c = security(tickerid, "1", close, lookahead=false)
plot(close)
plot(c, color=red)
4. All scripts calculations depend on their starting point. Intraday data gets aligned to the beginning of the week, month or year, depending on the resolution. Due to this, the results produced by such scripts can differ from time to time. These are cases where scripts will be relying on a starting point:
There is a dependency between the resolution and the alignment of a starting point:
The following limitations of history lengths are taken into account when processing the data:
5. Changes in historical data, for example, due to a split.
6. Presence of the following variables in the script usually leads to repainting:
Sekiranya lookahead = false, repainting akan berlaku. Apabila lookahead = true, kemungkinan 'repainting' adalah kurang. Ia mungkin berlaku apabila kemas kini 1 dan 5 minit saling bertemu antara satu sama lain.
4. Semua pengiraan skrip bergantung pada titik permulaannya. Data intra-hari diselaraskan dengan awal minggu, bulan atau tahun, bergantung pada resolusi. Oleh sebab itu, hasil akhir yang dihasilkan oleh skrip tersebut adalah berbeza dari semasa ke semasa. Terdapat kes di mana skrip akan bergantung pada titik permulaan:
Terdapat saling bergantungan antara resolusi dan penjajaran titik permulaan:
Berikut adalah batasan pada panjang sejarah yang diambil kira semasa memproses data:
5. Perubahan data sejarah, misalnya, kerana pecahan.
6. Kehadiran pemboleh ubah berikut dalam skrip biasanya membawa kepada repainting :