Ievads

Bez pareiziem tirdzniecības instrumentiem jūs nevarēsit veikt efektīvu tehnisko analīzi. Laba tirdzniecības stratēģija palīdzēs izvairīties no izplatītām kļūdām, uzlabos riska pārvaldību un palielinās spēju identificēt un izmantot iespējas.

Daudziem TradingView ir atsauces diagrammu platforma. Piedāvājot tehniskās analīzes rīku centru, šo jaudīgo HTML5 tīmekļa lietojumprogrammu izmanto miljoniem cilvēku, lai uzraudzītu Forex, kriptovalūtu un tradicionālo akciju tirgu kustības.

TradingView piedāvā daudzas jaudīgas funkcijas: tas ļauj pārraudzīt aktīvus daudzās tirdzniecības platformās, kā arī publicēt tirdzniecības idejas savā sociālajā tīklā. Šajā rakstā mēs pievērsīsimies tā pielāgošanas iespējām. Mēs izmantosim Pine Script, pašu TradingView programmēšanas valodu, kas garantē mums detalizētu kontroli pār mūsu grafiskajiem formātiem.

Sāksim!


Kas ir PineScript?

Pine Script ir skriptu valoda, ko varat izmantot, lai modificētu savas TradingView diagrammas. Platforma jau nodrošina daudzas funkcijas, lai to izdarītu, taču Pine Script ļauj spert soli tālāk. Neatkarīgi no tā, vai tā ir jūsu sveču krāsu maiņa vai jaunas stratēģijas atpakaļpārbaude, Pine Editor ļaus jums pielāgot reāllaika diagrammas pēc jūsu ieskata.

Pats kods ir lieliski dokumentēts, tāpēc noteikti skatiet lietotāja rokasgrāmatu, lai iegūtu plašāku informāciju. Mūsu mērķis šajā apmācībā ir apspriest dažus pamatprincipus un iepazīstināt ar rādītājiem, kas var būt noderīgi kriptovalūtas tirdzniecībai.


Iestatījums

Darba sākšana ar Pine Script ir neticami vienkārša. Jebkurš mūsu rakstītais kods darbosies TradingView serveros, lai mēs varētu piekļūt redaktoram un izstrādāt savus skriptus no pārlūkprogrammas – bez papildu lejupielādes vai konfigurācijas.

Šajā apmācībā mēs gatavojamies "kartēt" Bitcoin/Binance USD (BTCBUSD) valūtu pāri. Ja vēl neesat to izdarījis, veiciet šo darbību un reģistrējiet bezmaksas kontu (ir pieejams arī pro abonements, taču tas nav nepieciešams šai rokasgrāmatai).

Sekojiet šai saitei, un jūs atradīsit diagrammu, kas ir līdzīga šim:


Gráfico BTCBUSD en tradingview

Jūsu, iespējams, būs aktuālāks.


Kad esam šeit, mēs vēlēsimies, lai būtu pilna funkcionalitāte — noklikšķiniet uz pogas, lai tai piekļūtu. Tas mums sniegs daudz detalizētāku skatu, zīmēšanas rīkus un iespējas, kā cita starpā zīmēt tendences līnijas.


Gráfico completo en tradingview para BTCBUSD

Pilnvērtīga diagramma. Varat pielāgot laika intervālu, noklikšķinot uz skatiem, kas tiek parādīti virs iezīmētajām cilnēm.


Mēs nerunāsim par to, kā izmantot dažādus pieejamos rīkus, taču, ja jūs ļoti nopietni domājat par tehnisko analīzi, mēs ļoti iesakām ar tiem iepazīties. Apakšējā kreisajā stūrī (norādīts attēlā) jūs redzēsiet virkni dažādu cilņu - noklikšķiniet uz Pine Editor.


Priedes redaktors


captura de pantalla del pine editor


Šis redaktors ir vieta, kur notiek burvība. Mēs tai pateiksim, ko vēlamies darīt, un pēc tam noklikšķināsim uz Pievienot diagrammai, lai redzētu, kā mūsu anotācijas parādās iepriekš. Ņemiet vērā, ka lietas var kļūt sarežģītas, ja vienlaikus iekļaujam vairākas anotācijas, tāpēc mēs tās noņemsim starp dažādiem piemēriem — ar peles labo pogu noklikšķiniet uz diagrammas > Noņemt rādītājus.

Var redzēt, ka mums jau ir pāris koda rindiņas. Turpināsim noklikšķināt uz Pievienot diagrammai, lai redzētu, kas notiek.


Añadiendo primer script al gráfico tradingview


