Bir göstergeye Renk ekleme

 

Bir sonraki daha yüksek zaman dilimi aşağı inerken, çizelgeye kırmızı bir kare (küçük) yazdırmak istiyorum. Ve yukarı çıkıyorsa beyaz bir kare.

Bunu nasıl yaparım? Bunu çözdükten sonra, başka zaman çerçeveleri ve farklı çubuklar ekleyebilirim.

kodum şimdiye kadar:

// 30 dk akım

double open.30.0 =iCustom(NULL,30," Heiken Ashi ",0,2,0); //Önceki Açık

double close.30.0 =iCustom(NULL,30,"Heiken Ashi",0,3,0); //Önceki kapanış

bool Yukarı.30.0 = (kapat.30.0>aç.30.0);

bool Down.30.0 = (kapat.30.0<aç.30.0);

Yorum ("\n 30 dakikalık akım yukarı veya aşağı " + Up.30.0 +" "+ Down.30.0);

Ancak yorumun "0" veya "1" olması yerine kırmızı veya beyaz kare veya nokta göstermesini istiyorum.


Herhangi bir yardım memnuniyetle karşılanacaktır... Bu görüşte veya web'de arama yaparak hiçbir şey bulamıyorum.

 
mrchuckw :

Bir sonraki daha yüksek zaman dilimi aşağı inerken, çizelgeye kırmızı bir kare (küçük) yazdırmak istiyorum. Ve yukarı çıkıyorsa beyaz bir kare.

Bunu nasıl yaparım? Bunu çözdükten sonra, başka zaman çerçeveleri ve farklı çubuklar ekleyebilirim.

kodum şimdiye kadar:

// 30 dk akım

double open.30.0 =iCustom(NULL,30,"Heiken Ashi",0,2,0); //Önceki Açık

double close.30.0 =iCustom(NULL,30,"Heiken Ashi",0,3,0); //Önceki kapanış

bool Yukarı.30.0 = (kapat.30.0>aç.30.0);

bool Down.30.0 = (kapat.30.0<aç.30.0);

Yorum ("\n 30 dakikalık akım yukarı veya aşağı " + Up.30.0 +" "+ Down.30.0);

Ancak yorumun "0" veya "1" olması yerine kırmızı veya beyaz kare veya nokta göstermesini istiyorum.


Herhangi bir yardım memnuniyetle karşılanacaktır... Bu görüşte veya web'de arama yaparak hiçbir şey bulamıyorum.

Merhaba mrchuckw,

ObjectCreate koduna sahip EA'lar için bu siteyi ve diğer FX forumlarını arayın...

Renkli işaretleri istediğiniz yere yerleştirmek için ObjectCreate'ı kullanırsınız .

Bu yardımcı olur umarım,

Robert


 
Renk göstergesi iki tampon kullanır. Birini değere ve diğerini boş_değere ayarlayın. Kod tabanındaki bazı gösterge kodlarına bakın
 
Teşekkürler Robert!
 

Aşağıdaki kodu kullanıyorum... neden grafiğime beyaz bir dikdörtgen koymuyor?

ObjectCreate("kare", OBJ_RECTANGLE ,0,0,0);

ObjectSet("kare",OBJPROP_XDISTANCE,193);

ObjectSet("kare",OBJPROP_YDISTANCE,48);

ObjectSet("kare",OBJPROP_COLOR,Beyaz);

 

mrchuckw :

Aşağıdaki kodu kullanıyorum... neden grafiğime beyaz bir dikdörtgen koymuyor?

ObjectCreate("kare",OBJ_RECTANGLE,0,0,0);

ObjectSet("kare",OBJPROP_XDISTANCE,193);

ObjectSet("kare",OBJPROP_YDISTANCE,48);

ObjectSet("kare",OBJPROP_COLOR,Beyaz);

OBJ_RECTANGLE 16 Dikdörtgen. 2 koordinat kullanır. Bir koordinat, zaman ve fiyattır. . böyle . . .

 ObjectCreate ( "square" , OBJ_RECTANGLE , 0 , datetime time1, double price1, datetime time2, double price2);

ObjectSet ( "square" , OBJPROP_COLOR , White );



için değerleri doldurmanız gerekir. . tarihsaat saat1, çift fiyat1, tarihsaat saat2, çift fiyat2

Ya da belki bir Etiket, OBJ_LABEL kullanmak ve ardından kare için bir kanat kullanmak istersiniz? https://docs.mql4.com/constants/wingdings

 

Tamam... sanırım. Tarih/saat odaklı olmasını istemiyorum... Sanmıyorum.

İşte istediğim şey. Grafiğin alt kısmında, mevcut çubuğun altına, doldurabileceğim bir kare (kanat 110 ?) yerleştirmek istiyorum.

bir sonraki zaman çerçevesi aşağı gidiyorsa kırmızı, yukarı gidiyorsa beyazla doldurun.

Sonra o çubuk kapanıp bir sonraki çubuk başladığında, karenin eski çubuğun altına taşınmasını ve yeni çubuğun altında yeni bir karenin olmasını istiyorum...

bu mantıklı mı?

peki ObjectCreate() satırı nasıl görünürdü? Tabloda istediğim yere nasıl yerleştiririm yoksa ayrı bir pencere mi kullanmalıyım?

Yardımın için teşekkürler.

 
mrchuckw :

Tamam... sanırım. Tarih/saat odaklı olmasını istemiyorum... Sanmıyorum.

İşte istediğim şey. Grafiğin alt kısmında, mevcut çubuğun altına, doldurabileceğim bir kare (kanat 110 ?) yerleştirmek istiyorum.

bir sonraki zaman çerçevesi aşağı gidiyorsa kırmızı, yukarı gidiyorsa beyazla doldurun.

Sonra o çubuk kapanıp bir sonraki çubuk başladığında, karenin eski çubuğun altına taşınmasını ve yeni çubuğun altında yeni bir karenin olmasını istiyorum...

bu mantıklı mı?

peki ObjectCreate() satırı nasıl görünürdü? Tabloda istediğim yere nasıl yerleştiririm yoksa ayrı bir pencere mi kullanmalıyım?

Yardımın için teşekkürler.

Ah Tamam, yani her çubuğun altında bir göstergeye bağlı olarak beyaz veya kırmızı bir kare istiyorsunuz. . . Nesneleri kullanmayın, Gösterge arabelleklerini kullanın. ( https://docs.mql4.com/customind )

Biri kırmızı kareler için biri beyaz kareler için olmak üzere 2 gösterge tamponu oluşturun, tamponları boş değerlere ayarlayın ( SetIndexEmptyValue ( int index, double value ) ) çubuğun altındaki kareyi almak için Low value - 10 pip çubuklarını kullanın . . . Bu temelde WHRoeder'ın ulaştığı şeydi.

 
Ama fiyatın 10 pip altına koyarsam zıplamaz mı? belki de onu ayrı bir pencereye koymalıyım. Çubuklar ne yaparsa yapsın karenin grafikte aynı yerde olmasını istiyorum.
 
mrchuckw :
Ama fiyatın 10 pip altına koyarsam zıplamaz mı? belki de onu ayrı bir pencereye koymalıyım.
İsterseniz ayrı bir pencereye koyabilirsiniz. . . Çubuğun En Düşük seviyesinin 10 pip altında olduğunu söyledim. . mevcut fiyatın altında değil. İhtiyacınız olan kodun çoğu ortaktır, bunu ayrı bir pencerede yaparsanız, daha sonra çubuğun altındaki bir konuma değiştirmek kolaydır. . .
 
Tamam... bir süre bununla oynamama izin ver. Tüm yardımları takdir ediyorum!