Ievads

Bez uzticamiem tirdzniecības instrumentiem nav iespējams veikt augstas kvalitātes tehnisko analīzi. Spēcīga tirdzniecības stratēģija palīdzēs izvairīties no izplatītām kļūdām, efektīvāk pārvaldīt risku un atrast un īstenot vairāk tirdzniecības iespēju.

Lielākajai daļai tirgotāju TradingView ir populāra diagrammu analīzes platforma. Ar funkcijām bagāta HTML5 tīmekļa lietojumprogramma, kas piedāvā dažādus tehniskās analīzes rīkus. To izmanto miljoniem lietotāju, lai izsekotu kustībām forex, kriptovalūtu un tradicionālajos akciju tirgos.

TradingView piedāvā virkni jaudīgu funkciju, kas ļauj izsekot aktīviem vairākās tirdzniecības platformās un dalīties ar tirdzniecības idejām paša TradingView sociālajā tīklā. Šajā rakstā mēs apskatīsim TradingView pielāgošanas iespējas. Mēs izmantosim Pine Script — TradingView programmēšanas valodu, kas nodrošina detalizētu diagrammu izkārtojumu kontroli.

Sāksim!


Kas ir Pine Script?

Pine Script ir skriptu valoda, kas ļauj pielāgot diagrammas pakalpojumā TradingView. Platforma jau sniedz jums daudz funkcionalitātes šim nolūkam, taču Pine Script ļauj paplašināt iespējas. Neatkarīgi no tā, vai vēlaties mainīt sveču krāsas vai pārbaudīt jaunu stratēģiju, varat pielāgot reāllaika diagrammas, kā vēlaties, izmantojot Pine redaktoru.

Vietnē ir pieejama detalizēta dokumentācija, tāpēc jūs vienmēr varat skatīt detalizētus norādījumus lietotāja rokasgrāmatā. Šajā rakstā mēs vēlamies aplūkot Pine Script pamatus un parādīt, kā izveidot indikatorus, kas var būt noderīgi, tirgojot kriptovalūtu.


Uzstādīt

Darba sākšana ar Pine Script ir ļoti vienkārša. Viss mūsu rakstītais kods darbojas uz TradingView serveriem, un mums ir pieejams koda redaktors un mēs varam rakstīt skriptus tieši pārlūkprogrammā – nav nepieciešams lejupielādēt trešo pušu programmas vai neko konfigurēt.

Šajā apmācībā mēs attēlosim Bitcoin/Binance USD (BTCBUSD) valūtu pāri. Ja vēl neesat reģistrējies pakalpojumā TradingView, izveidojiet bezmaksas kontu (ir pieejams arī profesionāls abonements, taču šim rakstam tas nav nepieciešams).

Sekojiet šai saitei, un jūs redzēsiet šādu grafiku:


график BTCBUSD на tradingview

Jūsu grafikam ir jābūt atjauninātam.


Mums ir nepieciešams detalizēts grafiks - lai pārietu uz to, noklikšķiniet uz norādītās pogas. Mēs redzēsim detalizētākus diagrammas, zīmēšanas rīkus un tendenču līnijas rīkus.


Подробный график BTCBUSD на tradingview

Detalizēts grafiks. Panelī virs atlasītajām cilnēm varat iestatīt vēlamos laika posmus.


Tagad mēs neapspriedīsim dažādu pieejamo rīku izmantošanu, taču, ja jūs nopietni domājat par tehnisko analīzi, mēs ļoti iesakām ar tiem iepazīties. Apakšējā kreisajā stūrī (attēlā izcelts) ir vairākas cilnes - noklikšķiniet uz Pine Editor.


Priedes redaktors


скриншот редактора pine


Šajā redaktorā notiek īstā maģija. Lai redzētu rezultātu, redaktorā ir jāieraksta instrukcijas un pēc tam noklikšķiniet uz pogas “Pievienot diagrammai”. Lūdzu, ņemiet vērā: ja vienlaikus lietojat vairākus pielāgotus indikatorus, diagramma var kļūt netīra, tāpēc mēs tos noņemsim starp piemēriem (labā peles poga uz diagrammas > Noņemt indikatorus).

Kā redzat, mums jau ir pāris koda rindiņas. Noklikšķināsim uz pogas "Pievienot diagrammai" un redzēsim, kas notiek.


Добавление первого скрипта на график tradingview


Otrs parādījās zem sākotnējā grafika. Jaunajā diagrammā ir parādīti tie paši dati. Lai dzēstu otro grafiku, virziet kursoru virs Mans skripts un noklikšķiniet uz krustiņa. Tagad apskatīsim kodu.

pētījums ("Mans skripts")

Pirmajā rindā ir norādīts diagrammas nosaukums. Tam nepieciešams tikai indikatora nosaukums (šajā gadījumā "Mans skripts"), bet var iestatīt arī papildu parametrus. Viens no tiem ir pārklājums. Tas nozīmē indikatora novietošanu esošajā diagrammā (nevis jaunā segmentā). Kā redzams no pirmā piemēra, pēc noklusējuma tas ir iestatīts uz false. Mēs to tagad nepārbaudīsim, taču, iestatot overlay=true, indikators tiks pievienots esošajai diagrammai.

sižets (tuvu)

Šī rinda ir instrukcija Bitcoin slēgšanas cenas uzzīmēšanai; plot norāda līniju diagrammu, bet mēs varam pievienot sveces un stieņus.

Tagad apsveriet šādu piemēru:

//@version=4 pētījums("Mans skripts", pārklājums=true) plot(open, color=color.purple)

Pievienojot šo rindiņu redaktoram, jums vajadzētu redzēt otru grafiku (kas izskatās kā sākotnējais, bet pārvietots pa labi). Mēs esam uzzīmējuši sākuma cenu, un, tā kā pašreizējās dienas atvēršana ir iepriekšējās dienas slēgšana, ir loģiski, ka diagrammas ir vienādas.

Lieliski! Izdzēsīsim izveidotās diagrammas (atcerieties, ka, lai to izdarītu, ar peles labo pogu noklikšķiniet uz diagrammas un atlasiet “Dzēst indikatorus”). Lai notīrītu pašreizējo diagrammu, virziet kursoru virs Bitcoin/BUSD diagrammas un noklikšķiniet uz pogas Slēpt.

Daudzi tirgotāji izmanto svečturu diagrammas, jo tās sniedz vairāk informācijas nekā parastās diagrammas (piemēram, tās, kuras mēs tikko izveidojām). Tagad pievienosim diagrammai sveces.

//@version=4 pētījums("Mans skripts", overlay=true) plotcandle(atvērts, augsts, zems, aizvērts)

Tas ir labāk, bet krāsu trūkuma dēļ grafiks ir neizteiksmīgs. Ideālā gadījumā mums ir jānozīmē sarkanas sveces, ja sākuma cena laika posmā ir lielāka par slēgšanas cenu, un zaļa, ja slēgšanas cena ir lielāka par sākuma cenu. Virs funkcijas plotcandle() pievienosim rindiņu:

//@version=4 pētījums("Mans skripts", overlay=true) krāsas = atvērts >= aizvērt ? krāsa.sarkana: krāsa.zaļa svece (atvērta, augsta, zema, aizvērta)

Šajā rindā mēs izejam cauri visām svecēm un pārbaudām: vai sākuma cena ir lielāka vai vienāda ar slēgšanas cenu?Ja tā, tad cena šajā periodā ir kritusies un svece būs sarkana. Citādi – zaļš. Lai pievienotu krāsu shēmu, mainiet funkciju plotcandle(), kā parādīts tālāk:

//@version=4 pētījums("Mans skripts", overlay=true) krāsas = atvērts >= aizvērt ? krāsa.sarkana : krāsa.zaļa svece (atvērta, augsta, zema, tuvu, krāsa = krāsas)

Ja vēl neesat to izdarījis, izdzēsiet iepriekšējo diagrammu un pievienojiet jaunu. Tagad mums vajadzētu būt parastai svečturu diagrammai.


Свечной график на tradingview

Brīnišķīgi!


Slīdošo vidējo vērtību veidošana (MA)

Mēs esam apskatījuši dažus pamatus. Pāriesim pie sava pirmā pielāgotā indikatora, eksponenciālā mainīgā vidējā jeb EMA, izveides. Tas ir vērtīgs rādītājs, jo tas filtrē tirgus troksni un izlīdzina cenu izmaiņas.

EMA atšķiras no vienkāršā mainīgā vidējā (SMA) ar to, ka tā piešķir lielāku nozīmi jaunākajiem datiem. EMA aktīvāk reaģē uz negaidītām tirgus izmaiņām un bieži tiek izmantota īstermiņa stratēģijās (piemēram, dienas tirdzniecībā).


