[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 5. - sayfa 297

 
hoz :


ideali yok! Sadece genel bir bakış açısı için, tabiri caizse, kimin nasıl yazdığına bakıyorum. Bazen benimsenebilecek bazı numaralar buluyorum. Bazen kodun hiç okunamadığını görüyorum. Örneğin tarasBY gibi. Elimden geldiğince dene, okumayacak. Okunuyor gibi görünüyor, bölümler halinde anlaşılır ve ardından bam! Ayrıca bir incir değil, net değil. Ve pek çok yer.

Arkadaşlarımın isteği üzerine kuralları çözdüm, orada anlamak kodlarda tarasBY'den daha kolay. Belki bu normaldir, ancak birçok indiricinin onları anlayacağından şüpheliyim. Anlayamayacak kadar ileri olanlar indirmeyecekler... O zaman soru ortaya çıkıyor, neden orada yayınlıyorlar :)

Ben de kullanmıyorum! Neden körü körüne bir şey yapmaya çalışın, her şeyin açık, ne ve neden olması gerekir. Ve yayın reklam içindir ve her şey açıksa, indirecekler ve hiçbir şey sipariş etmeyecekler.
 
tara :
Zaman Greenwich Ortalama Saati ile ölçülür.
Sunucudan bir saatim az ama yine de Orta Avrupa'ya göre yaşıyorum. Ve sunucu GMT ise 3 saatiniz daha olmalıdır. Uyumaya gitti. Patlamalar olmadan iyi geceler!
 

Evet, uyuyorum. İyi geceler.

Katalonya'da ne diyorlar?

 
Buena geceleri! Çok kötü! Ama şimdi gece geç oldu!
 
GaryKa :
hiç de bile
Evet, iki doğal logaritma oranı vardır. Şimdi "Logaritmanın tabanını değiştirme" formülüne bakın. Yani, sonuç bu ifadedir.
bd_LOTSTEP için 10 tabanlı logaritmaya eşdeğerdir. MQL'nin ondalık logaritma için ayrı bir işlevi yoktur, bu nedenle bu dönüşüm kullanılır.


Aynı konudan bahsetti. Kondovy benim dilim ... Görünüşe göre programcı matematikten korkmuyor ya da bu kodu okumaktan bir tür koruma (şaka yapıyorum). Bilmiyorum, benim kişisel görüşüm, matematiğin algoritmayı wild if yerine switch... case ile aynı şekilde basitleştirdiğidir.
 
rigonich :

SetVLine()'ı göster;
 
İyi günler Bir danışmana özel göstergelerin nasıl ekleneceğini bulmaya çalıştım.İyi derliyor ama tamamen yazıyor

yanlış veri, lütfen hatanın ne olduğunu belirtin. "Telif hakkı" dışındaki tüm kodları ekliyorum

harici intPeriodP=12;
harici int Zaman Çerçevesi=0;
çift P_up0,P_up1,FrApPrise;
//+------------------------------------------- --------------------+
//| uzman başlatma işlevi |
//+------------------------------------------- --------------------+
int init()
{
//----

//----
dönüş(0);
}
//+------------------------------------------- --------------------+
//| uzman sıfırlama işlevi |
//+------------------------------------------- --------------------+
int tanım()
{
//----

//----
dönüş(0);
}
//+------------------------------------------- --------------------+
//| uzman başlatma işlevi |
//+------------------------------------------- --------------------+
int başlangıç()
{
//----

P_up0=iCustom(Symbol(),Period(),"Fiyat kanalı",PeriodP,0,0);
P_up1=iCustom(Symbol(),Period(),"reserve-xrust",FrApPrise,0,0);
{Yorum("price channel display=",P_up0,"\n","xrust display=",P_up1);}
//----
dönüş(0);
}



iki gösterge kullandı

1)https://www.mql5.com/ru/code/8908

türkiye Fiyat channel.mq4

2)https://www.mql5.com/ru/code/8318

türkiye Fractal_Level_Xrust_V2.mq4

lütfen yardım edin, 1'i ne kadar gösteriyor ama ikincisi istemiyor?
 
gyfto :

Aynı konudan bahsetti. Kondovy benim dilim ... Görünüşe göre programcı matematikten korkmuyor ya da bu kodu okumaktan bir tür koruma (şaka yapıyorum). Bilmiyorum, benim kişisel görüşüm, matematiğin algoritmayı wild if yerine switch... case ile aynı şekilde basitleştirdiğidir.

Bu kodda bir kusur var. Burada, bağlamdan çıkarılmış:


Mesele şu ki, ifade

 MathCeil ( MathAbs ( MathLog ( 0.25 ) / MathLog ( 10 ))) = 1

Bu nedenle, lotun değeri bir ondalık basamağa yuvarlanacaktır.


Ama okumaya devam et, yardımcı olabilir.

 

Sorumun açıklamasına küçük bir ekleme. Crunch göstergesini yeniden düzenledim. İşte kod

#mülkiyet telif hakkı "#Copyright © 2008, XrustSolution.#"
#özellik bağlantısı "#xrust.ucoz.net#"

