Nasıl kodlanır? - sayfa 315

 

...

Sabit 0,5 için ihtiyacınız varsa, MathSqrt (x) kullanabilirsiniz.

Ama eğer 0,5 kısım değişkeni için hesaplamaya ihtiyacınız varsa MathPow(x,0.5) kullanabilirsiniz (0.5 kısım da değiştirilebilir)

dasio:
Merhaba.

Bu işlemi hesaplamama izin veren bir fonksiyon var mı?

x^0,5 (x= değeri bilin)

Ve başka bir soru.

5 haneli brokerim var. Bilinen değerin yalnızca ilk 4 ondalık basamağı elde edilebilir mi? Teşekkür ederim

Teşekkür ederim
 
mladen:
Sabit 0,5 için ihtiyacınız varsa MathSqrt(x) kullanabilirsiniz Ancak 0,5 kısım değişkeni için de hesaplamaya ihtiyacınız varsa MathPow(x,0.5) kullanabilirsiniz (0,5 kısım da değiştirilebilir)

Cevabın için teşekkürler. İyi çalışıyor.

İkinci istek için mi?

5 haneli komisyoncu varsa, kod bana 5 haneli komisyoncu ile ayrıcalık veriyor ama 4 haneli olarak ihtiyacım var. Değeri 5'ten 4 haneye nasıl çevirebilirim?

Teşekkür ederim

 

dasio

Bunun gibi bir şey kullanın:

price4digit = NormalizeDouble(price,4);
dasio:
Cevabın için teşekkürler. İyi çalışıyor.

İkinci istek için mi?

5 haneli komisyoncu varsa, kod bana 5 haneli komisyoncu ile ayrıcalık veriyor ama 4 haneli olarak ihtiyacım var. Değeri 5'ten 4 haneye nasıl çevirebilirim?

Teşekkür ederim
 

Kavşak noktasının bulunması

Merhaba,

Aşağıdaki göstergeyi sevdim:

#property copyright "Kalenzo"

#property link "bartlomiej.gorski@gmail.com"

#property indicator_color1 DodgerBlue

#property indicator_color2 Lime

#property indicator_buffers 2

extern int MoMPeriod = 14;

extern int MaType = MODE_EMA;

extern int MaPeriod = 50;

extern int TimeFrame = 60;

double mom[],

ema[],

momTF[],

emaTF[];

#property indicator_separate_window

//+------------------------------------------------------------------+

//| Custom indicator initialization function |

//+------------------------------------------------------------------+

int init()

{

//---- indicators

IndicatorBuffers(4);

SetIndexBuffer(0,mom);

SetIndexBuffer(1,ema);

SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,2);

SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,1);

SetIndexBuffer(2,momTF);

SetIndexBuffer(3,emaTF);

IndicatorShortName("MTF Momentum "+tf());

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator deinitialization function |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator iteration function |

//+------------------------------------------------------------------+

int start()

{

//----

int bbshift,limit,limitTF;

limit=Bars;

limitTF = iBars(Symbol(),TimeFrame);

for(int i=0; i<limitTF; i++) momTF = iMomentum(Symbol(),TimeFrame,MoMPeriod,PRICE_CLOSE,i);

for(int j=0; j<limitTF; j++) emaTF[j] = iMAOnArray(momTF,0,MaPeriod,0,MaType,j);

for(int t=0; t<limit; t++)

{

bbshift = iBarShift(Symbol(),TimeFrame,Time[t]);

mom[t] = momTF;

ema[t] = emaTF;

}

//----

return(0);

}

[/PHP]

But I can't get the intersection point from this two lines with my ea, even I can't get the right value from the indicator, which is displayed.

Why?

I tried this for example:

[PHP]

x1= iCustom(NULL,0,"MOM_EMA_MTF",14,MODE_EMA,50,60,0,1);

 
mladen:
dasio

Bunun gibi bir şey kullanın:

price4digit = NormalizeDouble(price,4);

merhaba mladen,

nasıl kodladığım doğru mu?

Pivot = NormalizeDouble(( PDayHigh + PDayLow + Close ) / 3,4)

MathPow((MathPow(Pivot,0.5)+Sayı(tanımlı)),2)

Teşekkür ederim

 

...

İlk satır tamam

Bu satırla ilgili bir soru:

MathPow((MathPow(Pivot,0.5)+Number(defined)),2);

Bu çizginin tam olarak amacı nedir? Yazılma şekli, (pivot'un karekökü + tanımlı artış) karesini döndürür. Aklından geçen bu muydu?

dasio:
merhaba mladen,

nasıl kodladığım doğru mu?

Pivot = NormalizeDouble(( PDayHigh + PDayLow + Close ) / 3,4)

MathPow((MathPow(Pivot,0.5)+Sayı(tanımlı)),2)

Teşekkür ederim
 
mladen:
İlk satır tamam

Bu satırla ilgili bir soru:

MathPow((MathPow(Pivot,0.5)+Number(defined)),2);
Bu çizginin tam amacı nedir? Yazılma şekli, (pivot'un karekökü + tanımlı artış) karesini döndürür. Aklından geçen bu muydu?

Evet, önce MathPow(Pivot,0.5)+Number(tanımlı) değerini hesaplar ve sonra sonucun karesini hesaplamam gerekir.

Bir örnek.

10 = Döndürme

1 = tanımlı sayı

((10^0,5)+1)^2'ye sahibim Sonuç:

((3.162)+1)^2 ----> (4,162)^2------>17,324

 

O zaman her şey yolunda

dasio:
Evet, önce MathPow(Pivot,0.5)+Number(tanımlı) değerini hesaplar ve sonra sonucun karesini hesaplamam gerekir.
 
mladen:
O zaman her şey yolunda

Tamam teşekkürler.

Ama bu operasyona da ihtiyacım var

(MathPow((MathPow((Pivot*10000),0.5)+sayı),2)/10000)

Ama manuel olarak hesaplarsam bana farklı bir değer veriyor.

Fark yüksek.

1,2989'a sahip olup olmadığımı açıklığa kavuşturmak için nasıl pivot işlemi yapmam gerekiyor 12989 ve tüm işlemlerden sonra sonucu 10000'e bölmem gerekiyor.

Bana neden farklı bir değer verdiğini bilmiyorum

 

dasio

Bu çizginin "niyetini" bilmiyorum. Matematiksel olarak bu satırda yanlış bir şey yok ("sayıyı" 0 olarak ayarlayın ve Pivot ile tam olarak aynı değeri döndüreceğini göreceksiniz, bu da doğru çalıştığı anlamına gelir, yani beklediğinizden farklıysa, farkı yaratan tek kısım "sayı"nın eklenmesidir). Bu çizgiyle tam olarak ne hesaplamaya çalışıyorsunuz?

dasio:
Tamam teşekkürler.

Ama bu operasyona da ihtiyacım var

(MathPow((MathPow((Pivot*10000),0.5)+sayı),2)/10000)

Ama manuel olarak hesaplarsam bana farklı bir değer veriyor.

Fark yüksek.

1,2989'a sahip olup olmadığımı açıklığa kavuşturmak için nasıl pivot işlemi yapmam gerekiyor 12989 ve tüm işlemlerden sonra sonucu 10000'e bölmem gerekiyor.

Bana neden farklı bir değer verdiğini bilmiyorum
Neden: