Rajandran R Founder of Marketcalls and Co-Founder Algomojo. Full-Time Derivative Trader. Expert in Designing Trading Systems (Amibroker, Ninjatrader, Metatrader, Python, Pinescript). Trading the markets since 2006. Mentoring Traders on Trading System Designing, Market Profile, Orderflow and Trade Automation.

Colour Changing Candlesticks

40 sec read

Here is a simple demonstration about how to vary the color of the according to our strategy. For demo purpose i had used the ADX Indicator which uses positive and
negative directional indicators +DI and -DI and in amibroker terms it is represented as PDI() and MDI(). And we are not going to concentrate on ADX in this demo.


 
Sample code is shown below

_SECTION_BEGIN(“Price”);
_N(Title = StrFormat(“{{NAME}} – {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g,
Close %g (%.1f%%) Vol ” +WriteVal( V, 1.0 ) +” {{VALUES}}”, O, H, L, C ));
range = Param(“Periods”, 14, 2, 200, 1 );
SetChartOptions(0,chartShowArrows|chartShowDates);
Plot( C, “Close”, IIf( PDI(range) > MDI(range), ParamColor(“Up Color”, colorGreen ),
ParamColor(“Down Color”, colorRed )), styleNoTitle | ParamStyle(“Style”) | GetPriceStyle() );
_SECTION_END();

A green candle will be plotted if +DI is greater than -DI which denotes Uptrend and Red candle will be plotted if +DI is lesser than -DI which denotes downtrend and the following code does all the magic in toggling the colors of the candle.

Plot( C, “Close”, IIf( PDI(range) > MDI(range), ParamColor(“Up Color”, colorGreen ),
ParamColor(“Down Color”, colorRed )), styleNoTitle | ParamStyle(“Style”) | GetPriceStyle() );

Rajandran R Founder of Marketcalls and Co-Founder Algomojo. Full-Time Derivative Trader. Expert in Designing Trading Systems (Amibroker, Ninjatrader, Metatrader, Python, Pinescript). Trading the markets since 2006. Mentoring Traders on Trading System Designing, Market Profile, Orderflow and Trade Automation.

What is QuantZilla?

Quantzilla is 75+ hours of code mentoring program designed for noncoders who want to learn the coding program right from designing indicators, scanners, trading...
Rajandran R
58 sec read

Things to Consider While Building a Bracket Order Execution…

Building a Bracket Order Strategy is the most demanded request we got from most of the algomojo traders. This article explains the list of...
Rajandran R
12 min read

PlaceOrder – Multi Broker Exectuion Code Snippets for Amibroker

This tutorial explains how to build a button trading right from scratch and with a click of a button how you can send orders...
Rajandran R
7 min read

6 Replies to “Colour Changing Candlesticks”

  1. hi raj sir

    i hope u must on holiday keep it to maximum sir

    but i do urge to post one note of afl regarding how to use AUX1 n AUX2 on charts, scan and exploration in whole as an array in amibroker 5.30 as i searched alot for it but didnt found any solution to it and many people i think must be searching for it
    and thomas provided that by using OLE language, COM or addtocomposite we can access it.
    but i tried it far as could but not able to make it
    plz sir due luk at it when u get back from holiday
    GOD BLESS U!

    regards
    ankit

  2. Sir

    I copied the code given on this page (http://www.marketcalls.in/afl-code/colour-changing-candlesticks.html) exactly as it is

    But it is showing error.

    Pl help me.

    This is what my code looks like :-

    _SECTION_BEGIN(“Price”);
    _N(Title = StrFormat(“{{Name}} – {{Interval}} {{Date}} Open %g, Hi %g, Lo %g,
    Close %g (%.1f%%) Vol ” +WriteVal( V, 1.0 ) +” {{VALUES}}”, O, H, L, C ));
    range = Param(“Periods”, 14, 2, 200, 1 );
    SetChartOptions(0,chartShowArrows|chartShowDates);
    Plot( C, “Close”, IIf( PDI(range) > MDI(range), ParamColor(“Up Color”, colorGreen ),
    ParamColor(“Down Color”, colorRed )), styleNoTitle | ParamStyle(“Style”) | GetPriceStyle() );
    _SECTION_END();

    Plot( C, “Close”, IIf( PDI(range) > MDI(range), ParamColor(“Up Color”, colorGreen ),
    ParamColor(“Down Color”, colorRed )), styleNoTitle | ParamStyle(“Style”) | GetPriceStyle() );

    1. The error is due to formatting of the __*Quotation*__symbols, Change all the quotations symbols manually and re-apply, the error would not show up.

      _SECTION_BEGIN(“Price”);
      _N(Title = StrFormat(“{{NAME}} – {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g,
      Close %g (%.1f%%) Vol ” +WriteVal( V, 1.0 ) +” {{VALUES}}”, O, H, L, C ));
      range = Param(“Periods”, 14, 2, 200, 1 );
      SetChartOptions(0,chartShowArrows|chartShowDates);
      Plot( C, “Close”, IIf( PDI(range) > MDI(range), ParamColor(“Up Color”, colorGreen ),
      ParamColor(“Down Color”, colorRed )), styleNoTitle | ParamStyle(“Style”) | GetPriceStyle() );
      _SECTION_END();

Leave a Reply to Minal Cancel reply

Get Notifications, Alerts on Market Updates, Trading Tools, Automation & More