[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 1112

 
abolk:
Non è un "pregiudizio" - è come rubare: non è bene prendere le cose degli altri senza chiedere.
Non mi sento bene neanche a rubare.... Ho appena preso un advisor open source....
 

Ecco un codice di esempio...

extern string A25="Impostazioni dell'indicatore RSI";

extern int RSIPeriod= 21;

extern int RSIPrice = 0;

extern int RSIHighLevel= 70;

extern int RSILowLevel = 30;

//+------------------------------------------------------------------+
// Esempio:
//+------------------------------------------------------------------+

double RSI1 = iRSI(Symbolt, 0, RSIPeriod, RSIPrice, 1);
double RSI2 = iRSI(Symbolt, 0, RSIPeriod, RSIPrice, 2);
if(RSI2<RSILowLevel && RSI1>RSILowLevel && RSI1<RSIHighLevel) // Buy Signal
Segnale=1;
if(RSI2>RSIHighLevel && RSI1<RSIHighLevel && RSI1>RSILowLevel) // Sell Signal
Segnale=2;


Questo è l'uso abituale dell'rsi.

Domanda: Come faccio a piazzare un ordine in sospeso basato su questo codice?

diciamo che la xy è sopra 70, come mettere un ordine pendente a una certa distanza dal prezzo corrente e viceversa

Puoi almeno aiutarmi con questo? )

 
ostrik:
Non ho un atteggiamento positivo nei confronti del furto neanche .... Ho appena ottenuto un Expert Advisor con codice open source ....


Tutto può essere, ma l'originale dal decompilato finora non è difficile da distinguere.

E questo è lo stesso che rubare. Se trovate l'originale, non ci saranno problemi.

Anche se ci sono raffinatezze originali, lì è più complicato.

 

come posso programmaticamente fare in modo che l'indicatore sia disegnato solo ad un intervallo di tempo impostato?


 
Eliza:

come posso programmaticamente fare in modo che l'indicatore sia disegnato solo in un dato intervallo di tempo?

1. "non disegnare" o "non calcolare"?

2. Mettere la rimozione di valori da intervalli non necessari alla fine dei calcoli. Vi è già stato detto di iBarShift.

3. fare attenzione a IndicatorCounted

 
sergeev:

1. "non disegnare" o "non calcolare"?

2. Mettere la rimozione di valori da intervalli non necessari alla fine dei calcoli. L'iBarShift vi è già stato spiegato.

3. attento con IndicatorCounted

1. No, non è necessario calcolarlo. Non voglio vederlo su un grafico, solo sull'intervallo di tempo.

2. Vedo, solo se definisco una barra più in là tutto ciò che si trova a sinistra o a destra di essa non dovrebbe essere disegnato... c'è un esempio se non è difficile?

3. Non ce l'ho, ho un altro indicatore che non ha bisogno di questa funzione.

 
Eliza:

2. Vedo, solo se ho definito una barra più a sinistra o a destra di essa non si disegna... c'è un esempio se non è difficile?

destra o sinistra: non disegnare usando il buffer dell'indicatore, significa o non calcolare (non assegnare) il suo valore, o assegnare il valore EMPTY_VALUE

left: limitare il disegno dell'indicatore a sinistra - impostare il numero di barre fino al quale i valori non saranno disegnati nella funzione init() con SetIndexDrawBegin()

 
Eliza:

1. No, non voglio che sia visibile sul grafico, solo dove dovrebbe essere nel timeframe.

2. Vedo, solo se ho definito una barra più a sinistra o a destra di essa non si disegna... Hai un esempio, se non è troppo complicato?

3. Non ce l'ho, ho un altro indicatore che non ha bisogno di questa funzione.

Assegnate semplicemente gli indici del buffer degli indicatori richiesti a EMPTY_VALUE
 

Non posso, non ho nemmeno dei buffer in questo indicatore(.

Ecco la funzione che imposta le coordinate nell'indicatore....

//имя - name, координата1 - value, координата2 - value1, цвет - line_color
void PlotLine(string name,double value,double value1,double line_color)
{
   double valueN=NormalizeDouble(value,Digits);
   double valueN1=NormalizeDouble(value1,Digits);
   bool res = ObjectCreate(name,OBJ_TREND,0,Data_1,valueN,Data_2,valueN1);
   ObjectSet(name, OBJPROP_WIDTH, 1);
   ObjectSet(name, OBJPROP_STYLE, style);
   ObjectSet(name, OBJPROP_RAY, false);
   ObjectSet(name, OBJPROP_BACK, true);
   ObjectSet(name, OBJPROP_COLOR, line_color);
} 
 
Eliza:

Non funziona, non ho nemmeno dei buffer in questo indicatore(.

Ecco la funzione che imposta le coordinate nell'indicatore....


poi filtrare il tempo
Data_1