Vienkāršais mainīgais vidējais (SMA)

Mēs varam attēlot SMA un pēc tam salīdzināt to ar EMA. Pievienojiet skriptam šādu rindiņu:

plot(sma(tuvu, 10))

Šajā rindā tiks rādīts vidējais rādītājs par iepriekšējām 10 dienām. Iekavās varat iestatīt dažādas perioda vērtības un redzēt, kā mainās līkne.


Простая 10-дневная скользящая средняя

SMA iepriekšējām 10 dienām


Eksponenciālais mainīgais vidējais (EMA)

EMA ir nedaudz grūtāk saprast, taču neuztraucieties. Vispirms apskatīsim formulu:

EMA = (slēgšanas cena - iepriekšējās dienas EMA) * reizinātājs - iepriekšējās dienas EMA

Ko saka šī formula? Katrai dienai mēs aprēķinām jaunu mainīgo vidējo, pamatojoties uz iepriekšējo. Reizinātājs ir iepriekšējā perioda “svars”, ko aprēķina pēc šādas formulas:

reizinātājs = 2 / (EMA periods + 1)

Tāpat kā vienkārša mainīgā vidējā gadījumā, jums ir jānorāda EMA izveides periods. EMA funkcijas sintakse ir līdzīga funkcijai SMA. Skaidrības labad uzzīmēsim EMA diagrammu blakus SMA:

//@version=4 pētījums("Mans skripts", pārklājums=true) plot(sma(close, 10)) plot(ema(close,10))


EMA и SMA на одном графике tradingview

Atšķirība starp SMA un EMA


➟ Vai domājat par to, kur sākt darbu ar kriptovalūtām? Pērciet Bitcoin vietnē Binance!


Iebūvētie skripti

Līdz šim kodu rakstījām manuāli, lai to saprastu sīkāk. Bet izpētīsim rīku, kas ietaupīs mūsu laiku, it īpaši, ja mēs rakstām sarežģītākus skriptus un nevēlamies to darīt no nulles.

Redaktora augšējā labajā stūrī noklikšķiniet uz pogas "Jauns". Parādīsies nolaižamā izvēlne ar dažādiem tehniskajiem rādītājiem. Lai redzētu EMA indikatora avota kodu, noklikšķiniet uz vienuma “Eksponenciālais mainīgais vidējais”.



Экспоненциальная скользящая средняя в pine script

Pievienojiet kodu diagrammai


Veidnes kods atšķirsies no tā, ko mēs rakstījām – pievērsiet uzmanību input() funkcijām. Tie ir ērti, jo diagrammas augšējā kreisajā stūrī var noklikšķināt...


Изменение графика в интерфейсе tradingview


...un uznirstošajā logā dažas vērtības var viegli mainīt, nospiežot iestatījumu ritenīti.


изменение входных параметров EMA


Lai to parādītu, nākamajam skriptam pievienosim divas ievades () funkcijas.


Relatīvā spēka indeksa (RSI) indikatora konstruēšana

Relatīvā spēka indekss (RSI) ir vēl viens galvenais tehniskās analīzes rādītājs. Tas ir pazīstams kā impulsa indikators. Tas nozīmē, ka tas parāda aktīvu pirkšanas un pārdošanas likmi. RSI indekss, kas svārstās no 0 līdz 100, norāda tirgotājiem, vai aktīvs ir pārpirkts vai pārpārdots. Parasti aktīvs tiek uzskatīts par pārpārdotu, ja RSI ir mazāks vai vienāds ar 30, un par pārpirktu, ja RSI ir lielāks vai vienāds ar 70.

Varat to pārbaudīt pats — dodieties uz izvēlni Jauna > RSI stratēģija. RSI parasti mēra 14 vienību (t.i., 14 stundu vai 14 dienu) periodos, taču jūs varat pielāgot šo parametru, lai tas atbilstu savai stratēģijai.

Pievienojiet to diagrammai. Jums vajadzētu redzēt dažas bultiņas (kodā definē funkcija stratēģija.entry()). RsiLE norāda uz aktīva garās pozīcijas potenciālu, jo to var pārdot tālāk. RsiSE arī norāda uz iespēju, ka kāds aktīvs tiek īss, jo tas var būt pārpirkts. Lūdzu, ņemiet vērā: tāpat kā uz visiem rādītājiem, jums nevajadzētu paļauties uz tiem kā garantiju, ka cenas samazināsies/paaugstināsies.