Zem oriģināla ir pievienots otrs grafiks. Jaunā diagramma attēlo tos pašus datus. Virziet kursoru virs Mans skripts un noklikšķiniet uz krustiņa, lai to izdzēstu. Tagad analizēsim kodu detalizēti.

pētījums ("Mans skripts")

Šī pirmā rindiņa vienkārši nosaka mūsu anotāciju. Tam ir nepieciešams tikai nosaukums, kuru vēlaties piešķirt indikatoram (šajā gadījumā "Mans skripts", lai gan ir arī virkne izvēles parametru, ko mēs varam pievienot). Viens no tiem ir pārklājums, kas liek TradingView novietot indikatoru esošajā diagrammā (nevis jaunā segmentā). Kā redzat mūsu pirmajā piemērā, pēc noklusējuma tas šķiet nepatiess. Lai gan mēs to tagad neredzēsim, overlay=true pievieno indikatoru esošajai diagrammai.

sižets (tuvu)

Šī rinda ir instrukcija, lai atzīmētu Bitcoin slēgšanas cenu. plot vienkārši nodrošina mums līniju grafiku, lai gan mēs varam arī parādīt sveces un stieņus, kā mēs drīz redzēsim.

Tagad izmēģināsim tālāk norādītās darbības.

//@version=4
pētījums ("Mans skripts", pārklājums=true)
gabals (atvērts, krāsa = krāsa. violeta)

Kad esat to pievienojis, jums vajadzētu būt iespējai redzēt otru grafiku (kas būs kā sākotnējais, kas pārvietots pa labi). Mēs esam tikai fiksē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 tām ir identiska forma.

Ļoti labi! Mēs atbrīvosimies no pašreizējām anotācijām - atcerieties, lai to izdarītu, ar peles labo pogu noklikšķiniet un atlasiet Noņemt indikatorus. Virziet kursoru virs Bitcoin/BUSD un noklikšķiniet uz pogas Slēpt, lai arī notīrītu pašreizējo diagrammu.

Daudzi tirgotāji dod priekšroku svečturu diagrammām, jo ​​​​tās sniedz mums vairāk informācijas nekā vienkārša diagramma, piemēram, tā, kuru mēs tikko izveidojām. Turpināsim tos pievienot tālāk.

//@version=4
pētījums ("Mans skripts", pārklājums = patiess)
plotcandle (atvērta, augsta, zema, aizvērta)

Tas ir labs sākums, taču krāsu trūkums padara to mazliet maigu. Ideālā gadījumā mums vajadzētu būt sarkanām svecēm, kad atvērtā vērtība ir lielāka par aizvēršanos attiecīgajā periodā, un zaļām svecēm, kad aizvēršanās pārsniedz atvērto. Tātad mēs pievienosim rindu virs funkcijas plotcandle():

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

Tas aplūkos katru sveci un pārbaudīs, vai atvērums ir lielāks vai vienāds ar aizvērumu. Ja tā ir, tas nozīmē, ka cenas šajā periodā ir kritušās, tāpēc tas iekrāsos sveci sarkanā krāsā. Pretējā gadījumā tas krāsos to zaļā krāsā. Mainiet funkciju plotcandle(), lai apstiprinātu šo krāsu shēmu:

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

Izdzēsiet pašreizējos rādītājus, ja vēl neesat to izdarījis, un pievienojiet to diagrammai. Tagad mums vajadzētu būt kaut kam, kas izskatās kā parasta svečtura diagramma.


Gráfico de velas en tradingview

Dārgi!


Atzīmējiet mainīgos vidējos (MA)

Mums jau ir daži pamatelementi. Tagad apskatīsim mūsu pirmo pielāgoto rādītāju — eksponenciālo mainīgo vidējo jeb EMA. Tas ir vērtīgs rīks, jo tas ļauj mums filtrēt jebkādu tirgus troksni un izlīdzināt cenu darbību.

EMA nedaudz atšķiras no vienkāršā mainīgā vidējā (SMA), jo tas piešķir lielāku nozīmi jaunākajiem datiem. Tas mēdz būt aktīvāk reaģēt uz pēkšņām kustībām, un to bieži izmanto īslaicīgām spēlēm (piemēram, dienas tirdzniecībā).


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

Mēs varētu arī attēlot SMA, lai vēlāk varētu salīdzināt abus līdzekļus. Pievienojiet skriptam šo rindiņu:

plot(sma(tuvu, 10))

Tādējādi tiks parādīts iepriekšējo desmit dienu vidējais rādītājs. Pielāgojiet skaitli iekavās, lai redzētu, kā mainās līkne, ņemot vērā dažādus garumus.


