Announcement

Collapse

Looking for a User App or Add-On built by the NinjaTrader community?

Visit NinjaTrader EcoSystem and our free User App Share!

Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
See more
See less

Partner 728x90

Collapse

new supertrend

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    new supertrend

    I wonder if anyone could convert this to N7 , im only interested in trend mode 1 like in the thumbnail , trend mode 0 just looks like a normal supertrend.
    Attached Files

    #2
    how do I upload mt4 files ?

    Comment


      #3
      Originally posted by price777999 View Post
      how do I upload mt4 files ?
      Cut and paste it here, and put the code tags around it.

      Comment


        #4
        [/HTML]//+------------------------------------------------------------------+
        //| Kolier_SuperTrend_Indi.mq4 |
        //| Copyright 2010, KoliEr Li. |
        //| http://kolier.li |
        //+------------------------------------------------------------------+
        /*
        * I here get paid to program for you. Just $15 for all scripts.
        *
        * I am a bachelor major in Financial-Mathematics.
        * I am good at programming in MQL for Meta Trader 4 platform. Senior Level. Have done hundreds of scripts.
        * No matter what it is, create or modify any indicators, expert advisors and scripts.
        * I will ask these jobs which are not too large, price from $15, surely refundable if you are not appreciate mine.
        * All products will deliver in 3 days.
        * Also, I am providing EA, Indicator and Trade System Improvement Consultant services, contact me for the detail.
        * If you need to have it done, don't hesitate to contact me at: [email protected]
        */

        //+------------------------------------------------------------------+
        //| Indicator Properties |
        //+------------------------------------------------------------------+
        #property copyright "Copyright 2010, KoliEr Li."
        #property link "http://kolier.li"
        // Client:
        // Tags: SuperTrend, ATR
        // Revision: 7

        /* Change Logs */
        /*
        2. 1.0.2(2011-04-06) Fix some repaint trail.
        3. 1.0.3(2011-05-26) Add SetIndexDrawBegin() to be EA friendly.
        4. 2.0.4(2011-08-01) Use main line to restruct the implementation.
        5. 2.1.5(2011-09-01) Export for EA trading.
        6. 2.1.6(2011-09-02) Make GlobalVariable unique to avoid conflicts.
        7. 2.1.7(2011-09-02) Fix minor bugs.
        */

        #property indicator_chart_window
        #property indicator_buffers 3
        #property indicator_color1 White
        #property indicator_color2 Red
        #property indicator_color3 Red
        #property indicator_width1 1
        #property indicator_width2 2
        #property indicator_width3 2

        //+------------------------------------------------------------------+
        //| Universal Constants |
        //+------------------------------------------------------------------+
        #define PHASE_NONE 0
        #define PHASE_BUY 1
        #define PHASE_SELL -1

        //+------------------------------------------------------------------+
        //| User input variables |
        //+------------------------------------------------------------------+
        extern string AdvisorName = "Kolier_SuperTrend_Indi";
        extern string AdvisorVersion = "2.1.7"; // The version number of this script
        extern string ProjectPage = "http://kolier.li/project/kolier-supertrend-indi"; // The project landing page
        extern int BarsToCount = 0; // Set to 0 to count all bars, if >0, set more to calculate more bars
        extern int TrendMode = 1; // 0=Show line same as SuperTrend.mq4, 1=New way to show trend line
        extern bool EA_Export = true; // Export value for EA to trade.
        // iATR
        extern string ATR_Indicator = "http://kolier.li/example/mt4-iatr-system-average-true-range";
        extern int ATR_Period = 10;
        extern double ATR_Multiplier = 8.0;


        //+------------------------------------------------------------------+
        //| Universal variables |
        //+------------------------------------------------------------------+
        double buffer_line_up[], buffer_line_down[], buffer_line_main[];
        double atr, band_upper, band_lower;
        string prefix="";

        //+------------------------------------------------------------------+
        //| Custom indicator initialization function |
        //+------------------------------------------------------------------+
        int init()
        {
        IndicatorShortName(AdvisorName);
        IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS));

        SetIndexBuffer(0, buffer_line_main);
        SetIndexLabel(0, "SuperTrend");
        SetIndexBuffer(1, buffer_line_up);
        SetIndexLabel(1, "Up Trend");
        SetIndexBuffer(2, buffer_line_down);
        SetIndexLabel(2, "Down Trend");


        SetIndexDrawBegin(0, ATR_Period);

        prefix = AdvisorName+"_"+Symbol()+"_"+Period()+"_"+TrendMod e+"_"+ATR_Period+"_"+DoubleToStr(ATR_Multiplier,2) ;

        return(0);
        }

        //+------------------------------------------------------------------+
        //| Custom indicator deinitialization function |
        //+------------------------------------------------------------------+
        int deinit()
        {
        GlobalVariablesDeleteAll(AdvisorName);

        return(0);
        }

        //+------------------------------------------------------------------+
        //| Custom indicator iteration function |
        //+------------------------------------------------------------------+
        int start()
        {
        int bars_counted = IndicatorCounted();
        if(bars_counted < 0) {
        return(1);
        }
        else if(bars_counted > 0) {
        bars_counted--;
        }
        int limit = Bars - bars_counted;
        if(BarsToCount>0 && limit>BarsToCount) {
        limit = BarsToCount;
        }

        int i;
        for(i=limit; i>=0; i--) {
        atr = iATR(Symbol(), 0, ATR_Period, i);
        band_upper = (High[i]+Low[i])/2 + ATR_Multiplier * atr;
        band_lower = (High[i]+Low[i])/2 - ATR_Multiplier * atr;

        if(buffer_line_main[i+1]==EMPTY_VALUE) {
        buffer_line_main[i] = (High[i+1]+Low[i+1])/2;
        }

        if(Close[i]>buffer_line_main[i+1] && buffer_line_main[i+1]!=EMPTY_VALUE) {
        if(buffer_line_main[i] == EMPTY_VALUE) {
        if(TrendMode == 1) {
        if(band_lower>buffer_line_main[i+1]) {
        buffer_line_main[i] = band_lower;
        }
        else {
        buffer_line_main[i] = buffer_line_main[i+1];
        }
        }
        else if(TrendMode == 0) {
        if(Close[i+1]>=buffer_line_main[i+1]) {
        if(band_lower>buffer_line_main[i+1]) {
        buffer_line_main[i] = band_lower;
        }
        else {
        buffer_line_main[i] = buffer_line_main[i+1];
        }
        }
        else if(Close[i+1]<buffer_line_main[i+1]) {
        buffer_line_main[i] = band_lower;
        }
        }
        }
        else if(Close[i+1]>buffer_line_main[i+1]) {
        if(band_lower>buffer_line_main[i+1]) {
        buffer_line_main[i] = band_lower;
        }
        else {
        buffer_line_main[i] = buffer_line_main[i+1];
        }
        }
        else if(Close[i+1]<buffer_line_main[i+1]) {
        buffer_line_main[i] = band_lower;
        }
        buffer_line_up[i] = buffer_line_main[i];
        buffer_line_up[i+1] = buffer_line_main[i+1];
        if(buffer_line_down[i]!=EMPTY_VALUE) {
        buffer_line_down[i] = EMPTY_VALUE;
        }
        }

        if(Close[i]<buffer_line_main[i+1] && buffer_line_main[i+1]!=EMPTY_VALUE) {
        if(buffer_line_main[i] == EMPTY_VALUE) {
        if(TrendMode == 1) {
        if(band_upper<buffer_line_main[i+1]) {
        buffer_line_main[i] = band_upper;
        }
        else {
        buffer_line_main[i] = buffer_line_main[i+1];
        }
        }
        else if(TrendMode == 0) {
        if(Close[i+1]<buffer_line_main[i+1]) {
        if(band_upper<buffer_line_main[i+1]) {
        buffer_line_main[i] = band_upper;
        }
        else {
        buffer_line_main[i] = buffer_line_main[i+1];
        }
        }
        else if(Close[i+1]>buffer_line_main[i+1]) {
        buffer_line_main[i] = band_upper;
        }
        }
        }
        else if(Close[i+1]<buffer_line_main[i+1]) {
        if(band_upper<buffer_line_main[i+1]) {
        buffer_line_main[i] = band_upper;
        }
        else {
        buffer_line_main[i] = buffer_line_main[i+1];
        }
        }
        else if(Close[i+1]>buffer_line_main[i+1]) {
        buffer_line_main[i] = band_upper;
        }
        buffer_line_down[i] = buffer_line_main[i];
        buffer_line_down[i+1] = buffer_line_main[i+1];
        if(buffer_line_up[i]!=EMPTY_VALUE) {
        buffer_line_up[i] = EMPTY_VALUE;
        }
        }
        }

        if(EA_Export) {
        for(i=0; i<3; i++) {
        if(buffer_line_main[i]!=EMPTY_VALUE) {
        GlobalVariableSet(prefix+"_Main_"+i, buffer_line_main[i]);
        }
        else {
        GlobalVariableSet(prefix+"_Main_"+i, 0);
        }
        if(buffer_line_up[i]!=EMPTY_VALUE) {
        GlobalVariableSet(prefix+"_Up_"+i, buffer_line_up[i]);
        }
        else {
        GlobalVariableSet(prefix+"_Up_"+i, 0);
        }
        if(buffer_line_down[i]!=EMPTY_VALUE) {
        GlobalVariableSet(prefix+"_Down_"+i, buffer_line_down[i]);
        }
        else {
        GlobalVariableSet(prefix+"_Down_"+i, 0);
        }
        }
        }

        return(0);
        }[/HTML]

        Comment


          #5
          Probably did that wrong sorry , im hopless with this kind of thing .....last time I was here I could just add attachments?

          Comment

          Latest Posts

          Collapse

          Topics Statistics Last Post
          Started by Christopher_R, Today, 12:29 AM
          0 responses
          6 views
          0 likes
          Last Post Christopher_R  
          Started by sidlercom80, 10-28-2023, 08:49 AM
          166 responses
          2,235 views
          0 likes
          Last Post sidlercom80  
          Started by thread, Yesterday, 11:58 PM
          0 responses
          3 views
          0 likes
          Last Post thread
          by thread
           
          Started by jclose, Yesterday, 09:37 PM
          0 responses
          7 views
          0 likes
          Last Post jclose
          by jclose
           
          Started by WeyldFalcon, 08-07-2020, 06:13 AM
          10 responses
          1,414 views
          0 likes
          Last Post Traderontheroad  
          Working...
          X