CustomSymbolCreate

Crea un simbolo personalizzato con il nome specificato nel gruppo specificato.

bool  CustomSymbolCreate(
   const string     symbol_name,         // nome del simbolo personalizzato
   const string     symbol_path="",      // nome di un gruppo in cui dev essere creato il simbolo
   const string     symbol_origin=NULL   // nome del simbolo usato come base per creare un simbolo personalizzato
   );

Parametri

symbol_name

[in]  Nome simbolo personalizzato. Non dovrebbe contenere gruppi o sottogruppi in cui si trova il simbolo.

symbol_path=""

[in] Il nome del gruppo in cui si trova un simbolo.

symbol_origin=NULL

[in] Nome del simbolo le cui proprietà di un simbolo personalizzato creato devono essere copiate. Dopo aver creato un simbolo personalizzato, qualsiasi valore di proprietà può essere modificato in uno necessario utilizzando le funzioni appropriate.

Valore di Ritorno

true - successo, altrimenti - false. Per ottenere informazioni sull'errore, chiamare la funzione GetLastError().

Nota

Tutti i simboli personalizzati vengono creati nella sezione speciale personalizzata. Se il nome di un gruppo non è specificato (il parametro symbol_path nella funzione CustomSymbolCreate contiene una stringa vuota o NULL), un simbolo personalizzato viene generato nella sezione principale Personalizzata. Qui possiamo tracciare un'analogia con il file system, dove gruppi e sottogruppi possono essere visualizzati come cartelle e sottocartelle

I nomi di simboli e gruppi possono contenere solo lettere latine senza punteggiatura, spazi o caratteri speciali (possono contenere solo ".", "_", "&" E "#"). Non è raccomandato l'uso dei caratteri <, >, :, ", /, |, ?, *.

Il nome del simbolo personalizzato deve essere univoco indipendentemente dal nome del gruppo in cui è stato creato. Se esiste già un simbolo con lo stesso nome, la funzione CustomSymbolCreate() restituisce "false", mentre la successiva chiamata GetLastError() restituisce l'errore 5300 (ERR_NOT_CUSTOM_SYMBOL) o 5304 (ERR_CUSTOM_SYMBOL_EXIST).

La lunghezza del nome del simbolo non deve superare 31 caratteri. In caso contrario, CustomSymbolCreate() restituisce 'false' e l'errore 5302 - ERR_CUSTOM_SYMBOL_NAME_LONG viene attivato.

Il parametro symbol_path può essere impostato in due modi:

  • solo un nome di gruppo senza un nome del simbolo personalizzato, ad esempio – "CFD\\Metals". È meglio usare questa opzione per evitare errori.
  • o nome <gruppo> + separatore gruppi "\\" +<nome simbolo personalizzato> ad esempio – "CFD\\Metals\\Platinum". In questo caso, il nome del gruppo dovrebbe terminare con il nome esatto del simbolo personalizzato. In caso di mancata corrispondenza, il simbolo personalizzato viene comunque creato, ma non nel gruppo desiderato. Ad esempio, se symbol_path="CFD\\Metals\\Platinum" e symbol_name="platinum" (register error), allora viene creato un simbolo personalizzato denominato "platinum" nel gruppo "Custom\CFD\Metals\Platinum". La funzione SymbolInfoGetString("platinum", SYMBOL_PATH) restituisce il valore "Custom\CFD\Metals\Platinum\platinum".

 

Si noti che la proprietà SYMBOL_PATHrestituisce il percorso con il nome del simbolo alla fine. Pertanto, non può essere copiato senza modifiche se si desidera creare un simbolo personalizzato nello stesso identico gruppo. In questo caso, è necessario tagliare il nome del simbolo per non ottenere il risultato sopra descritto.

Se un simbolo inesistente è impostato come symbol_origin parametro, quindi il simbolo personalizzato viene creato vuoto come se il symbol_origin parametro non è impostato. In questo caso viene attivato l'errore 4301 - ERR_MARKET_UNKNOWN_SYMBOL.

La lunghezza del parametro symbol_path non deve superare i 127 caratteri considerando "Custom\\", "\\" i separatori dei gruppi e il nome del simbolo se è specificato alla fine.

 

Guarda anche

SymbolName, SymbolSelect, CustomSymbolDelete