- CustomSymbolCreate
- CustomSymbolDelete
- CustomSymbolSetInteger
- CustomSymbolSetDouble
- CustomSymbolSetString
- CustomSymbolSetMarginRate
- CustomSymbolSetSessionQuote
- CustomSymbolSetSessionTrade
- CustomRatesDelete
- CustomRatesReplace
- CustomRatesUpdate
- CustomTicksAdd
- CustomTicksDelete
- CustomTicksReplace
- CustomBookAdd
CustomSymbolCreate
Cria um símbolo personalizado com o nome especificado no grupo definido.
bool CustomSymbolCreate(
|
Parâmetros
symbol_name
[in] Nome do símbolo personalizado. Ele não deve conter grupos ou sub-grupos em que se encontre o símbolo.
symbol_path=""
[in] Nome do grupo em que é criado o símbolo.
symbol_origin=NULL
[in] Nome do símbolo a partir do qual serão copiadas as propriedades do símbolo personalizado gerado. Depois de criar um símbolo personalizado, você pode alterar qualquer propriedade para o valor desejado com as funções correspondentes.
Valor retornado
true, em caso de sucesso, caso contrário, false. Para obter informações sobre o erro, você deve chamar a função GetLastError().
Observação
Todos os símbolos personalizados são gerados na seção especial Custom. Se o nome de grupo não for especificado (o parâmetro symbol_path na função CustomSymbolCreate contém uma string vazia ou NULL), o símbolo personalizado será criado na raiz da seção Custom. Aqui você pode fazer uma analogia com o sistema de arquivos, onde grupos e subgrupos podem ser vistos como pastas e subpastas
O nome do símbolo e descrição do grupo são definidos apenas por caracteres latinos sem pontuação, espaços e caracteres especiais (são permitidos ".", "_", "&" e "#"). Não é recomendado usar - nos nomes dos símbolos - os caracteres <, >, :, ", /, |, ?, *.
O nome do símbolo personalizado deve ser único, independentemente do nome do grupo em que ele é criado. Se já existir um símbolo com o mesmo nome, a função CustomSymbolCreate() retornará false, enquanto a chamada subsequente de GetLastError() gerará o erro 5300 (ERR_NOT_CUSTOM_SYMBOL) ou 5304 (ERR_CUSTOM_SYMBOL_EXIST).
O nome do símbolo não deve exceder 31 caracteres, caso contrário, CustomSymbolCreate() retornará false e será gerado o ero 5302 ERR_CUSTOM_SYMBOL_NAME_LONG.
Parâmetro symbol_path pode ser definido de duas maneiras:
- apenas o nome do grupo sem o nome do símbolo personalizado, por exemplo "CFD\\Metals". É melhor usar essa opção para evitar erros.
- ou nome de <grupo> + separador de grupo "\\"+<nome de símbolo personalizado>, por exemplo "CFD\\Metals\\Platinum". Nesse caso, o nome do grupo deve terminar com o nome exato do símbolo personalizado. Mesmo em caso de incompatibilidade, o símbolo personalizado será criado, mas não no grupo pretendido. Por exemplo, se symbol_path="CFD\\Metals\\Platinum" e symbol_name="platinum" (erro no registro), será criado o símbolo personalizado com o nome "platinum" no grupo "Custom\CFD\Metals\Platinum". Nesse caso, a função SymbolInfoGetString("platinum",SYMBOL_PATH) retornará o valor "Custom\CFD\Metals\Platinum\platinum".
Deve-se ter em mente que a propriedade SYMBOL_PATH retorna o caminho com o nome do símbolo no final. Portanto, você não pode simplesmente copiá-lo sem alterações, se quiser criar um símbolo personalizado exatamente no mesmo grupo. Nesse caso, é necessário cortar o nome do símbolo para não obter o resultado descrito acima.
Se como parâmetro symbol_origin for especificado um símbolo inexistente, o símbolo personalizado será criado vazio, como se o parâmetro symbol_origin não tivesse sido especificado. Nesse caso, será gerado o erro 4301 ERR_MARKET_UNKNOWN_SYMBOL.
O comprimento do parâmetro symbol_path não deve exceder 127 caracteres considerando "Custom\\", separador de grupo "\\" e nome do símbolo se for indicado no final.
Exemplo:
//+------------------------------------------------------------------+
|
Veja também