/********************************************************* Alexis C. Montenegro © December 2004 Use and/or modify this code freely. If you redistribute it please include this and/or any other comment blocks and a description of any changes you make. **********************************************************/ function preMain() { setPriceStudy(true); setStudyTitle("Ichimoku"); setCursorLabelName("Tenkan", 0); setCursorLabelName("Kijun", 1); setCursorLabelName("Chikou", 2); setCursorLabelName("SenkouA", 3); setCursorLabelName("SenkouB", 4); setDefaultBarStyle(PS_SOLID, 0); setDefaultBarStyle(PS_SOLID, 1); setDefaultBarStyle(PS_SOLID, 2); setDefaultBarStyle(PS_SOLID, 3); setDefaultBarStyle(PS_SOLID, 4); setDefaultBarFgColor(Color.red, 0); setDefaultBarFgColor(Color.blue, 1); setDefaultBarFgColor(Color.magenta, 2); setDefaultBarFgColor(Color.purple, 3); setDefaultBarFgColor(Color.green, 4); setDefaultBarThickness(1, 0); setDefaultBarThickness(1, 1); setDefaultBarThickness(1, 2); setDefaultBarThickness(1, 3); setDefaultBarThickness(1, 4); setPlotType(PLOTTYPE_LINE, 0); setPlotType(PLOTTYPE_LINE, 1); setPlotType(PLOTTYPE_LINE, 2); setPlotType(PLOTTYPE_LINE, 3); setPlotType(PLOTTYPE_LINE, 4); } var bInit = false; var vInterval = null; var Tenkan = null; var Kijun = null; var xChikou = null; var Senkou = null; function main(Interval) { if (bInit==false) { if(Interval==null) Interval = getInterval(); vInterval = Interval; Tenkan = middleDonchian(9,inv(vInterval)); Kijun = middleDonchian(26,inv(vInterval)); xChikou = close(inv(vInterval)); Senkou = efsInternal("calcSenkou",inv(vInterval)); bInit=true; } if(vInterval==getInterval()){ var Chikou = offsetSeries(xChikou,-26); } else { var Chikou = close(26,inv(vInterval)); } var SenkouA = getSeries(Senkou); var SenkouB = getSeries(Senkou,1); if (SenkouA>SenkouB) setBarBgColor(Color.paleyellow,0,SenkouB,SenkouA); if (SenkouA