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

 
CYBOPOB:
Ciao a tutti, Chi può darmi un suggerimento? Come impostare il prezzo di apertura di un ordine di acquisto pendente rispetto alla MA e non al prezzo di Ask. Per esempio, la candela ha chiuso vicino alla MA, 7 punti sotto o sopra la MA e il prezzo di apertura dell'ordine è fisso e dovrebbe essere MA+28p...? Grazie in anticipo.

OP_BUYSTOP ordine pendente che fissa il prezzo:

double PriceSet = NormalizeDouble(Цена МАшки+28*Point, Digits);

Successivamente, abbiamo bisogno di controllare il prezzo di impostazione contro la distanza StopLevel consentita (OpenPrice-Ask StopLevel), cioè

if (NormalizeDouble(Ask+StopLevel*Point-PriceSet, Digits)>0) PriceSet=Ask+StopLevel*Point;

Se il prezzo di impostazione è inferiore a Ask + la distanza di impostazione dell'ordine consentita, rendere il prezzo di impostazione uguale alla distanza consentita
(ci possono essere variazioni, a seconda di ciò di cui avete effettivamente bisogno)

StopLevel qui:

MarketInfo(Symbol(),MODE_STOPLEVEL);

PriceSet - imposta il prezzo per l'ordine BuyStop in sospeso

In qualche modo...

 
Come posso ottenere l'handle del processo (esperto, script, indicatore) dall'esperto (script, indicatore) stesso?
 

Come faccio a sapere il tempo di apertura (in secondi) di un ordine aperto?

Grazie per le risposte)
 
yellownight:
Come faccio a sapere il tempo di apertura (in secondi) di un ordine aperto?

// до этого где-то OrderSelect
TimeToStr(OrderOpenTime(), TIME_SECONDS);// оно?
gyfto:
Come ottenere l'handle del processo (esperto, script, indicatore) dall'esperto (script, indicatore) stesso?


Va bene?

#import "kernel32.dll"
int GetModuleHandleA (string lpModuleName);//возвращает хэндл процесса; если lpModuleName=NULL то - текущего
#import

string lpModuleName;// неинициализированная строка содержит только /0, т.е. NULL
int hInstance;// передадим в CreateWindowExA

hInstance=GetModuleHandleA(lpModuleName);// аналогично GetModuleHandleA(NULL)
 
TarasBY:
Sono fuori tema: chiamare un indicatore fuori di sé - originale!!!
" Ut-Fast oscillator-type indicator, prototipo del famoso Ultra_Trend...."
Entrambi questi famosi indicatori utilizzano un indicatore chiamato da se stesso.

Sarebbe interessante avere una spiegazione, se qualcuno ne è a conoscenza.

Purtroppo non ho i codici legali degli indicatori.
 
gyfto:
giallo chiaro:
Come faccio a sapere il tempo di apertura (in secondi) di un ordine aperto?

// до этого где-то OrderSelect
TimeToStr(OrderOpenTime(), TIME_SECONDS);// оно?


Funzionerà?


Ti è stato chiesto in secondi e l'hai convertito in una stringa
 
Vinin:

Ti è stato chiesto in secondi e l'hai convertito in una stringa


Sì, sputa sulle conversioni. L'ultima volta, qualche pagina fa, in questo thread, una persona ha chiesto l'ora standard russa, l'ho presa alla lettera e l'ho convertita (l'ora standard di uscita di MT è cinese), il che ha portato alla confusione. Così l'ho sputato.

Si può ottenere come il resto della divisione di datetime per 60:

int sec;// как по заказу
sec=OrderOpenTime()%60;// остаток от деления на 60
//ну и там дальше sec по назначению.

datetime è un int, quindi non dovrebbero esserci problemi durante la compilazione...

 
granit77:
" Indicatore Ut-Fast di tipo oscillatore, il prototipo del famoso Ultra_Trend...."
Entrambi questi famosi indicatori utilizzano una chiamata di indicatore da se stesso.

Sarebbe interessante avere una spiegazione, se qualcuno ne è a conoscenza.

Purtroppo non ho i codici legali degli indicatori.

Anch'io, purtroppo. Ho guardato quello che avevo a portata di mano, e quello che ha subito attirato la mia attenzione è stato questo disegno:

   int li_28 = key;
   if (li_28 == 34562458) loadJMAJMA();
   else {
   //---- какой-то код
            for (int li_40 = Len; li_40 <= Len + Progression * Sensitivity; li_40 += Progression) {
               g_icustom_572 = iCustom(NULL, 0, "ULTRA_TREND_VER2", 34562458, li_40, bars, X_Filtr, 0, l_index_36);
               g_icustom_580 = iCustom(NULL, 0, "ULTRA_TREND_VER2", 34562458, li_40, bars, X_Filtr, 0, l_index_36 + 1);
            }

Ho inserito nei parametri di input dell'indicatore la chiave menzionata nelle condizioni: 34562458. Ecco le foto di entrambe le varianti:

Presumo che l'indicatore funzioni in due modi:

  1. Calcolo JMAJMA; L'
  2. oscillatore stesso.

L'indicatore chiama "se stesso" nel 1° modo per calcolare JMAJMA e poi, sulla base di questi calcoli, viene calcolato l'oscillatore. È originale! Questo metodo può aumentare il numero di buffer di indicatori per i calcoli, senza dimenticare che ci sarà un limite per il disegno.

 
Voglio massimizzare l'adattamento dell'EA al mio deposito. il problema è che nel mio DC la leva è 1:500, ma se prescrivo nell'EA
Print(" Баланс счета = ",AccountBalance(), " плечо 1:",AccountLeverage());
Voglio cambiare la leva nel mio EA.
 
Aumentate il deposito cauzionale dell'importo richiesto e sarete felici.
Motivazione: