LastManStandingIndicator

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #51336 quote
    salvo64salvo64
    Participant
    Junior

    Salvo Nicolas, spero di aver seguito correttamente le istruzioni.

    L’indicatore di cui sopra individua dei punti swing sui vari grafici e disegna anche una media mobile. Spero di essere stato esauriente. Grazie, Salvo

    
    //+------------------------------------------------------------------+
    //| LastManStandingIndicator.mq4 |
    //| Copyright 2016, Jay Davis |
    //| https://www.tidyneat.com |
    //+------------------------------------------------------------------+
    #property copyright "Copyright 2016, Jay Davis"
    #property link "https://www.tidyneat.com"
    #property version "1.1"
    #property strict
    #property indicator_chart_window
    #property indicator_buffers 5
    
    
    
    extern color MajorSwingColor=clrPurple;
    extern int MajorSwingSize=3;
    extern int PeriodsInMajorSwing=13;
    
    extern color MinorSwingColor=clrCornflowerBlue;
    extern int MinorSwingSize=1;
    extern int PeriodsInMinorSwing=5;
    
    extern ENUM_MA_METHOD MovingAveragMethod=MODE_EMA;
    extern int MovingAveragePeriods= 55;
    extern color MovingAvergeColor = clrDarkGoldenrod;
    
    extern color fiftyPercentLineColor=clrAliceBlue;
    
    int lookBack=PeriodsInMajorSwing*2;
    
    double majorSwingHigh[];
    double minorSwingHigh[];
    double majorSwingLow[];
    double minorSwingLow[];
    double EMA[];
    
    //+------------------------------------------------------------------+
    //| Custom indicator initialization function |
    //+------------------------------------------------------------------+
    int OnInit()
    {
    //--- indicator buffers mapping
    SetIndexBuffer(0,majorSwingHigh); //associates array with buffer
    SetIndexStyle(0,DRAW_ARROW,EMPTY,MajorSwingSize,MajorSwingColor);
    SetIndexArrow(0,108); // drawing wingding 108
    SetIndexLabel(0,"Major Swing High");
    
    SetIndexBuffer(1,minorSwingHigh); //associates array with buffer
    SetIndexStyle(1,DRAW_ARROW,EMPTY,MinorSwingSize,MinorSwingColor);
    SetIndexArrow(1,108); // drawing wingding 108
    SetIndexLabel(1,"Minor Swing High");
    
    SetIndexBuffer(2,majorSwingLow); //associates array with buffer
    SetIndexStyle(2,DRAW_ARROW,EMPTY,MajorSwingSize,MajorSwingColor);
    SetIndexArrow(2,108); // drawing wingding 108
    SetIndexLabel(2,"Major Swing Low");
    
    SetIndexBuffer(3,minorSwingLow); //associates array with buffer
    SetIndexStyle(3,DRAW_ARROW,EMPTY,MinorSwingSize,MinorSwingColor);
    SetIndexArrow(3,108); // drawing wingding 108
    SetIndexLabel(3,"Minor Swing Low");
    
    SetIndexBuffer(4,EMA); //associates array with buffer
    SetIndexStyle(4,DRAW_LINE,STYLE_SOLID,EMPTY,MovingAvergeColor);
    SetIndexLabel(4,"Moving Average");
    
    
    
    //---
    return(INIT_SUCCEEDED);
    }
    //+------------------------------------------------------------------+
    //| Custom indicator iteration function |
    //+------------------------------------------------------------------+
    int OnCalculate(const int rates_total,
    const int prev_calculated,
    const datetime &time[],
    const double &open[],
    const double &high[],
    const double &low[],
    const double &close[],
    const long &tick_volume[],
    const long &volume[],
    const int &spread[])
    {
    
    int limit;
    int counted_bars=IndicatorCounted();
    //---- check for possible errors
    if(counted_bars<0) return(-1);
    //---- the last counted bar will be recounted
    //if(counted_bars>0) counted_bars--;
    limit=Bars-counted_bars;
    //---- main loop
    // First Run Through Rule
    if(counted_bars==0)
    {
    if(lookBack>=MovingAveragePeriods)
    {
    limit-=lookBack;
    }
    else
    {
    limit-=MovingAveragePeriods;
    }
    }
    
    
    
    //---
    for(int i=1; i<limit; i++)
    {
    // Draw Moving Average
    EMA[i]=iMA(NULL,0,MovingAveragePeriods,0,MovingAveragMethod,PRICE_CLOSE,i);
    
    // Minor Swing High Logic
    if(iHighest(NULL,0,MODE_HIGH,PeriodsInMinorSwing*2,i)==i+PeriodsInMinorSwing)
    {
    minorSwingHigh[i+PeriodsInMinorSwing]=High[i+PeriodsInMinorSwing];
    }
    
    // Major Swing High Logic
    if(iHighest(NULL,0,MODE_HIGH,PeriodsInMajorSwing*2,i)==i+PeriodsInMajorSwing)
    {
    majorSwingHigh[i+PeriodsInMajorSwing]=High[i+PeriodsInMajorSwing];
    }
    
    // Minor Swing Low Logic
    if(iLowest(NULL,0,MODE_LOW,PeriodsInMinorSwing*2,i)==i+PeriodsInMinorSwing)
    {
    minorSwingLow[i+PeriodsInMinorSwing]=Low[i+PeriodsInMinorSwing];
    }
    
    // Major Swing Low Logic
    if(iLowest(NULL,0,MODE_LOW,PeriodsInMajorSwing*2,i)==i+PeriodsInMajorSwing)
    {
    majorSwingLow[i+PeriodsInMajorSwing]=Low[i+PeriodsInMajorSwing];
    }
    
    }
    //--- return value of prev_calculated for next call
    return(rates_total);
    }
    //+------------------------------------------------------------------+
    lastmanstandingindicatorv11.mq4 gbpusd-d1-real-trade-lastmanstandingindicatorv11.png gbpusd-d1-real-trade-lastmanstandingindicatorv11.png
    #51337 quote
    salvo64salvo64
    Participant
    Junior

    Salve, ho cercato di allegare file pdf con stampa su grafico dell’indicatore ma non me lo fa inviare. Qual’è la procedura corretta ?

    Salvo

    #51342 quote
    salvo64salvo64
    Participant
    Junior

    Salve Nicolas allego grafico con indicatore. Salvo

    #51348 quote
    NicolasNicolas
    Keymaster
    Legend

    Ho trovato tutto ciò che mi serve sul web. Ti preghiamo di allegare immagini la prossima volta (.png o .jpg), meglio di PDF! anche il file .mq4, grazie.

    #51355 quote
    salvo64salvo64
    Participant
    Junior

    Avevo allegato il file .mq4 ed avevo anche visualizzato il messaggio, ma è sparito. Ho provato anche senza successo ad allegare file pdf e png ma senza risultato. Comunque grazie, resto in attesa di notizie. Salvo

    #51389 quote
    NicolasNicolas
    Keymaster
    Legend

    Speso quasi tutta la mattina in questa traduzione di codice .. difficile fare le cose uguali a mt4 (mancanza di array e infinito loop ..). Cercherò di finire in seguito, mi dispiace per il ritardo.

    #51393 quote
    salvo64salvo64
    Participant
    Junior

    Ciao Nicolas, non è assolutamente un problema. Non ho alcuna fretta, puoi prendere tutto il tempo che occorre, sempre che sia possibile la traduzione del codice su PRT. Grazie tante e scusami ancora se non sono riuscito a caricare il codice .mq4 come indicato, evidente che sono una frana. Ciao Salvo

    #52668 quote
    NicolasNicolas
    Keymaster
    Legend

    Non era così facile e nonostante alcune piccole differenze con il codice originale, ho deciso di rilasciarlo. Lo troverai per scaricare nella nostra libreria:

    Swing indicator

    lastmanstanding-swing-trading-indicator.png lastmanstanding-swing-trading-indicator.png
    #52708 quote
    salvo64salvo64
    Participant
    Junior

    Grazie Nicolas, sei un grande. Funziona perfettamente. Salvo

    #52770 quote
    elanoaelanoa
    Participant
    Junior

    Ho provato questo indicatore in piattaforma…davvero interessante e molto simile ad un’indicatore di Metatrader4 di cui non dispongo purtroppo il codice ( si chiama trading-signals). Volevo chiedere al sig. Nicolas se era possibile ottimizzarlo…senza la visualizzazione della media EMA  e se era possibile inoltre solo la visualizzazione delle indicazioni cerchi viola ( magari sostituendo i cerchi con delle frezzie). Grazie.

Viewing 10 posts - 1 through 10 (of 10 total)
  • You must be logged in to reply to this topic.
ProRealAI ProRealAI New

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

LastManStandingIndicator


ProBuilder: Indicatori & Strumenti Personalizzati

New Reply
Author
author-avatar
salvo64 @salvo64 Participant
Summary

This topic contains 9 replies,
has 3 voices, and was last updated by elanoaelanoa
8 years, 10 months ago.

Topic Details
Forum: ProBuilder: Indicatori & Strumenti Personalizzati
Language: Italian
Started: 11/02/2017
Status: Active
Attachments: 3 files
ProRealCode ProRealCode
Loading...