Testēšanas stratēģijas

Mēs varam pārbaudīt savus rādītājus. Lai gan vēsturisko datu veiktspēja negarantē turpmākos rezultātus, vēsturisko datu skriptu testēšana var sniegt priekšstatu par to, cik efektīvi tie ir signālu izsekošanā.

Kā piemēru ņemsim vienkāršu skriptu. Izveidosim vienkāršu stratēģiju, kurā ievadīsim garo pozīciju, kad BTC cena nokrītas zem 11 000 USD, un slēgsim pozīciju, kad cena pārsniegs 11 300 USD. Mēs varam aplūkot, cik šī stratēģija ir ienesīga, ja to izmanto tirgus vēsturē.

//@version=4 stratēģija("ToDaMoon", overlay=true) enter = input(11000) exit = input(11300) price = close if (price <= enter)     strategy.entry("BuyTheDip", strategy.long , comment="BuyTheDip") if (cena >= iziet)    strategio.close_all(comment="SellTheNews")

Šeit mēs esam definējuši ieejas un izejas līmeņus kā mainīgos — abi ir ievade, kas nozīmē, ka mēs varam tos mainīt diagrammā. Mēs arī izveidojām cenu mainīgo, kas ņem katra perioda beigu vērtību. Loģika tiek parādīta if paziņojumu veidā. Ja daļa iekavās ir patiesa, tiks izpildīts bloks ar atkāpi zem tā. Pretējā gadījumā tas tiks ignorēts.

Tātad, ja cena ir mazāka vai vienāda ar vēlamo ievades vērtību, pirmā izteiksme tiek novērtēta kā patiesa, un mēs ejam ilgi. Kad cena ir vienāda ar vai pārsniedz vēlamo izejas vērtību, tiks aktivizēts otrais bloks, aizverot visas atvērtās pozīcijas.

Turklāt diagrammā ar bultiņām parādījām pozīcijās ieiešanas un izejas no tām vietas. Mēs atzīmējām šos punktus ar komentāru parametru (šajā piemērā "BuyTheDip" un "SellTheNews"). Nokopējiet kodu un pievienojiet to diagrammai.


активный индикатор на графике tradingview

Rādītāji diagrammā. Varat tālināt


TradingView automātiski piemēro jūsu noteikumus vecākiem datiem. Lūdzu, ņemiet vērā, ka esat pārslēdzies no Pine Editor uz cilni Strategy Tester. Šeit jūs varat analizēt iespējamo peļņu, apskatīt darījumu sarakstu un katra darījuma veiktspēju.


Тестирование стратегии на Tradingview

Atvērtas un slēgtas pozīcijas


Apkoposim to

Tagad mēs varam rakstīt savu skriptu, izmantojot pazīstamus rīkus. Mēs apvienosim EMA un RSI vienā diagrammā un pēc tam izmantosim to vērtības, lai krāsotu sveces, lai izveidotu informāciju, ko var viegli vizualizēt.

Grafika rezultāti nav finanšu padoms – nav objektīvi pareiza veida, kā tos izmantot. Tāpat kā citi rādītāji, tas ir jāizmanto kopā ar citiem instrumentiem, lai izstrādātu savu stratēģiju.

Rakstīsim savu jauno scenāriju. Lai būtu brīva vieta darbam, noņemiet no diagrammas iepriekšējos rādītājus un paslēpiet Bitcoin/BUSD diagrammu.

Sāksim ar mūsu pētījuma definēšanu. Nosauciet to, kā vēlaties, tikai pārliecinieties, ka pārklājums=true.

pētījums(title="Binance Academy Script", overlay=true)

Atcerēsimies iepriekš aprakstīto EMA formulu. Mums ir jānosaka EMA perioda reizinātājs. Padarīsim to par mainīgo (ievadi), kas ir vesels skaitlis (tas ir, bez zīmēm aiz komata). Mēs arī iestatīsim minimālo (minval) un noklusējuma vērtību (defval).

pētījums(title="Binance Academy Script", overlay=true) emaLength = input(title="EMA Length", type=input.integer, defval=25, minval=0)


Izmantojot šo jauno mainīgo, mēs varam aprēķināt katras sveces EMA vērtību:

pētījums(title="Binance Academy Script", overlay=true) emaGarums = input(title="EMA Length", type=input.integer, defval=25, minval=0) emaVal = ema(close, emaLength)


Labi. Tagad pāriesim uz RSI. Noteiksim tā periodu līdzīgi:

