0 beğenilme 0 beğenilmeme
142 kez görüntülendi

10 luk ortlamam var ve bu ort. nın 2 katsayı çarpımı ile sLong ve sShort olarak 2 farklı ortalama elde ediyorum. ma nın bu iki ortlalamanın altında ve ya üstünde olduğu duruma göre trail adında bir yeni indikatörü ; Long ve Short olma durumuna göre kesişimlerini çizdiriyorum. 

matriks te bunu nasıl indikatör haline getiririm?

___________________________________

ma:=mov(c,10,s);

Coef1:=2;

Coef2:=2.2;

 

sLong:=ma*Coef1;

sShort:=ma*Coef2;

 

Long olma şartı:= bir önceki POS eşit değilse 1`e ve ma (1 bar önceki trail den büyükse) Long tur

Short olma şartı:= bir önceki POS eşit değilse -1`e ve ma (1 bar önceki trail den küçükse) Short tur

 

trail:= Long ise sorgula, (ma-sLong) yap: Short ise sorgula (ma+short) yap : bir önce ki POS > 0 ise sorgula MAX(ma - sLong, bir bar önceki trail değeri) : bir önce ki POS < 0 ise sorgula MAX(ma + sShort, bir bar önceki trail değeri) : ma;

 

POS:= Long ise sorgula doğru ise 1 :  Short ise sorgula -1 :  bir önce ki POS değeri;

_________________________________________________

 

tradingview için orjinal kod ve eregli üzerindeki görüntüyü en altta bulabilirsiniz. Kodu pine editör e olduğu gibi kopyalarsanız yardımcı olacaktır naçizane.https://www.tradingview.com/x/E13M7Gfr/

 

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © szrtaner

//@version=5
indicator('IZCI [livetrend]', shorttitle='IZCI', overlay=true)
length = input(10)

pLong = input(2.0) / 100
pShort = input(2.2) / 100


izci(l) =>
    Ma = nz(ta.ema(close, l),close)
   
    slLong =  Ma * pLong  // Stop Loss Long
    slShort =  Ma * pShort  // Stop Loss Short
    trail = 0.0
    trail := nz(trail[1])
    pos = 0
    pos := nz(pos[1])
    long = pos != 1 and Ma > trail
    short = pos != -1 and Ma < trail
    trail := long ? Ma - slLong : short ? Ma + slShort : pos > 0 ? math.max(Ma - slLong, trail) : pos < 0 ? math.min(Ma + slShort, trail) : Ma
    pos := long ? 1 : short ? -1 : pos
    [Ma, trail]
[m, t] = izci(length)
long = m > t
short = m < t

f1 = plot(m, color=color.new(color.lime, 0), title='Average')

f2 = plot(t, color=color.new(color.red, 0), title='Trailling Stop')

fill(f1, f2, color=m > t ? color.new(color.lime, 85) : color.new(color.red, 85))

İstediğim şey aslında MOST indikatörün açık koduymuş. 

 

Matriks Most Açık kodu

yuzde:=2;
per1:=3;
ort:=mov(c,per1,E);

ortp:=ort-(ort*yuzde/100);
ortm:=ort+(ort*yuzde/100);

line1:=if(ort<prev,ortp,if(ortp>prev,ortp,prev));
line2:=if(ort>prev,ortm,if(ortm<prev,ortm,prev));

k1:=cross(ort,ref(line2,-1));
k2:=cross(ref(line1,-1),ort);

s1:=barssince(k1)<barssince(k2);
s2:=if(s1=-1,line1,line2);
ort;s2

Maalesef Anıl beyin MOST indikatörü piyasada herkes kendine devşirmiş kimi TOMA kimi IZCI demiş . sorun bundan kaynaklı. Anıl beyi hakkını teslim edip onere etseler olmazmıydı. üzücü.

İndikatör Pozisyonları ve Değerleri kategorisinde (16 puan) tarafından
tarafından düzenlendi | 142 kez görüntülendi

Bu soruya cevap vermek için lütfen giriş yapınız veya kayıt olunuz.

Hoş geldiniz, Matriks Destek Platformu sizlere sorularınızın hızlıca cevaplanması için bir ortam sağlar. Sorduğunuz ve cevapladığınız soruların ve yorumlarınızın aldığı oylar üzerinden puan kazanırsınız. Puan sistemine bağlı kampanyamızla ücretsiz kullanım avantajlarından faydalanabilirsiniz.



7,565 soru
7,568 cevap
4,421 yorum
9,696 kullanıcı