Amibroker için çoklu zaman dilimi macd taraması. Ana periyot seçimini saatlik yaparak bakın. Gösterge olarak ta görebilirsiniz. Gösterge olarak biraz karışık görünüyor. Asıl amaç tarama olarak kullanmak.
Amibroker Macd MTF (Multi Time Frame) - Amibroker Macd Çoklu Zaman Dilimi
görüntü olarak şöyle olması lazım...Kod://Macd Çoklu Zaman Dilimi Gösterge ve Tarama Bir Arada. 10/03/2018 /*Macd göstergesinin saatlik, günlük ve haftalık bazda gösterilmesi ve tarama sonuçlarına yönelik hazırlanmıştır. Taramayı saatlik olarak yapın. Gösterge olarak kullanılması görsel olarak iyi durmadığı için gösterge kısmında "//" çizgiler kullandım. Gösterge olarak kullanmak için "//" çizgileri kaldırmalısınız. */ //https://twitter.com/ert_analiz _SECTION_BEGIN("hourly"); TimeFrameSet(inHourly); macdh=MACD(12, 26); sinyalh=Signal(12, 26, 9); saat = WriteIf(Cross(macdh, sinyalh),"kesişim", WriteIf(Cross(sinyalh, macdh),"kesişim", WriteIf(macdh >= sinyalh,"üstte", WriteIf(sinyalh > macdh,"altta","nötr")))); saatrenk = IIf(Cross(macdh, sinyalh), colorBrightGreen, IIf(Cross(sinyalh, macdh), colorRed,IIf(macdh >= sinyalh, colorGreen, IIf(sinyalh > macdh, colorDarkRed,colorDefault)))); AddTextColumn(saat,"Saat ", 1, colorDefault, saatrenk); AddColumn(macdh,"Macd Saat ", 1.2, colorDefault, saatrenk); TimeFrameRestore(); _SECTION_END(); _SECTION_BEGIN("daily"); TimeFrameSet(inDaily); macdd=MACD(12, 26); sinyald=Signal(12, 26, 9); gun = WriteIf(Cross(macdd, sinyald),"kesişim", WriteIf(Cross(sinyald, macdd),"kesişim", WriteIf(macdd >= sinyald,"üstte", WriteIf(sinyald > macdd,"altta","nötr")))); gunrenk = IIf(Cross(macdd, sinyald), colorBrightGreen, IIf(Cross(sinyald, macdd), colorRed,IIf(macdd >= sinyald, colorGreen, IIf(sinyald > macdd, colorDarkRed,colorDefault)))); AddTextColumn(gun,"Gun ", 1, colorDefault, gunrenk); AddColumn(macdd,"Macd Gun ", 1.2, colorDefault, gunrenk); TimeFrameRestore(); _SECTION_END(); _SECTION_BEGIN("Weekly"); TimeFrameSet(inWeekly); macdw=MACD(12, 26); sinyalw=Signal(12, 26, 9); hafta = WriteIf(Cross(macdw, sinyalw),"kesişim", WriteIf(Cross(sinyalw, macdw),"kesişim", WriteIf(macdw >= sinyalw,"üstte", WriteIf(sinyalw > macdw,"altta","nötr")))); haftarenk = IIf(Cross(macdw, sinyalw), colorBrightGreen, IIf(Cross(sinyalw, macdw), colorRed,IIf(macdw >= sinyalw, colorGreen, IIf(sinyalw > macdw, colorDarkRed,colorDefault)))); AddTextColumn(hafta,"Hafta ", 1, colorDefault, haftarenk); AddColumn(macdw,"Macd Hafta ", 1.2, colorDefault, haftarenk); TimeFrameRestore(); _SECTION_END(); //aşağıdaki Plot kodu ile başlayan satır başlarındaki italik çizgileri kaldırırsanız gösterge olarak ta //görebilirsiniz. //Gösterge olarak biraz karışık görünüyor. //Plot( TimeFrameExpand( macdh, inHourly), "saat", colorBlue ); //Plot( TimeFrameExpand( sinyalh, inHourly), "saatsinyal", colorLightBlue ); //Plot( TimeFrameExpand( macdd, inDaily), "gun", colorRed ); //Plot( TimeFrameExpand( sinyald, inDaily), "gunsinyal", colorDarkRed ); //Plot( TimeFrameExpand( macdw, inWeekly), "hafta", colorGreen ); //Plot( TimeFrameExpand( sinyalw, inWeekly), "haftasinyal", colorLime ); Filter=1; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
macdmtf.jpg
 Yeni Üye
					
					
						Yeni Üye
					
					
                                        
					
						
							
								 
							
								 
							
								 
							
						
					
					
						Matriks'den realtime datayı AMB'ye aktarabilirsiniz, dde ile:
https://www.youtube.com/watch?v=O3wX...b28ThBC66-GA8w
burada anlatmış eleman.
Ayrıca Metastocck verisi ile de çalışabilirsini, ama ben denemedim.
 Yeni Üye
					
					
						Yeni Üye
					
					
                                        
					
						
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
						
					
					
						Yaşar hocanın TKE formülünü amibroker kod olarak nasıl yazarız acaba?
 Üye
					
					
						Üye
					
					
                                        
					
						
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
						
					
					
						Merhaba RSI 30 VE 70 için al sat yaptıramadım.RSI 30 kestiğinde grafik yeşil olarak RSI 70 aşağı kestiğinde grafik kırmızıya dönecek.
Bilen bir arkadaş yardımcı olabilir mi?
PLOT üzerinde olacak.
 Yeni Üye
					
					
						Yeni Üye
					
					
                                        
					
						
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
						
					
					
						_SECTION_BEGIN("RSI ");
SetChartOptions(0,0,chartGrid30|chartGrid70);
periods = Param( "Periods", 15, 1, 200, 1 );
Plot( RSI( periods), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style") );
R= RSI( periods);
Overbought=70;
Oversold=30;
Plot(Overbought,"Overbought Zone",colorBlue);
Plot(Oversold,"Oversold Zone",colorGreen);
Overbought=70;
Oversold=30;
Buy = Cross(R, Oversold) AND R > Oversold;
Sell = Cross(Overbought, R) AND R < Overbought;
PlotShapes(IIf(Sell, shapeDownArrow , shapeNone), colorRed);
PlotShapes(IIf(Buy, shapeUpArrow , shapeNone), colorGreen);
 Üye
					
					
						Üye
					
					
                                        
					
						
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
								 
							
						
					
					
						Saruhan bey,
Cevap için teşekkürler.Evet RSI üzerinde 30 da al çıkıyor 70 de sat çıkıyor.Bunu normal grafik üzerine nasıl uygularız.Yani ayrı bir indicatör değilde normal grafik üzerinde olacak şekilde.
RSI 30 altında Grafil mum çubukları yeşile dönecek 70 üzerinde kırmızıya
 Yeni Üye
					
					
						Yeni Üye
					
					
                                        
					
						
							
								 
							
						
					
					
						
_SECTION_BEGIN("RSI ");
SetChartOptions(0,0,chartGrid30|chartGrid70);
periods = Param( "Periods", 15, 1, 200, 1 );
//Plot( RSI( periods), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style") );
R= RSI( periods);
Overbought=70;
Oversold=30;
//Plot(Overbought,"Overbought Zone",colorBlue);
//Plot(Oversold,"Oversold Zone",colorGreen);
Overbought=70;
Oversold=30;
Buy = Cross(R, Oversold) AND R > Oversold;
Sell = Cross(Overbought, R) AND R < Overbought;
SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
Plot( C, "Close", IIf(R>50,colorGreen,colorRed), styleBar| styleThick|styleNoTitle | ParamStyle("Style") | GetPriceStyle() );
Signalshape=Buy*shapeUpArrow + Sell*shapeDownArrow;
PlotShapes( Signalshape, IIf( Buy, colorGreen, colorRed ),0, IIf( Buy, L, H ) );
Bunu bir denermisiniz ? Bu sistem RSI(periods) değerinin 50 olduğu durumlara göre barlara renk vermektedir. Aşırı alım ve satım bölgenizde ise al-sat sinyalini göstermektedir. İşinize yarayacağını düşünüyorum. Kolaylıklar dilerim.
Yer İmleri