pētījums(title="Binance Academy Script", overlay=true) emaGarums = input(title="EMA Length", type=input.integer, defval=25, minval=0) emaVal = ema(close, emaLength) rsiLength = ievade (title="RSI Length", type=input.integer, defval=25, minval=0)

Tagad mēs varam to aprēķināt:

pētījums(title="Binance Academy Script", overlay=true) emaGarums = input(title="EMA Length", type=input.integer, defval=25, minval=0) emaVal = ema(close, emaLength) rsiLength = ievade (title="RSI garums", tips=input.integer, defval=25, minval=0) rsiVal = rsi(close, rsiLength)

Šajā posmā iestatīsim loģiku, kas krāso sveces atkarībā no EMA un RSI vērtībām. Apsveriet situāciju, kad sveces slēgšanas cena pārsniedz EMA (a) un kad RSI ir virs 50 (b).

Kāpēc tieši šie nosacījumi? Šos rādītājus var izmantot kopā, lai norādītu, kad Bitcoin lietot ilgi vai īsā laikā. Piemēram, ja abi nosacījumi ir izpildīti, tas var nozīmēt, ka tagad ir piemērots laiks garās pozīcijas atvēršanai. Vai, gluži otrādi, varat izmantot šo rādītāju, lai saprastu, kad nevajadzētu samazināties, pat ja citi rādītāji norāda pretējo.

Nākamā mūsu skripta rinda izskatīsies šādi:

pētījums(title="Binance Academy Script", overlay=true) emaGarums = input(title="EMA Length", type=input.integer, defval=25, minval=0) emaVal = ema(close, emaLength) rsiLength = ievade (title="RSI Length", type=input.integer, defval=25, minval=0) rsiVal = rsi(close, rsiLength) krāsas = tuvu > emaVal un rsiVal > 50? krāsa.zaļa : krāsa.sarkana

Ja mēs pārtulkojam kodu parastajā valodā, izrādās, ka, ja EMA vērtība ir lielāka par slēgšanas cenu un RSI vērtība ir lielāka par 50, mēs iekrāsojam sveci zaļā krāsā. Pretējā gadījumā krāsa būs sarkana.

Pievienot EMA:

pētījums(title="Binance Academy Script", overlay=true) emaGarums = input(title="EMA Length", type=input.integer, defval=25, minval=0) emaVal = ema(close, emaLength) rsiLength = ievade (title="RSI Length", type=input.integer, defval=25, minval=0) rsiVal = rsi(close, rsiLength) krāsas = tuvu > emaVal un rsiVal > 50? krāsa.zaļa : krāsa.sarkans gabals(emaVal, "EMA")

Visbeidzot, uzzīmēsim sveces, pievienojot krāsas parametru:

pētījums(title="Binance Academy Script", overlay=true) emaGarums = input(title="EMA Length", type=input.integer, defval=25, minval=0) emaVal = ema(close, emaLength) rsiLength = ievade (title="RSI Length", type=input.integer, defval=25, minval=0) rsiVal = rsi(close, rsiLength) krāsas = tuvu > emaVal un rsiVal > 50? krāsa.zaļa : krāsa.sarkans gabals(emaVal, "EMA") plotcandle(atvērta, augsta, zema, tuvu, krāsa = krāsas)

Šeit ir viss mūsu skripts! Lai to redzētu darbībā, pievienojiet to savai diagrammai.


Скрипт Tradingview в действии

BTC/BUSD diagramma ar EMA/RSI indikatoru.


Kopsavilkums

Šajā rakstā mēs apskatījām dažus vienkāršus piemērus, kā izmantot TradingView Pine redaktoru. Tagad, ja esat pabeidzis mūsu piemērus, jau varat izveidot vienkāršus parakstus cenu diagrammām un iegūt papildu informāciju no saviem rādītājiem.

Šajā rakstā mēs pieskārāmies tikai dažiem rādītājiem, taču sarežģītākus varat analizēt pats, atlasot iebūvētos skriptus no saraksta Jauns vai rakstot tos pats.

Vai meklējat iedvesmu? Idejas savam nākamajam projektam varat iegūt no tālāk esošajiem rakstiem:

  • Īsa rokasgrāmata paraboliskās SAR sistēmas lietošanai

  • Rokasgrāmata Fibonači līniju lietošanai

  • Vadošie un atpalikušie rādītāji

  • Kas ir MACD indikators