Media móvil basada en los 10 días anteriores

SMA, pamatojoties uz iepriekšējām desmit dienām.


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

EMA būs nedaudz grūtāk saprast, taču nav jāuztraucas. Vispirms sadalīsim formulu:

EMA = (Aizvērt — iepriekšējās dienas EMA) * reizinātājs — iepriekšējās dienas EMA

Tātad, ko tas mums stāsta? Katrai dienai mēs aprēķinām jaunu mainīgo vidējo, pamatojoties uz iepriekšējās dienas rādītāju. Reizinātājs ir tas, kas “sver” pēdējo periodu, un to aprēķina pēc šādas formulas:

Reizinātājs = 2 / (EMA garums + 1)

Tāpat kā ar vienkāršiem mainīgiem vidējiem rādītājiem, mums ir jānorāda, cik ilgi EMA būs. Sintaktiski EMA attēlošanas funkcija ir līdzīga SMA funkcijai. Atzīmējiet to blakus SMA, lai jūs varētu salīdzināt abus:

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


EMA y SMA en un gráfico de tradingview

Var redzēt, ka starp abiem MA veidiem ir neliela atšķirība.


➠ Vai domājat par to, kā sākt darboties kriptovalūtu pasaulē? Pērciet Bitcoin vietnē Binance!


Iebūvētie skripti

Līdz šim kodu esam rakstījuši manuāli, lai jūs ar to iepazītos. Tālāk mēs iepazīstināsim ar elementu, kas var ietaupīt laiku, it īpaši, ja mēs gatavojamies rakstīt sarežģītākus skriptus un mēs nevēlamies to darīt no nulles.

Redaktora augšējā labajā stūrī noklikšķiniet uz Jauns. Jūs redzēsit nolaižamo izvēlni ar visu veidu dažādiem tehniskajiem rādītājiem. Noklikšķiniet uz Moving Average Exponential, lai skatītu EMA indikatora avota kodu.



Media móvil exponencial en un script pine

Turpiniet un pievienojiet to diagrammai.


Šī atšķiras no mūsējās – jūs atpazīsiet ievades() funkcijas. Tie ir lieliski no lietojamības viedokļa, jo varat noklikšķināt uz šī lodziņa…


Modificando un gráfico en la interfaz de tradingview


...un viegli mainiet dažas vērtības uznirstošajā logā, noklikšķinot uz iestatījumu riteņa.


cambiar las entradas en EMA


Lai to parādītu, nākamajā skriptā mēs pievienosim dažas ievades () funkcijas.


Atzīmējiet relatīvā spēka indeksa (RSI) indikatoru

Relatīvā spēka indekss (RSI) ir vēl viens būtisks tehniskās analīzes rādītājs. Tas ir pazīstams kā "impulsa" indikators, kas nozīmē, ka tas mēra ātrumu, kādā aktīvi tiek pirkti un pārdoti. RSI rādītājs, kas tiek parādīts skalā no 0 līdz 100, mēģina informēt investorus par to, vai aktīvi ir "pārpirkti" vai "pārpārdoti". Parasti īpašumu var uzskatīt par pārpārdotu, ja tā vērtējums ir mazāks vai vienāds ar 30, un pārpirkts ar punktu skaitu, kas ir lielāks vai vienāds ar 70.

Ja dodaties uz Jauna > RSI stratēģija, varat to pārbaudīt pats. RSI parasti mēra 14 (t.i., 14 stundu vai 14 dienu) periodos, taču jūs varat mainīt šos iestatījumus, lai tie atbilstu savai stratēģijai.

Pievienojiet to diagrammai. Tagad jums vajadzētu redzēt dažas bultiņas (ko kodā definē funkcija strategy.entry()). RsiLE norāda uz iespējamu iespēju pagarināt aktīvu, jo tas var tikt pārpārdots. RsiSE izceļ iespējamos punktus, kuros var īsināt aktīvu, ja tas ir pārpirkts. Paturiet prātā, ka, tāpat kā ar visiem rādītājiem, jums nevajadzētu paļauties uz tiem kā nekļūdīgu pierādījumu tam, ka cenas pieaugs vai kritīsies.


Atpakaļpārbaude

Mums ir veids, kā pārbaudīt savus pielāgotos rādītājus. Lai gan pagātnes veiktspēja negarantē turpmākos rezultātus, mūsu skriptu atpakaļpārbaude var sniegt mums priekšstatu par to, cik efektīvi tie uztver signālus.