#özellik göstergesi_chart_window
extern int TimeFrame=0;//If=0, o zaman geçerli


extern string FrApNam="Ap";//Yukarı Fraktal'e karşılık gelen satır adı
extern string FrDnNam="Dn";//Aşağı fraktala karşılık gelen satır adı

//------------------------------------------------ ------------------------------+
çift FrPrise;
çift FrApPrise=0,FrDnPrise=0;

//+------------------------------------------- ------------------------------+
geçersiz init(){

if(TimeFrame==0){TimeFrame=Period();}
GöstergeShortName("Factal_Level_Xrust"+TimeFrame);
FrApNam=StringConcatenate(FrApNam,TimeFrame);
FrDnNam=StringConcatenate(FrDnNam,TimeFrame);
dönüş;}
geçersiz tanım(){
ObjectDelete(FrDnName);
ObjectDelete(FrApName);
yorum(" ");
dönüş;}
//+------------------------------------------- ------------------------------+
int başlangıç()
{
int counted_bars=IndicatorCounted();
int limiti;
çift tmp;
int i,j,k;
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
limit=bars-counted_bars;
//------------------------------------------------ ------------------------------+

lineap();
LineDn();
string FAP=DoubleToStr((FrApPrise),Rakamlar);
string FDP=DoubleToStr((FrDnPrise),Rakamlar);
int diap=MathRound((FrApPrise-FrDnPrise)/Nokta);
{Comment("ZamanÇerçevesi="+ZamanÇerçevesi+
"\nApPrise111="+FAP+
"\nDnPrise="+FDP+
"\nFraktal Kanal ="
+diap+"Nokta");}

dönüş(0);
}
//------------------------------------------------ ------------------------------+
// Fiyat değiştiyse yeniden çizerek yatay bir çizgi arar |
//------------------------------------------------ ------------------------------+
geçersiz LineDn(){
FrPrise=NormalizeDouble(FindNearFractal(0,TimeFrame,MODE_LOWER),MarketInfo(Symbol(),MODE_DIGITS));
FrPrise=NormalizeDouble(FrPrise,MarketInfo(Symbol(),MODE_DIGITS));
//Yorum(FrPrise);
if(ObjectFind(FrDnNam)==0){
if(ObjectGet(FrDnNam,OBJPROP_PRICE1)==FrPrise){return;}}
FrDnPrise=FrPrise;
ObjectDelete(FrDnName);

WindowRedraw();
dönüş;}
//------------------------------------------------ ------------------------------+
// Fiyat değiştiyse yeniden çizerek yatay bir çizgi arar |
//------------------------------------------------ ------------------------------+
geçersiz LineAp(){
FrPrise=NormalizeDouble(FindNearFractal(0,TimeFrame,MODE_UPPER),MarketInfo(Symbol(),MODE_DIGITS));
FrPrise=NormalizeDouble(FrPrise,MarketInfo(Symbol(),MODE_DIGITS));
if(ObjectFind(FrApNam)==0){
if(ObjectGet(FrApNam,OBJPROP_PRICE1)==FrPrise){return;}}
FrApPrise=FrPrise;
ObjectDelete(FrApName);

WindowRedraw();
dönüş;}
//------------------------------------------------ ------------------------------+
// Kim Saygı ve saygı !!! |
//+------------------------------------------- ------------------------------+
//| Yazar : Kim Igor V. namı diğer KimIV, http://www.kimiv.ru |
//+------------------------------------------- ------------------------------+
//| Sürüm : 07.10.2006 |
//| Açıklama : En yakın fraktal arayın. Fiyat düzeyini döndürür. |
//+------------------------------------------- ------------------------------+
//| Seçenekler: |
//| sy - alet adı ("" veya NULL - geçerli sembol) |
//| tf - zaman çerçevesi ( 0 - mevcut TF) |
//| mod - fraktal tip (MODE_LOWER|MODE_UPPER) |
//+------------------------------------------- ------------------------------+
double FindNearFractal(string sy="0", int tf=0, int modu=MODE_LOWER) {
if (sy=="" || sy=="0") sy=Symbol();
çift f=0;
int d=MarketInfo(sy, MODE_DIGITS), s;
if (d==0) if (StringFind(sy, "JPY")<0) d=4; başka d=2;

for (s=2; s<100; s++) {
f=iFractals(sy, tf, mod, s);
if (f!=0) return(NormalizeDouble(f,d));
}
Print("FindNearFractal(): Fraktal bulunamadı");
dönüş(0);
}

Sadece grafikte çizgilere ihtiyacım yok, sadece iki sayıya ihtiyacım var (bu ruh göstergelerinden birer tane).

 
palomnik :

Sorumun açıklamasına küçük bir ekleme. Crunch göstergesini yeniden düzenledim. İşte kod

Bir cevap istiyorsanız, ayaklarınızı okuyanlara saygı gösterin.

Kod, SRC düğmesi kullanılarak girilmelidir - diğer biçimlendirme araçlarının yanı sıra mesajınızın düzenleme alanının üzerindedir.