Zemāk mēs sniegsim vienkārša skripta piemēru. Izveidosim vienkāršu stratēģiju, kas ieiet garajā pozīcijā, kad BTC cena nokrītas zem $11,000 un iziet no pozīcijas, kad cena pārsniedz $11,300. Tātad mēs varam redzēt, cik ienesīga šī stratēģija būtu bijusi vēsturiski.

//@version=4
stratēģija ("ALaLuna", pārklājums=true)
ievadiet = ievade (11000)
izeja = ievade (11300)
cena = aizvērt

if (cena <= ievadiet)
    stratēģija.entry("CompraLaCaída", stratēģija.long, komentārs = "CompraLaCaída")
ja (cena >= izeja)
    Strategia.close_all(comment = "VendeLasNoticias")

Šeit mēs esam definējuši ievadi un izvadi kā mainīgos; tās ir abas ievades, kas nozīmē, ka mēs vēlāk varam tās mainīt grafikā. Mēs arī iestatām cenu mainīgo, kas beidzas katra perioda beigās. Tātad mums ir zināma loģika if paziņojumu veidā. Ja daļa kvadrātiekavās ir patiesa, tiks izpildīts tālāk norādītais bloks. Pretējā gadījumā tas tiks izlaists.

Tātad, ja cena ir mazāka vai vienāda ar mūsu vēlamo ierakstu, pirmā izteiksme tiek novērtēta uz patiesu un mēs atvērsim garo pozīciju. Kad cena būs vienāda ar vai pārsniedz vēlamo izlaidi, tiks aktivizēts otrais bloks, aizverot visas atvērtās pozīcijas.

Mēs anotēsim diagrammu ar bultiņām, kas parāda, kur mēs ieejam/izejam, tāpēc mēs norādām, ko šos punktus apzīmēt ar komentāra parametru (šajā piemērā "BuyTheDip" un "SellTheNews"). Nokopējiet kodu un pievienojiet to grafikam.


indicador activo en el gráfico tradingview

Tagad diagrammā varat redzēt rādītājus. Jums var būt nepieciešams tālināt.


TradingView automātiski piemēro jūsu noteikumus vecākiem datiem. Jūs arī ievērosit, ka tas pārslēdzas no Pine redaktora uz cilni Strategy Tester. Tas ļauj jums redzēt jūsu potenciālās peļņas pārskatu, darījumu sarakstu un katru jūsu individuālo sniegumu.


Trading view strategy tester

Pozīcijas, kurās esam iekļuvuši un izgājuši.


Salieciet gabalus kopā

Ir pienācis laiks uzrakstīt savu skriptu, izmantojot dažus no līdz šim redzētajiem jēdzieniem. Mēs apvienosim EMA un RSI un izmantosim to vērtības, lai krāsotu sveces, kas atgriezīs informāciju, ko varam viegli vizualizēt.

To nevajadzētu uzskatīt par finanšu padomu; Nav objektīvi pareiza veida, kā izmantot šo rādītāju. Tāpat kā visi citi, tas ir jāizmanto kopā ar citiem rīkiem, lai izstrādātu savu stratēģiju.

Tagad strādāsim pie sava jaunā skripta. Noņemiet visus rādītājus no diagrammas un paslēpiet arī Bitcoin/BUSD diagrammu, lai mums būtu tīrs audekls, pie kā strādāt.

Sāksim ar mūsu pētījuma definēšanu. Jūtieties brīvi nosaukt to kā vēlaties, tikai noteikti iestatiet pārklājumu = true.

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

Atcerieties mūsu EMA formulu no iepriekšējiem. Mums ir jānorāda reizinātājs ar EMA garumu. Pārveidosim to par ievadi, kurai nepieciešams vesels skaitlis (tāpēc bez zīmēm aiz komata). Mēs arī iestatīsim minimumu, kas var būt (minval), un noklusējuma vērtību (defval).

pētījums(title="Binance Academy Script", overlay=true)
emaLength = ievade (nosaukums = "EMA garums", veids = ievade.integer, defval = 25, minval = 0)


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

pētījums(title="Binance Academy Script", overlay=true)
emaLength = ievade (nosaukums = "EMA garums", veids = ievade.integer, defval = 25, minval = 0)
emaVal = ema(aizvērt, emagarums)


Lieliski. Par RSI. Mēs tam piešķirsim garumu līdzīgi:

pētījums(title="Binance Academy Script", overlay=true)
emaLength = ievade (nosaukums = "EMA garums", veids = ievade.integer, defval = 25, minval = 0)
emaVal = ema(aizvērt, emagarums)
rsiLength = ievade (nosaukums = "RSI garums", veids = ievade.integer, defval = 25, minval = 0)

Un tagad mēs varam to aprēķināt:

pētījums(title="Binance Academy Script", overlay=true)
emaLength = ievade (nosaukums = "EMA garums", veids = ievade.integer, defval = 25, minval = 0)
emaVal = ema(aizvērt, emagarums)
rsiLength = ievade (nosaukums = "RSI garums", veids = ievade.integer, defval = 25, minval = 0)
rsiVal = rsi(tuvu, rsigarums)

Šajā posmā mēs apkoposim loģiku, kas krāso sveces, pamatojoties uz EMA un RSI vērtībām. Pieņemsim situāciju, kad (a) sveces slēgšanas cena pārsniedz EMA un (b) kur RSI ir virs 50.

Jo? Jūs varat izlemt, ka šos rādītājus var izmantot kopā, lai norādītu, kad īstermiņā vai ilgtermiņā iegādāties Bitcoin. Piemēram, jūs varētu domāt, ka abu nosacījumu izpilde nozīmē, ka ir piemērots laiks, lai ievadītu garo pozīciju. Vai arī otrādi, varat to izmantot, lai informētu jūs, kad nevajadzētu maksāt, pat ja citi rādītāji liecina par pretējo.

Tātad mūsu nākamā rinda izskatīsies šādi:

pētījums(title="Binance Academy Script", overlay=true)
emaLength = ievade (nosaukums = "EMA garums", veids = ievade.integer, defval = 25, minval = 0)
emaVal = ema(aizvērt, emagarums)
rsiLength = ievade (nosaukums = "RSI garums", veids = ievade.integer, defval = 25, minval = 0)
rsiVal = rsi(tuvu, rsigarums)
krāsas = tuvu > emaVal un rsiVal > 50 ? krāsa.zaļa : krāsa.sarkana

Ja mēs to tulkojam vienkāršā valodā, mēs vienkārši sakām, ka, ja EMA vērtība pārsniedz slēgšanas cenu un RSI rādītājs pārsniedz 50, mēs iekrāsosim sveci zaļā krāsā. Pretējā gadījumā mēs to iekrāsosim sarkanā krāsā.

Tālāk uzzīmējiet EMA:

pētījums(title="Binance Academy Script", overlay=true)
emaLength = ievade (nosaukums = "EMA garums", veids = ievade.integer, defval = 25, minval = 0)
emaVal = ema(aizvērt, emagarums)
rsiLength = ievade (nosaukums = "RSI garums", veids = ievade.integer, defval = 25, minval = 0)
rsiVal = rsi(tuvu, rsigarums)
krāsas = tuvu > emaVal un rsiVal > 50 ? krāsa.zaļa : krāsa.sarkana
gabals (emaVal, "EMA")

Visbeidzot, uzzīmējiet sveces, noteikti iekļaujot krāsas parametru:

pētījums(title="Binance Academy Script", overlay=true)
emaLength = ievade (nosaukums = "EMA garums", veids = ievade.integer, defval = 25, minval = 0)
emaVal = ema(aizvērt, emagarums)
rsiLength = ievade (nosaukums = "RSI garums", veids = ievade.integer, defval = 25, minval = 0)
rsiVal = rsi(tuvu, rsigarums)
krāsas = tuvu > emaVal un rsiVal > 50 ? krāsa.zaļa : krāsa.sarkana
gabals (emaVal, "EMA")
plotcandle (atvērta, augsta, zema, tuvu, krāsa = krāsas)

Un tāds ir scenārijs! Pievienojiet to diagrammai, lai redzētu to darbībā.


Script de Tradingview en acción

BTC/BUSD diagramma ar EMA/RSI indikatoru.


Noslēgumā

Šajā rakstā mēs aplūkojam dažus pamata piemērus tam, ko varat darīt ar TradingView Pine redaktoru. Šajā brīdī noteikti izveidojiet vienkāršas anotācijas cenu diagrammās, lai iegūtu papildu informāciju no saviem rādītājiem.

Mūs šeit interesēja tikai daži indikatori, taču ir viegli ģenerēt sarežģītākus rādītājus, izvēloties New iebūvētos skriptus vai rakstot tos pats.

Trūkst iedvesmas? Šie raksti var sniegt jums dažas idejas jūsu nākamajam projektam:

  • Īss paraboliskā SAR indikatora ceļvedis

  • Rokasgrāmata Fibonači retracementu apguvei

  • Ievads vadošajos un atpaliekošajos rādītājos (vadošie/atpaliekošie rādītāji)

  • MACD indikators paskaidrots