# ScriptBot > Full documentation of ScriptBot --- # ScriptBot **ScriptBot** é um avançado robô programável desenvolvido especialmente para automatizar estratégias no MetaTrader 5. Projetado tanto para traders iniciantes quanto experientes, ele permite a criação de estratégias flexíveis e altamente personalizáveis, oferecendo todos os recursos necessários para testar, ajustar e executar operações automatizadas com precisão. Mais de 250 funções Mais de 250 funções prontas para uso Mais de 250 variáveis Mais de 250 variáveis prontas para uso Suporte a múltiplos ativos Permite análise de diversos mercados simultaneamente Criação rápida de estratégias Desenvolva suas estratégias de forma ágil e intuitiva Desempenho ágil e seguro Operações rápidas com total segurança e confiabilidade Controle de risco integrado Proteja seu capital com ferramentas avançadas de gerenciamento de risco Gestão automatizada de ordens Execução rápida e eficiente de suas operações Integração com indicadores técnicos Análises precisas com os melhores indicadores do mercado Personalização avançada Adapte estratégias ao seu perfil com parâmetros configuráveis Instalação de múltiplos indicadores Utilize os indicadores técnicos de sua preferência Estratégias com expressões lógicas Crie sistemas complexos com operadores lógicos avançados Variáveis e funções flexíveis Amplo conjunto de variáveis e funções para estratégias sofisticadas Horários específicos para operação Defina os melhores momentos para atuar no mercado Painel intuitivo Monitoramento e controle completo do seu robô Acesso a subsistemas Funcionalidades adicionais para estratégias avançadas Controle total de ordens Defina alvos e tenha domínio completo sobre suas ordens --- # Coming soon A documentação para esta página ainda está em desenvolvimento. Em breve, adicionaremos as informações completas. Agradecemos a sua compreensão. --- # Downloads Nesta página, você encontrará os downloads do ScriptBot. ## Documentação em PDF [Seção intitulada “Documentação em PDF”](#documentação-em-pdf) Baixe a documentação do ScriptBot em PDF. [Baixar PDF](https://sb.botrading.net/llms/pdf/docs.pdf/index.md) ## Dev-Build versions [Seção intitulada “Dev-Build versions”](#dev-build-versions) Os downloads e changelogs podem ser encontrados em nosso [Grupo de Discord](https://discord.botrading.net). --- # Tipos de dados Nesta página, você encontrará os tipos de dados primitivos disponíveis no ScriptBot. Esses tipos são utilizados como parâmetros e valores de retorno em funções, permitindo o controle preciso sobre o tipo de informação manipulada no projeto. Cada tipo possui uma finalidade específica, abrangendo desde números inteiros e caracteres até valores booleanos e horários. ## Tipos de dados [Seção intitulada “Tipos de dados”](#tipos-de-dados) > Esses tipos primitivos são usadados como retornos e parâmetros de funções. TIPOS | RETORNOS void | Representa um valor vazio, sem retorno. any | Representa qualquer valor. Seja um int, double, string, etc. int | Representa um inteiro com sinal (-2147483648 até 2147483647). uint | Representa um inteiro positivo (0 até 4294967295). datetime | Representa um horário em segundos. long | Representa um inteiro com sinal de 64 bits (-9223372036854775808 até 9223372036854775807). ulong | Representa um inteiro sem sinal de 64 bits (0 até 18446744073709551615). char | Representa um caractere Unicode. uchar | Representa um caractere sem sinal. short | Representa um inteiro com sinal de 16 bits (-32768 até 32767). ushort | Representa um inteiro sem sinal de 16 bits (0 até 65535). float | Representa um número de ponto flutuante de precisão simples (7 dígitos). double | Representa um número de ponto flutuante de precisão dupla (15-16 dígitos). string | Representa uma sequência de caracteres Unicode. bool | Representa um valor lógico (true ou false). color | Representa um valor de cor clrRed, clrGreen, clrBlue… --- # Operadores Nesta página, você encontrará os operadores disponíveis no ScriptBot. Operadores são símbolos utilizados para realizar operações matemáticas, lógicas ou estruturais dentro de uma expressão, sendo fundamentais na criação de condições, cálculos e controle de fluxo em scripts. ## Tipos de operadores [Seção intitulada “Tipos de operadores”](#tipos-de-operadores) > Tabela de operadores. OPERADORES | DESCRIÇÕES + | Adicionar. - | Subtrair. * | Multiplicar. / | Dividir. ! | Negação. % | Resto da divisão. > | Maior que. < | Menor que. >= | Maior ou igual a. <= | Menor ou igual a. == | Igual a. != | Diferente de. && | E. | | Ou. ( ) | Priorizar. ? : | Condição IF ’?’ e ELSE ’:’. -> | Executador lógico. // | Comentário de linha. /* */ | Comentário de bloco. ## Lista de Operadores [Seção intitulada “Lista de Operadores”](#lista-de-operadores) ### Operator + [Seção intitulada “Operator +”](#operator) > Operador de adição. > Retorna a adição entre dois números. ``` CLOSE[0] + CLOSE[1] ``` ### Operator - [Seção intitulada “Operator -”](#operator-) > Operador de subtração. > Retorna a subtração entre dois números. ``` CLOSE[0] - CLOSE[1] ``` ### Operator * [Seção intitulada “Operator *”](#operator--1) > Operador de multiplicação. > Retorna a multiplicação entre dois números. ``` CLOSE[0] * 2 ``` ### Operator / [Seção intitulada “Operator /”](#operator--2) > Operador de divisão. > Retorna a divisão entre dois números. ``` CLOSE[0] / 2 ``` ### Operator ! [Seção intitulada “Operator !”](#operator--3) > Operador de negação. > Usando o operador de negação, podemos inverter o resultado de uma expressão. > Exemplo: > `!(CLOSE[0] > CLOSE[1])` quando `CLOSE[0]` for maior que `CLOSE[1]`, o resultado será `true`, mas como estamos negando essa expressão, o resultado será `false`. ``` !(CLOSE[0] > CLOSE[1]) ``` ### Operator % [Seção intitulada “Operator %”](#operator--4) > Operador de resto da divisão. > Retorna o resto da divisão entre dois números. ``` 11 % 2 // Retorna 1, pois é o resto da divisão de 11 por 2 (11 / 2 = 5 com resto 1) ``` ### Operator > [Seção intitulada “Operator >”](#operator--5) > Operador de maior que. > Retorna verdadeiro se o valor à esquerda for maior ao valor à direita. ``` CLOSE[0] > CLOSE[1] ``` ### Operator < [Seção intitulada “Operator <”](#operator--6) > Operador de menor que. > Retorna verdadeiro se o valor à esquerda for menor ao valor à direita. ``` CLOSE[0] < CLOSE[1] ``` ### Operator >= [Seção intitulada “Operator >=”](#operator--7) > Operador de maior ou igual a. > Retorna verdadeiro se o valor à esquerda for maior ou igual ao valor à direita. ``` CLOSE[0] >= CLOSE[1] ``` ### Operator <= [Seção intitulada “Operator <=”](#operator--8) > Operador de menor ou igual a. > Retorna verdadeiro se o valor à esquerda for menor ou igual ao valor à direita. ``` CLOSE[0] <= CLOSE[1] ``` ### Operator == [Seção intitulada “Operator ==”](#operator--9) > Operador de igualdade. > Retorna verdadeiro se os valores comparados são iguais. ``` CLOSE[0] == CLOSE[1] ``` ### Operator != [Seção intitulada “Operator !=”](#operator--10) > Operador de desigualdade. > Retorna verdadeiro se os valores comparados não forem iguais. ``` CLOSE[0] != CLOSE[1] ``` ### Operator && [Seção intitulada “Operator &&”](#operator--11) > Operador de e. > Retorna verdadeiro apenas se ambas as condições forem verdadeiras. ``` CLOSE[0] && CLOSE[1] ``` ### Operator | [Seção intitulada “Operator | ”](#operator--12) > Operador de ou. > Retorna verdadeiro se pelo menos uma das condições for verdadeira. ``` CLOSE[0] >= CLOSE[1] | | OPEN[0] >= OPEN[1] ``` ### Operator ( ) [Seção intitulada “Operator ( )”](#operator---1) > Operador de priorização. > Utilizado para definir a ordem de avaliação das expressões, garantindo que os cálculos entre parênteses sejam executados antes dos demais operadores. ``` (CLOSE[0] + CLOSE[1]) / 2 ``` ### Operator ?: [Seção intitulada “Operator ?:”](#operator--13) > Operador de condição. > Avalia uma condição e executa uma das duas instruções com base no resultado: a primeira se for verdadeira, a segunda se for falsa. ``` CLOSE[0] > CLOSE[1] ? Print["Biggest"] : Print["Smallest"] ``` ### Operator -> [Seção intitulada “Operator ->”](#operator---2) > Operador de execução lógica. > Utilizado para executar comandos apenas quando a condição anterior for verdadeira. > > **Atenção:** > É obrigatório encerrar a instrução com `;`, pois esse caractere delimita o fim da expressão. ``` CLOSE[0] > CLOSE[1] -> Print["Este comando só será executado se a condição for verdadeira"]; ``` ### Operator // [Seção intitulada “Operator //”](#operator--14) > Operador de comentário de linha. > Usando o operador de comentário de linha, podemos evitar que uma expressão a partir do comentario seja executada. > No exemplo abaixo, `CLOSE[0] > CLOSE[1]` é executado, mas `OPEN[0] < OPEN[1]` nao, pois ele foi comentado. ``` CLOSE[0] > CLOSE[1] // && OPEN[0] < OPEN[1] ``` ### Operator /* */ [Seção intitulada “Operator /* */”](#operator---3) > Operador de comentário de bloco. > Usando o operador de comentário de bloco, podemos evitar que uma expressão entre o comentario seja executada. > No exemplo abaixo, `CLOSE[0] > CLOSE[1]` nao é executado, pois ele foi comentado. ``` /*CLOSE[0] > CLOSE[1]*/ OPEN[0] < OPEN[1] ``` --- # Lista de indicadores Nesta página, você encontrará a lista de indicadores disponíveis no ScriptBot. Ela inclui indicadores internos fornecidos pela própria plataforma MetaTrader 5. ## Accelerator Oscillator [Seção intitulada “Accelerator Oscillator”](#accelerator-oscillator) Nome: | AC Instância: | NEW, SYMBOL, CURRENT Imagens ##### M1 ![AC](https://sb.botrading.net/llms/inds/AC.png/index.md) ## Accumulation/Distribution [Seção intitulada “Accumulation/Distribution”](#accumulationdistribution) Nome: | AD Instância: | NEW, SYMBOL, CURRENT Parâmetros: | TICK Imagens ##### M1 ![AD](https://sb.botrading.net/llms/inds/AD.png/index.md) ## Average Directional Index [Seção intitulada “Average Directional Index”](#average-directional-index) Nome: | ADX Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14 Imagens ##### M1 ![ADX](https://sb.botrading.net/llms/inds/ADX.png/index.md) ## ADX by Welles Wilder [Seção intitulada “ADX by Welles Wilder”](#adx-by-welles-wilder) Nome: | ADXW Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14 Imagens ##### M1 ![ADXW](https://sb.botrading.net/llms/inds/ADXW.png/index.md) ## Alligator [Seção intitulada “Alligator”](#alligator) Nome: | ALLIGATOR Instância: | 0, SYMBOL, CURRENT Parâmetros: | 13, 8, 8, 5, 5, 3, SMOOTHED, MEDIAN Imagens ##### M1 ![ALLIGATOR](https://sb.botrading.net/llms/inds/ALLIGATOR.png/index.md) ## Adaptive Moving Average [Seção intitulada “Adaptive Moving Average”](#adaptive-moving-average) Nome: | AMA Instância: | 0, SYMBOL, CURRENT Parâmetros: | 10, 2, 30, 0, CLOSE Imagens ##### M1 ![AMA](https://sb.botrading.net/llms/inds/AMA.png/index.md) ## Awesome Oscillator [Seção intitulada “Awesome Oscillator”](#awesome-oscillator) Nome: | AO Instância: | NEW, SYMBOL, CURRENT Imagens ##### M1 ![AO](https://sb.botrading.net/llms/inds/AO.png/index.md) ## Average True Range [Seção intitulada “Average True Range”](#average-true-range) Nome: | ATR Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14 Imagens ##### M1 ![ATR](https://sb.botrading.net/llms/inds/ATR.png/index.md) ## Bollinger Bands [Seção intitulada “Bollinger Bands”](#bollinger-bands) Nome: | BANDS Instância: | 0, SYMBOL, CURRENT Parâmetros: | 20, 0, 2.0, CLOSE Imagens ##### M1 ![BANDS](https://sb.botrading.net/llms/inds/BANDS.png/index.md) ## Bears Power [Seção intitulada “Bears Power”](#bears-power) Nome: | BEARS Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 13 Imagens ##### M1 ![BEARS](https://sb.botrading.net/llms/inds/BEARS.png/index.md) ## Bulls Power [Seção intitulada “Bulls Power”](#bulls-power) Nome: | BULLS Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 13 Imagens ##### M1 ![BULLS](https://sb.botrading.net/llms/inds/BULLS.png/index.md) ## Market Facilitation Index [Seção intitulada “Market Facilitation Index”](#market-facilitation-index) Nome: | BWMFI Instância: | NEW, SYMBOL, CURRENT Parâmetros: | TICK Imagens ##### M1 ![BWMFI](https://sb.botrading.net/llms/inds/BWMFI.png/index.md) ## Commodity Channel Index [Seção intitulada “Commodity Channel Index”](#commodity-channel-index) Nome: | CCI Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14, TYPICAL Imagens ##### M1 ![CCI](https://sb.botrading.net/llms/inds/CCI.png/index.md) ## Chaikin Oscillator [Seção intitulada “Chaikin Oscillator”](#chaikin-oscillator) Nome: | CHAIKIN Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 3, 10, EXPONENTIAL, TICK Imagens ##### M1 ![CHAIKIN](https://sb.botrading.net/llms/inds/CHAIKIN.png/index.md) ## Double Exponential Moving Average [Seção intitulada “Double Exponential Moving Average”](#double-exponential-moving-average) Nome: | DEMA Instância: | 0, SYMBOL, CURRENT Parâmetros: | 14, 0, CLOSE Imagens ##### M1 ![DEMA](https://sb.botrading.net/llms/inds/DEMA.png/index.md) ## DeMarker [Seção intitulada “DeMarker”](#demarker) Nome: | DEMARKER Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14 Imagens ##### M1 ![DEMARKER](https://sb.botrading.net/llms/inds/DEMARKER.png/index.md) ## Envelopes [Seção intitulada “Envelopes”](#envelopes) Nome: | ENVELOPES Instância: | 0, SYMBOL, CURRENT Parâmetros: | 14, 0, EXPONENTIAL, CLOSE, 0.1 Imagens ##### M1 ![ENVELOPES](https://sb.botrading.net/llms/inds/ENVELOPES.png/index.md) ## Force Index [Seção intitulada “Force Index”](#force-index) Nome: | FORCE Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 13, SIMPLE, TICK Imagens ##### M1 ![FORCE](https://sb.botrading.net/llms/inds/FORCE.png/index.md) ## Fractals [Seção intitulada “Fractals”](#fractals) Nome: | FRACTALS Instância: | 0, SYMBOL, CURRENT Imagens ##### M1 ![FRACTALS](https://sb.botrading.net/llms/inds/FRACTALS.png/index.md) ## Fractal Adaptive Moving Average [Seção intitulada “Fractal Adaptive Moving Average”](#fractal-adaptive-moving-average) Nome: | FRAMA Instância: | 0, SYMBOL, CURRENT Parâmetros: | 30, 0, CLOSE Imagens ##### M1 ![FRAMA](https://sb.botrading.net/llms/inds/FRAMA.png/index.md) ## Gator Oscillator [Seção intitulada “Gator Oscillator”](#gator-oscillator) Nome: | GATOR Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 13, 8, 8, 5, 5, 3, SMOOTHED, MEDIAN Imagens ##### M1 ![GATOR](https://sb.botrading.net/llms/inds/GATOR.png/index.md) ## Ichimoku Kinko Hyo [Seção intitulada “Ichimoku Kinko Hyo”](#ichimoku-kinko-hyo) Nome: | ICHIMOKU Instância: | 0, SYMBOL, CURRENT Parâmetros: | 9, 26, 52 Imagens ##### M1 ![ICHIMOKU](https://sb.botrading.net/llms/inds/ICHIMOKU.png/index.md) ## Moving Average [Seção intitulada “Moving Average”](#moving-average) Nome: | MA Instância: | 0, SYMBOL, CURRENT Parâmetros: | 10, 0, SIMPLE, CLOSE Imagens ##### M1 ![MA](https://sb.botrading.net/llms/inds/MA.png/index.md) ## MACD [Seção intitulada “MACD”](#macd) Nome: | MACD Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 12, 26, 9, CLOSE Imagens ##### M1 ![MACD](https://sb.botrading.net/llms/inds/MACD.png/index.md) ## Money Flow Index [Seção intitulada “Money Flow Index”](#money-flow-index) Nome: | MFI Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14, TICK Imagens ##### M1 ![MFI](https://sb.botrading.net/llms/inds/MFI.png/index.md) ## Momentum [Seção intitulada “Momentum”](#momentum) Nome: | MOMENTUM Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14, CLOSE Imagens ##### M1 ![MOMENTUM](https://sb.botrading.net/llms/inds/MOMENTUM.png/index.md) ## On Balance Volume [Seção intitulada “On Balance Volume”](#on-balance-volume) Nome: | OBV Instância: | NEW, SYMBOL, CURRENT Parâmetros: | TICK Imagens ##### M1 ![OBV](https://sb.botrading.net/llms/inds/OBV.png/index.md) ## OsMA [Seção intitulada “OsMA”](#osma) Nome: | OSMA Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 12, 26, 9, CLOSE Imagens ##### M1 ![OSMA](https://sb.botrading.net/llms/inds/OSMA.png/index.md) ## Relative Strength Index [Seção intitulada “Relative Strength Index”](#relative-strength-index) Nome: | RSI Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14, CLOSE Imagens ##### M1 ![RSI](https://sb.botrading.net/llms/inds/RSI.png/index.md) ## Relative Vigor Index [Seção intitulada “Relative Vigor Index”](#relative-vigor-index) Nome: | RVI Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 10 Imagens ##### M1 ![RVI](https://sb.botrading.net/llms/inds/RVI.png/index.md) ## Parabolic SAR [Seção intitulada “Parabolic SAR”](#parabolic-sar) Nome: | SAR Instância: | 0, SYMBOL, CURRENT Parâmetros: | 0.02, 0.2 Imagens ##### M1 ![SAR](https://sb.botrading.net/llms/inds/SAR.png/index.md) ## Standard Deviation [Seção intitulada “Standard Deviation”](#standard-deviation) Nome: | STDDEV Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 20, 0, SIMPLE, CLOSE Imagens ##### M1 ![STDDEV](https://sb.botrading.net/llms/inds/STDDEV.png/index.md) ## Stochastic Oscillator [Seção intitulada “Stochastic Oscillator”](#stochastic-oscillator) Nome: | STOCHASTIC Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 5, 3, 3, SIMPLE, LOWHIGH Imagens ##### M1 ![STOCHASTIC](https://sb.botrading.net/llms/inds/STOCHASTIC.png/index.md) ## Triple Exponential Moving Average [Seção intitulada “Triple Exponential Moving Average”](#triple-exponential-moving-average) Nome: | TEMA Instância: | 0, SYMBOL, CURRENT Parâmetros: | 14, 0, CLOSE Imagens ##### M1 ![TEMA](https://sb.botrading.net/llms/inds/TEMA.png/index.md) ## Triple Exponential Moving Averages Oscillator [Seção intitulada “Triple Exponential Moving Averages Oscillator”](#triple-exponential-moving-averages-oscillator) Nome: | TRIX Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 14, CLOSE Imagens ##### M1 ![TRIX](https://sb.botrading.net/llms/inds/TRIX.png/index.md) ## Variable Index Dynamic Average [Seção intitulada “Variable Index Dynamic Average”](#variable-index-dynamic-average) Nome: | VIDYA Instância: | 0, SYMBOL, CURRENT Parâmetros: | 15, 12, 0, CLOSE Imagens ##### M1 ![VIDYA](https://sb.botrading.net/llms/inds/VIDYA.png/index.md) ## Volumes [Seção intitulada “Volumes”](#volumes) Nome: | VOLUMES Instância: | NEW, SYMBOL, CURRENT Parâmetros: | TICK Imagens ##### M1 ![VOLUMES](https://sb.botrading.net/llms/inds/VOLUMES.png/index.md) ## Williams’ Percent Range [Seção intitulada “Williams’ Percent Range”](#williams-percent-range) Nome: | WPR Instância: | NEW, SYMBOL, CURRENT Parâmetros: | 1 Imagens ##### M1 ![WPR](https://sb.botrading.net/llms/inds/WPR.png/index.md) --- # Eventos Nesta página, você encontrará os eventos disponíveis no ScriptBot. Eventos são ocorrências que podem ser monitoradas e personalizadas conforme o comportamento desejado. ## Eventos normais [Seção intitulada “Eventos normais”](#normal-events) > Eventos normais são ocorrências comuns que acontecem durante a execução do robô, como o início, parada ou passagem do tempo. > Estes eventos não possuem parametros. EVENTOS | DESCRIÇÃO OnStart() | Ocorre quando o robô inicia. OnRestart() | Ocorre quando o robô reinicia. OnStop() | Ocorre quando o robô para. OnTick() | Ocorre em cada tick. OnLateTick() | Ocorre em cada final de tick. OnOptimizedTick() | Ocorre em cada tick otimizado. OnTickSecond() | Ocorre em cada segundo de tick. OnCandle() | Ocorre em cada candle. OnTimer() | Ocorre em cada milisegundo. OnLateTimer() | Ocorre em cada final do milisegundo. OnSecond() | Ocorre em cada segundo. OnDay() | Ocorre em cada dia. OnWeek() | Ocorre em cada semana. OnMonth() | Ocorre em cada mês. OnYear() | Ocorre em cada ano. OnOnline() | Ocorre quando o robô volta online. OnOffline() | Ocorre quando o robô volta offline. ## Eventos de gatilhos [Seção intitulada “Eventos de gatilhos”](#triggers) > Eventos de gatilho são ocorrências que acontecem quando uma condição ou expressão lógica é avaliada nos cálculos de REQUISITO, ENTRADA, CONFIRMAÇÃO, SAÍDA… > Variáveis de manipulação: [Gatilhos](https://sb.botrading.net/llms/architecture/triggers/index.md) EVENTOS | DESCRIÇÃO OnRequisite() | Ocorre quando uma condição de requisito é atendida com sucesso. OnRequisiteFailed() | Ocorre quando uma condição de requisito é atendida sem sucesso. OnEntry() | Ocorre quando uma condição de entrada é atendida com sucesso. OnEntryFailed() | Ocorre quando uma condição de entrada é atendida sem sucesso. OnConfirm() | Ocorre quando uma condição de confirmação é atendida com sucesso. OnConfirmFailed() | Ocorre quando uma condição de confirmação é atendida sem sucesso. OnPositionExit() | Ocorre quando uma condição de saída de posições é atendida com sucesso. OnPositionExitFailed() | Ocorre quando uma condição de saída de posições é atendida sem sucesso. OnPositionExitIndividual() | Ocorre quando uma condição de saída de posições individual é atendida com sucesso. OnPositionExitIndividualFailed() | Ocorre quando uma condição de saída de posições individual é atendida sem sucesso. OnOrderExit() | Ocorre quando uma condição de saída de ordens é atendida com sucesso. OnOrderExitFailed() | Ocorre quando uma condição de saída de ordens é atendida sem sucesso. OnOrderExitIndividual() | Ocorre quando uma condição de saída de ordens individual é atendida com sucesso. OnOrderExitIndividualFailed() | Ocorre quando uma condição de saída de ordens individual é atendida sem sucesso. OnFilter() | Ocorre quando uma condição de filtro é atendida com sucesso. OnFilterFailed() | Ocorre quando uma condição de filtro é atendida sem sucesso. ## Eventos de transações [Seção intitulada “Eventos de transações”](#trades) > Eventos de ordens são ocorrências de transações de operações realizadas pelo robô, estes eventos são chamados sempre que uma ordem ou posição for criada, removida ou modificada. > Variáveis de manipulação: [Posições e Ordens](https://sb.botrading.net/llms/placeholders/variables/#positions-and-orders/index.md) EVENTOS | DESCRIÇÃO OnInactive() | Ocorre quando um pedido fica inativo por um certo tempo. OnValidate() | Ocorre quando um pedido foi validado e criado no mercado. OnPositionAdd() | Ocorre quando uma posição foi criada. OnPositionNotAdd() | Ocorre quando uma posição não foi criada. OnPositionClose() | Ocorre quando uma posição foi fechada. OnPositionModify() | Ocorre quando uma posição foi modificada. OnOrderAdd() | Ocorre quando uma ordem foi criada. OnOrderNotAdd() | Ocorre quando uma ordem não foi criada. OnOrderCancel() | Ocorre quando uma ordem foi cancelada. OnOrderTrigger() | Ocorre quando uma ordem foi acionada. OnOrderModify() | Ocorre quando uma ordem foi modificada. --- # Enumeradores Nesta página, você encontrará os enumeradores utilizados no ScriptBot para representar diferentes categorias de valores. Esses enumeradores facilitam a definição de parâmetros em indicadores e funções. ## Preços [Seção intitulada “Preços”](#prices) > **ENUM_PRICES** > Enumerador referente ao método de preço de um indicador. VARIÁVEIS | SIGLAS CLOSE | 1 OPEN | 2 HIGH | 3 LOW | 4 MEDIAN | 5 TYPICAL | 6 WEIGHTED | 7 ## Tempo gráfico [Seção intitulada “Tempo gráfico”](#timeframes) > **ENUM_TIMEFRAMES** > Enumerador referente aos tempos gráficos. VARIÁVEIS | TEMPOS CURRENT | Tempo gráfico do robô. M1 | 1 minuto. M2 | 2 minutos. M3 | 3 minutos. M4 | 4 minutos. M5 | 5 minutos. M6 | 6 minutos. M10 | 10 minutos. M12 | 12 minutos. M15 | 15 minutos. M20 | 20 minutos. M30 | 30 minutos. H1 | 1 hora. H2 | 2 horas. H3 | 3 horas. H4 | 4 horas. H6 | 6 horas. H8 | 8 horas. H12 | 12 horas. D1 | 1 dia. W1 | 1 semana. MN1 | 1 mês. ## Métodos [Seção intitulada “Métodos”](#methods) > **ENUM_METHODS** > Enumerador referente ao método do cálculo de um indicador. VARIÁVEIS | SIGLAS SIMPLE | 0 EXPONENTIAL | 1 SMOOTHED | 2 LINEAR | 3 ## Volumes [Seção intitulada “Volumes”](#volumes) > **ENUM_VOLUMES** > Enumerador referente ao método do cálculo de um indicador de volume. VARIÁVEIS | SIGLAS TICK | 0 REAL | 1 ## Stochastic [Seção intitulada “Stochastic”](#stochastic) > **ENUM_STOCHASTIC** > Enumerador referente ao método de preço de um indicador de stochatic. VARIÁVEIS | SIGLAS LOWHIGH | 0 CLOSECLOSE | 1 ## Tipo de posição [Seção intitulada “Tipo de posição”](#trade) > **ENUM_TRADE** > Enumerador referente ao tipo de posição/ordem. VARIÁVEIS | RETORNOS TYPE_ALL | Todas as posições. TYPE_BUY | Apenas posições de compra. TYPE_SELL | Apenas posições de venda. ## Ação de fechamento [Seção intitulada “Ação de fechamento”](#market-action) > **ENUM_MARKET_ACTION** > Enumerador referente ao tipo de ação de fechamento. VARIÁVEIS | RETORNOS TYPE_ALL | Todos os tipos de fechamento. TYPE_IN | Apenas posições de abertura (in). Utiliza a ordem original de abertura da posição, em vez da ordem que foi usada para o fechamento. TYPE_OUT | Apenas posições de fechamento (out). ## Tipo de retorno [Seção intitulada “Tipo de retorno”](#market-get) > **ENUM_MARKET_GET** > Enumerador referente ao tipo de retorno. VARIÁVEIS | RETORNOS TYPE_ALL | Todos os tipos de retorno. TYPE_POSITIVE | Apenas retornos positivo. TYPE_NEGATIVE | Apenas retornos negativo. ## Histórico [Seção intitulada “Histórico”](#time-historic) > **ENUM_TIME_HISTORIC** > Enumerador referente ao tipo de tempo histórico. VARIÁVEIS | RETORNOS TYPE_DAY | Apenas o histórico do dia. TYPE_WEEK | Apenas o histórico da semana. TYPE_MONTH | Apenas o histórico do mês. TYPE_YEAR | Apenas o histórico do ano. TYPE_ALL | Histórico completo. ## Tempo [Seção intitulada “Tempo”](#time-type) > **ENUM_TIME** > Enumerador referente ao tipo de tempo. VARIÁVEIS | RETORNOS TYPE_SEC | Apenas os segundos. TYPE_MIN | Apenas os minutos. TYPE_HOUR | Apenas as horas. TYPE_DAY | Apenas o dia. TYPE_DAY_WEEK | Apenas o dia da semana. TYPE_DAY_YEAR | Apenas o dia do ano. TYPE_MONTH | Apenas o mês. TYPE_YEAR | Apenas o ano. ## Tipo de modificação [Seção intitulada “Tipo de modificação”](#trade-modify) > **ENUM_TRADE_MODIFY** > Enumerador referente a forma que a negociação será modificada. VARIÁVEIS | RETORNOS TYPE_PRICE | Será usado o preço. TYPE_POINT | Será usado o ponto. ## Propriedade da posição (double) [Seção intitulada “Propriedade da posição (double)”](#position-property-double) > **ENUM_POS_DOUBLE** > Enumerador referente a propriedade da posição. VARIÁVEIS | RETORNOS TYPE_VOLUME | Volume de uma posição. TYPE_OPEN | Preço de abertura. TYPE_SL | Preço do stop. TYPE_TP | Preço do take. TYPE_CURRENT | Preço atual. TYPE_SWAP | Swap acumulativo. TYPE_PROFIT | Lucro corrente. ## Propriedade da posição (int) [Seção intitulada “Propriedade da posição (int)”](#position-property-int) > **ENUM_POS_INT** > Enumerador referente a propriedade da posição. VARIÁVEIS | RETORNOS TYPE_TICKET | Bilhete da posição. TYPE_TIME | Hora de abertura de uma posição. TYPE_TIME_MSC | Posição de tempo de abertura em milissegundos desde 01.01.1970. TYPE_TIME_UPDATE | Posição de tempo de alteração. TYPE_TIME_UPDATE_MSC | Posição de tempo de alteração em milissegundo desde 01.01.1970. TYPE_TYPE | Tipo de posição. (0: Compra, 1: Venda) TYPE_MAGIC | Número mágico de uma posição. TYPE_IDENTIFIER | Identificador de uma posição. TYPE_REASON | Razão para a abertura da posição. (0: Terminal desktop, 1: Aplicativo móvel, 2: Plataforma web, 3: Expert Advisor, script ou outro código MQL5) ## Propriedade da posição (string) [Seção intitulada “Propriedade da posição (string)”](#position-property-string) > **ENUM_POS_STRING** > Enumerador referente a propriedade da posição. VARIÁVEIS | RETORNOS TYPE_SYMBOL | Simbolo da posição. TYPE_COMMENT | Comentario da posição. TYPE_EXTERNAL_ID | ID de posição no sistema externo de negociação (na bolsa de valores). ## Propriedade da ordem (double) [Seção intitulada “Propriedade da ordem (double)”](#order-property-double) > **ENUM_ORDER_DOUBLE** > Enumerador referente a propriedade da ordem. VARIÁVEIS | RETORNOS TYPE_VOLUME_INITIAL | Volume inicial da ordem. TYPE_VOLUME | Volume atual da ordem. TYPE_OPEN | Preço de abertura da ordem. TYPE_SL | Preço do stop da ordem. TYPE_TP | Preço do take da ordem. TYPE_CURRENT | Preço atual da ordem. TYPE_STOP_LIMIT | Preço do stop limit da ordem. ## Propriedade da ordem (int) [Seção intitulada “Propriedade da ordem (int)”](#order-property-int) > **ENUM_ORDER_INT** > Enumerador referente a propriedade da ordem. VARIÁVEIS | RETORNOS TYPE_TICKET | Bilhete da ordem. TYPE_TIME_SETUP | Hora da configuração da ordem. TYPE_TYPE | Tipo da ordem. (0: Compra mercado, 1: Venda mercado, 2: Buy Limit, 3: Sell Limit, 4: Buy Stop, 5: Sell Stop, 6: Buy Stop Limit, 7: Sell Stop Limit, 8: Fechar por oposta) TYPE_STATE | Estado da ordem. (0: Verificando, 1: Aceita, 2: Cancelada, 3: Parcial, 4: Executada, 5: Rejeitada, 6: Expirada, 7: Registrando, 8: Modificando, 9: Cancelando) TYPE_TIME_EXPIRATION | Tempo de expiração da ordem. TYPE_TIME_DONE | Tempo de conclusão da ordem. TYPE_TIME_SETUP_MSC | Tempo de configuração da ordem em milissegundos desde 01.01.1970. TYPE_TIME_DONE_MSC | Tempo de conclusão da ordem em milissegundos desde 01.01.1970. TYPE_FILLING | Tipo de preenchimento da ordem. (0: FOK (tudo ou nada), 1: IOC (tudo/parcial), 2: BOC (só livro), 3: Return (parcial continua)) TYPE_TIME | Hora da ordem. TYPE_MAGIC | Número mágico da ordem. TYPE_REASON | Razão da ordem. (0: Desktop, 1: Mobile, 2: Web, 3: Expert, 4: Stop Loss, 5: Take Profit, 6: Stop Out) TYPE_POSITION_ID | ID da posição da ordem. TYPE_POSITION_BY_ID | Posição da ordem por ID. ## Propriedade da ordem (string) [Seção intitulada “Propriedade da ordem (string)”](#order-property-string) > **ENUM_ORDER_STRING** > Enumerador referente a propriedade da ordem. VARIÁVEIS | RETORNOS TYPE_SYMBOL | Simbolo da ordem. TYPE_COMMENT | Comentario da ordem. ## Estilo de linha [Seção intitulada “Estilo de linha”](#line-style) > **ENUM_LINE_STYLE** > Enumerador referente ao estilo de linha de um objeto VARIÁVEIS | RETORNOS TYPE_SOLID | Linha solida. TYPE_DASH | Linha tracejada. TYPE_DOT | Linha pontilhada. TYPE_DASHDOT | Linha tracejada pontilhada. TYPE_DASHDOTDOT | Linha tracejada pontilhada pontilhada. --- # Constantes Nesta página, você encontrará as constantes disponíveis no ScriptBot. Uma constante é um tipo especial de variável cujo valor permanece o mesmo do início ao fim da execução. No ScriptBot, constantes também são utilizadas como variáveis globais, podendo ser acessadas em todo o projeto, e não apenas em expressões lógicas. ## Janelas [Seção intitulada “Janelas”](#windows) > Constantes referente ao tipo da janela com qual o indicador vai ser anexado. VARIÁVEIS | RETORNOS NEW | Cria o indicador em uma nova janela. 0 | Mesma janela do gráfico. 1 … 2 … 3 … | Cria o indicador em uma nova janela ou agrupa o indicador caso a janela já foi criada. -1 | Cria o indicador mas sem aparecer no gráfico. ## Ativos [Seção intitulada “Ativos”](#symbols) > Constantes referente ao tipo de ativo que o indicador vai ser anexado. VARIÁVEIS | RETORNOS SYMBOL | Ativo que o robô esta anexado. REAL | Ativo que o robô enviará as ordens. ”Nome do ativo” | Ativo customizado. ## Cores [Seção intitulada “Cores”](#colors) > Constantes referente as cores de um objeto. CORES | RESULTADOS clrBlack | #000000 clrDarkGreen | #004000 clrDarkSlateGray | #2F4F4F clrOlive | #808000 clrGreen | #018000 clrTeal | #008080 clrNavy | #000080 clrPurple | #800080 clrMaroon | #800000 clrIndigo | #4B0082 clrMidnightBlue | #191970 clrDarkBlue | #00008B clrDarkOliveGreen | #556B2F clrSaddleBrown | #8B4513 clrForestGreen | #228B22 clrOliveDrab | #6B8E23 clrSeaGreen | #2E8B57 clrDarkGoldenrod | #B8860B clrDarkSlateBlue | #483D8B clrSienna | #A0522D clrMediumBlue | #0000CD clrBrown | #A52A2A clrDarkTurquoise | #00CED1 clrDimGray | #696969 clrLightSeaGreen | #20B2AA clrDarkViolet | #9400D3 clrFireBrick | #B22222 clrMediumVioletRed | #C71585 clrMediumSeaGreen | #3CB371 clrChocolate | #D2691E clrCrimson | #DC143C clrSteelBlue | #4682B4 clrGoldenrod | #DAA520 clrMediumSpringGreen | #00FA9A clrLawnGreen | #7CFC00 clrCadetBlue | #5F9EA0 clrDarkOrchid | #9932CC clrYellowGreen | #9ACD32 clrLimeGreen | #32CD32 clrOrangeRed | #FF4500 clrDarkOrange | #FF8C00 clrOrange | #FFA500 clrGold | #FFD700 clrYellow | #FFFF00 clrChartreuse | #7FFF00 clrLime | #00FF00 clrSpringGreen | #00FF7F clrAqua | #00FFFF clrDeepSkyBlue | #00BFFF clrBlue | #0000FF clrMagenta | #FF00FF clrRed | #FF0000 clrGray | #808080 clrSlateGray | #708080 clrPeru | #CD853F clrBlueViolet | #8A2BE2 clrLightSlateGray | #778899 clrDeepPink | #FF1493 clrMediumTurquoise | #48D1CC clrDodgerBlue | #1E90FF clrTurquoise | #40E0D0 clrRoyalBlue | #4169E1 clrSlateBlue | #6A5ACD clrDarkKhaki | #BDB76B clrIndianRed | #CD5C5C clrMediumOrchid | #BA55D3 clrGreenYellow | #ADFF2F clrMediumAquamarine | #66CDAA clrDarkSeaGreen | #8FBC8F clrTomato | #FF6347 clrRosyBrown | #BC8F8F clrOrchid | #DA70D6 clrMediumPurple | #9370DB clrPaleVioletRed | #DB7093 clrCoral | #FF7F50 clrCornflowerBlue | #6495ED clrDarkGray | #A9A9A9 clrSandyBrown | #F4A460 clrMediumSlateBlue | #7B68EE clrTan | #D2B48C clrDarkSalmon | #E9967A clrBurlyWood | #DEB887 clrHotPink | #FF69B4 clrSalmon | #FA8072 clrViolet | #EE82EE clrLightCoral | #F08080 clrSkyBlue | #87CEEB clrLightSalmon | #FFA07A clrPlum | #DDA0DD clrKhaki | #F0E68C clrLightGreen | #90EE90 clrAquamarine | #7FFFD4 clrSilver | #C0C0C0 clrLightSkyBlue | #87CEFA clrLightSteelBlue | #B0C4DE clrLightBlue | #ADD8E6 clrPaleGreen | #98FB98 clrThistle | #D8BFD8 clrPowderBlue | #B0E0E6 clrPaleGoldenrod | #EEE8AA clrPaleTurquoise | #AFEEEE clrLightGray | #F0F8FF clrWheat | #F5DEB3 clrNavajoWhite | #FFDEAD clrMoccasin | #FFE4B5 clrLightPink | #FFB6C1 clrGainsboro | #DCDCDC clrPeachPuff | #FFDAB9 clrPink | #FFC0CB clrBisque | #FFE4C4 clrLightGoldenrod | #EEDC82 clrBlanchedAlmond | #FFEBCD clrLemonChiffon | #FFFACD clrBeige | #F5F5DC clrAntiqueWhite | #FAEBD7 clrPapayaWhip | #FFEFD5 clrCornsilk | #FFF8DC clrLightYellow | #FFFFE0 clrLightCyan | #E0FFFF clrLinen | #FAF0E6 clrLavender | #E6E6FA clrMistyRose | #FFE4E1 clrOldLace | #FDF5E6 clrWhiteSmoke | #F5F5F5 clrSeashell | #FFF5EE clrIvory | #FFFFF0 clrHoneydew | #F0FFF0 clrAliceBlue | #F0F8FF clrLavenderBlush | #FFF0F5 clrMintCream | #F5FFFA clrSnow | #FFFAFA clrWhite | #FFFFFF --- # Variáveis Variáveis são identificadores que armazenam dados dinâmicos utilizados em operações e expressões lógicas. Elas representam valores que podem mudar ao longo do tempo, mas não possuem parâmetros próprios que alterem seu comportamento. ## Posições e Ordens: [Seção intitulada “Posições e Ordens:”](#positions-and-orders) > Essas variáveis são definidas previamente e utilizadas como parâmetros fixos durante a execução de gatilhos ou eventos de posição. VARIÁVEIS | RETORNOS _TICKET | Retorna o ticket do pedido. _REQUEST | Retorna o ticket de solicitação do pedido. _PARENT | Retorna o ticket da ordem-mãe, se houver. _MAGIC | Retorna o magic number do pedido. _SYMBOL | Retorna o ativo no qual o pedido foi criado. _TIME | Retorna o horário de abertura do pedido. _PRICE | Retorna o preço de abertura do pedido. _SL | Retorna o preço do stop loss do pedido. _TP | Retorna o preço do take profit do pedido. _PROFIT | Retorna o lucro atual da posição. _VOLUME | Retorna o volume atual do pedido. _UPTIME | Retorna o tempo, em segundos, que o pedido está aberto. _TYPE | Retorna o tipo do pedido (0 = Compra, 1 = Venda). _COMMENT | Retorna o comentário associado ao pedido. _FLAG_CHILD | Retorna se o pedido é filho de outra posição. _FLAG_CLIENT | Retorna se o pedido foi adicionado usando expressões lógicas (como Buy(), Sell(), etc.). _FLAG_SA | Retorna se o pedido foi adicionado pelo subsistema de Preço Médio Simples. ## Gatilhos: [Seção intitulada “Gatilhos:”](#triggers) > Essas variáveis funcionam como parâmetros locais e imutáveis, configurados previamente à ativação de um gatilho. VARIÁVEIS | RETORNOS _TRIG_TYPE | Retorna o tipo do gatilho. (0 = Compra, 1 = Venda) _TRIG_IS_OPERATION | Retorna se o gatilho é uma operação boleana. _TRIG_OPERATION | Retorna o resultado da operação. (0 = Falso, 1 = Verdadeiro) _TRIG_PRICE | Retorna o preço do gatilho, caso ele seja um gatilho de preço. _TRIG_WEIGHT_MIN | Retorna o peso mínimo do filtro. _TRIG_WEIGHT_VALIDATE | Retorna o peso total validado do filtro. _TRIG_VALIDS | Retorna a quantidade de filtros validados. _TRIG_VALIDS_COM | Retorna a quantidade de filtros complementares validados. _TRIG_VALIDS_REQ | Retorna a quantidade de filtros obrigatórios validados. ## Conta: [Seção intitulada “Conta:”](#account) > Essas variáveis contêm dados da conta, incluindo saldo disponível, margens operacionais, limites de operação e informações da corretora. VARIÁVEIS | ALIASES | RETORNOS BAL BALANCE | BAL | Retorna o saldo da conta. CRED CREDIT | CRED | Retorna o crédito da conta. EQT EQUITY | EQT | Retorna o patrimônio líquido da conta. MARGIN | | Retorna a margem da conta. MARGF MARGIN_FREE | MARGF | Retorna a margem livre da conta. MARGL MARGIN_LEVEL | MARGL | Retorna o nível de margem da conta. MARGI MARGIN_INITIAL | MARGI | Retorna a margem inicial da conta. MARGM MARGIN_MAINTENANCE | MARGM | Retorna a margem de manutenção da conta. LOGIN | | Retorna o número da conta. NAME | | Retorna o nome do titular da conta. SRV SERVER | SRV | Retorna o servidor da conta. CURR CURRENCY | CURR | Retorna a moeda da conta. COMP COMPANY | COMP | Retorna a empresa/corretora da conta. LIMITO LIMIT_ORDER | LIMITO | Retorna o limite máximo de ordens da conta. ## Mercado [Seção intitulada “Mercado”](#market) > Essas variáveis contêm dados do mercado, incluindo preços de entrada, ativos envolvidos e horários de negociação. VARIÁVEIS | ALIASES | RETORNOS TCANDLE TOTAL_CANDLE | TCANDLE | Retorna o total de candles. TLEFT TIME_LEFT | TLEFT | Retorna o tempo restante. TCURRENT TIME_CURRENT | TCURRENT | Retorna o tempo atual. TLOCAL TIME_LOCAL | TLOCAL | Retorna o tempo local. TSERVER TIME_SERVER | TSERVER | Retorna o tempo do servidor. DAYW DAY_OF_WEEK | DAYW | Retorna o dia da semana. DAYY DAY_OF_YEAR | DAYY | Retorna o dia do ano. MONTH | | Retorna o mês atual. YEAR | | Retorna o ano atual. LAST | | Retorna o último preço comercializado. LASTH LAST_HIGH | LASTH | Retorna a máxima do dia. LASTL LAST_LOW | LASTL | Retorna a mínima do dia. LASTT LAST_TIME | LASTT | Retorna o último tempo comercializado. ASK | | Retorna o preço de compra. ASKH ASK_HIGH | ASKH | Retorna o preço máximo de compra. ASKL ASK_LOW | ASKL | Retorna o preço mínimo de compra. BID | | Retorna o preço de venda. BIDH BID_HIGH | BIDH | Retorna o preço máximo de venda. BIDL BID_LOW | BIDL | Retorna o preço mínimo de venda. SYMBOL | | Retorna o ativo que o robô está operando. MAGIC | | Retorna o id (magic number) que o robô está operando. REAL | | Retorna o ativo real, o ativo que as ordens serão executadas. ## Posições e Ordens abertas [Seção intitulada “Posições e Ordens abertas”](#open-trades) > Essas variáveis contém os dados de ordens e posições que ainda não foram encerradas, permitindo o acompanhamento em tempo real. VARIÁVEIS | ALIASES | RETORNOS AVOLO ALL_VOLUME_OPEN | AVOLO | Retorna a soma do volume total das posições. BVOLO BUY_VOLUME_OPEN | BVOLO | Retorna a soma do volume total das posições de compra. SVOLO SELL_VOLUME_OPEN | SVOLO | Retorna a soma do volume total das posições de venda. APOSO ALL_POS_OPEN | APOSO | Retorna a quantidade de posições abertas. BPOSO BUY_POS_OPEN | BPOSO | Retorna a quantidade de posições abertas de compra. SPOSO SELL_POS_OPEN | SPOSO | Retorna a quantidade de posições abertas de venda. AOPEN ALL_OPEN | AOPEN | Retorna a quantidade de pedidos abertos, tanto de posições quanto de ordens. BOPEN BUY_OPEN | BOPEN | Retorna a quantidade de pedidos abertos de compra. SOPEN SELL_OPEN | SOPEN | Retorna a quantidade de pedidos abertos de venda. APROFITO ALL_PROFIT_OPEN | APROFITO | Retorna a soma do lucro das posições abertas. BPROFITO BUY_PROFIT_OPEN | BPROFITO | Retorna a soma do lucro das posições de compra abertas. SPROFITO SELL_PROFIT_OPEN | SPROFITO | Retorna a soma do lucro das posições de venda abertas. AORDERO ALL_ORDER_OPEN | AORDERO | Retorna a quantidade de ordens abertas. BORDERO BUY_ORDER_OPEN | BORDERO | Retorna a quantidade de ordens de compra abertas. SORDERO SELL_ORDER_OPEN | SORDERO | Retorna a quantidade de ordens de venda abertas. AAVG ALL_AVG_PRICE | AAVG | Retorna o preço médio de todas as posições abertas.2.05+ AAVGDIR ALL_AVG_DIR | AAVGDIR | Retorna a direção média das posições abertas. (-1 = Venda, 0 = Equilíbrio e 1 = Compra).2.05+ BAVG BUY_AVG_PRICE | BAVG | Retorna o preço médio das posições de compra abertas.2.05+ BAVGDIR BUY_AVG_DIR | BAVGDIR | Retorna a direção média das posições de compra abertas.2.05+ SAVG SELL_AVG_PRICE | SAVG | Retorna o preço médio das posições de venda abertas.2.05+ SAVGDIR SELL_AVG_DIR | SAVGDIR | Retorna a direção média das posições de venda abertas.2.05+ ## Posições e Ordens fechadas [Seção intitulada “Posições e Ordens fechadas”](#closed-trades) > Essas variáveis contém os dados de ordens e posições que foram encerradas. VARIÁVEIS | ALIASES | RETORNOS AVOL ALL_VOLUME | AVOL | Retorna a soma total do volume. BVOL BUY_VOLUME | BVOL | Retorna a soma do volume de compra. SVOL SELL_VOLUME | SVOL | Retorna a soma do volume de venda. APROFIT ALL_PROFIT | APROFIT | Retorna o total do lucro. BPROFIT BUY_PROFIT | BPROFIT | Retorna o total do lucro de compra. SPROFIT SELL_PROFIT | SPROFIT | Retorna o total do lucro de venda. AGAINP ALL_GAIN_PROFIT | AGAINP | Retorna o total de profit ganho ignorando as perdas. BGAINP BUY_GAIN_PROFIT | BGAINP | Retorna o total de profit ganho em compras ignorando as perdas. SGAINP SELL_GAIN_PROFIT | SGAINP | Retorna o total de profit ganho em vendas ignorando as perdas. ALOSSP ALL_LOSS_PROFIT | ALOSSP | Retorna o total de profit perdido ignorando os ganhos. BLOSSP BUY_LOSS_PROFIT | BLOSSP | Retorna o total de profit perdido em compras ignorando os ganhos. SLOSSP SELL_LOSS_PROFIT | SLOSSP | Retorna o total de profit perdido em vendas ignorando os ganhos. APOS ALL_POS | APOS | Retorna o total de posições. BPOS BUY_POS | BPOS | Retorna o total de posições de compra. SPOS SELL_POS | SPOS | Retorna o total de posições de venda. AGAIN ALL_GAIN | AGAIN | Retorna o total de vitorias. BGAIN BUY_GAIN | BGAIN | Retorna o total de vitorias de compra. SGAIN SELL_GAIN | SGAIN | Retorna o total de vitorias de venda. ALOSS ALL_LOSS | ALOSS | Retorna o total de derrotas. BLOSS BUY_LOSS | BLOSS | Retorna o total de derrotas de compra. SLOSS SELL_LOSS | SLOSS | Retorna o total de derrotas de venda. ACOMM ALL_COMMISSION | ACOMM | Retorna o total de comissões. BCOMM BUY_COMMISSION | BCOMM | Retorna o total de comissões de compra. SCOMM SELL_COMMISSION | SCOMM | Retorna o total de comissões de venda. ASWAP ALL_SWAP | ASWAP | Retorna o total de trocas. BSWAP BUY_SWAP | BSWAP | Retorna o total de trocas de compra. SSWAP SELL_SWAP | SSWAP | Retorna o total de trocas de venda. TICKET | | Retorna o ticket da ultima posição. TICKETB TICKET_BUY | TICKETB | Retorna o ticket da ultima compra. TICKETS TICKET_SELL | TICKETS | Retorna o ticket da ultima venda. GTICKET GAIN_TICKET | GTICKET | Retorna o ticket da ultima posição com ganho. GTICKETB GAIN_TICKET_BUY | GTICKETB | Retorna o ticket da ultima compra com ganho. GTICKETS GAIN_TICKET_SELL | GTICKETS | Retorna o ticket da ultima venda com ganho. LTICKET LOSS_TICKET | LTICKET | Retorna o ticket da ultima posição com perda. LTICKETB LOSS_TICKET_BUY | LTICKETB | Retorna o ticket da ultima compra com perda. LTICKETS LOSS_TICKET_SELL | LTICKETS | Retorna o ticket da ultima venda com perda. ## Sinais [Seção intitulada “Sinais”](#signals) > Essas variáveis guardam as informações dos sinais, que são definidos com base nos gatilhos de entrada e confirmação. VARIÁVEIS | ALIASES | RETORNOS SIGTT SIG_TOTAL | SIGTT | Retorna a soma de todos os sinais do dia. SIGB SIG_BUY | SIGB | Retorna a soma de sinais de compra. SIGS SIG_SELL | SIGS | Retorna a soma de sinais de venda. SIGL SIG_LAST | SIGL | Retorna o tipo do último sinal. (-1 = Nenhum, 0 = Compra, 1 = Venda) SIGT SIG_TIME | SIGT | Retorna a hora do último sinal. SIGTB SIG_TIME_BUY | SIGTB | Retorna a hora do último sinal de compra. SIGTS SIG_TIME_SELL | SIGTS | Retorna a hora do último sinal de venda. SIGP SIG_PRICE | SIGP | Retorna o preço do último sinal. SIGPB SIG_PRICE_BUY | SIGPB | Retorna o preço do último sinal de compra. SIGPS SIG_PRICE_SELL | SIGPS | Retorna o preço do último sinal de venda. SIGTC SIG_TOTAL_CONFIRM | SIGTC | Retorna a soma de sinais confirmados. SIGLC SIG_LAST_CONFIRM | SIGLC | Retorna o tipo do último sinal confirmado. (-1 = Nenhum, 0 = Compra, 1 = Venda) SIGBC SIG_BUY_CONFIRM | SIGBC | Retorna a soma de sinais de compra confirmados. SIGSC SIG_SELL_CONFIRM | SIGSC | Retorna a soma de sinais de venda confirmados. SIGTLC SIG_TIME_LAST_CONFIRM | SIGTLC | Retorna a hora do último sinal confirmado. SIGTBC SIG_TIME_BUY_CONFIRM | SIGTBC | Retorna a hora do último sinal de compra confirmado. SIGTSC SIG_TIME_SELL_CONFIRM | SIGTSC | Retorna a hora do último sinal de venda confirmado. SIGPLC SIG_PRICE_LAST_CONFIRM | SIGPLC | Retorna o preço do último sinal confirmado. SIGPBC SIG_PRICE_BUY_CONFIRM | SIGPBC | Retorna o preço do último sinal de compra confirmado. SIGPSC SIG_PRICE_SELL_CONFIRM | SIGPSC | Retorna o preço do último sinal de venda confirmado. --- # Funções Funções são identificadores que armazenam instruções dinâmicas utilizadas em operações e expressões lógicas. Diferente das variáveis, as funções aceitam parâmetros, o que permite modificar seu comportamento conforme os valores fornecidos. Elas oferecem maior flexibilidade na criação de regras e estratégias personalizadas. ## Depuradores [Seção intitulada “Depuradores”](#debuggers) > Essas funções permitem executar comandos de depuração. FUNÇÕES | RETORNOS Log | Imprime um texto nas Logs do ScriptBot. Print | Imprime um texto nas logs do Metatrader. See | Retorna o valor informado e exibe esse valor no log para depuração. ## Logicas [Seção intitulada “Logicas”](#logics) > Essas funções permitem executar lógicas que facilitam o desenvolvimento de expressões e fluxo de validações. FUNÇÕES | RETORNOS Seq | Executa múltiplas expressões em sequência.2.15+ ## Indicadores [Seção intitulada “Indicadores”](#indicators) > Essas funções permitem acessar os valores dos buffers de um indicador, como preços, sinais, cores. FUNÇÕES | ALIASES | RETORNOS IND Indicator | IND | Retorna o valor do buffer de um indicador. IND'X' Indicator'X' | IND'X' | Retorna o valor do buffer de um indicador. ## Candles [Seção intitulada “Candles”](#candles) > Essas funções permitem acessar os valores das velas, como preços de abertura, fechamento etc. FUNÇÕES | ALIASES | RETORNOS O Open | O | Retorna o preço de abertura de uma vela. C Close | C | Retorna o preço de fechamento de uma vela. H High | H | Retorna o preço da máxima de uma vela. L Low | L | Retorna o preço da mínima de uma vela. T Time | T | Retorna o horário de abertura de uma vela. DIR Direction | DIR | Retorna a direção de uma vela (-1 = Negativa, 0 = Neutra, 1 = Positiva). SPD Spread | SPD | Retorna a quantidade de spread de uma vela. Candle | | Retorna o index da vela. MaxH MaxHigh | MaxH | Retorna o preço máximo entre duas posições de velas. MinL MinLow | MinL | Retorna o preço mínimo entre duas posições de velas. TICKV TickVolume | TICKV | Retorna o volume de uma vela. REALV RealVolume | REALV | Retorna o volume de uma vela usando os dados reais. ## Mercado [Seção intitulada “Mercado”](#market) > Essas funções fornecem dados de mercado semelhantes aos preços das velas, mas com escopo mais abrangente para representar diferentes aspectos do mercado. FUNÇÕES | ALIASES | RETORNOS Last | | Retorna o último preço de negociação. LastH LastHigh | LastH | Retorna o maior preço do último negócio. LastL LastLow | LastL | Retorna o menor preço do último negócio. Ask | | Retorna o preço de venda (ask). AskH AskHigh | AskH | Retorna o maior preço de venda (ask). AskL AskLow | AskL | Retorna o menor preço de venda (ask). Bid | | Retorna o preço de compra (bid). BidH BidHigh | BidH | Retorna o maior preço de compra (bid). BidL BidLow | BidL | Retorna o menor preço de compra (bid). LastT LastTime | LastT | Retorna o horário do último negócio. DayST DayStartTime | DayST | Retorna o horário de início do pregão no dia especificado. DayET DayEndTime | DayET | Retorna o horário de encerramento do pregão no dia especificado. DaySC DayStartCandle | DaySC | Retorna a vela (candle) de início do dia. DayEC DayEndCandle | DayEC | Retorna a vela (candle) de fim do dia. DayH DayHigh | DayH | Retorna o maior preço do dia. DayL DayLow | DayL | Retorna o menor preço do dia. ## Matemática [Seção intitulada “Matemática”](#math) > Estas são funções matemáticas utilizadas para realizar operações numéricas, como comparação de valores, cálculo de casas decimais e geração de resultados baseados em probabilidade. FUNÇÕES | ALIASES | RETORNOS Med Median | Med | Retorna a media entre dois valores. TickTP TickToPoint | TickTP | Retorna o valor de tick convertido em pontos. MoneyTP MoneyToPoint | MoneyTP | Retorna o valor na moeda convertida em pontos. PipTP PipToPoint | PipTP | Retorna o valor do pip convertido em pontos. Count CountStep | Count | Retorna a quantidade de passos que ocorreram. CountGrad CountStepGradual | CountGrad | Retorna a quantidade de passos que ocorreram de forma gradual. Divi Division | Divi | Retorna a divisão entre dois valores, permitindo que o denominador seja zero. RDivi RestDivision | RDivi | Retorna o resto da divisão entre dois valores, permitindo que o denominador seja zero. Percent | | Retorna a variação percentual de value até target, com value sendo o valor base. PercentValue PercentOfValue | PercentValue | Retorna a quantidade percentual de um valor. HitPercent | | Retorna a quantidade percentual de acerto. FixPrice CorrectPrice | FixPrice | Retorna o valor correto de um preço. Random | | Retorna um valor inteiro aleatório entre dois valores. Round | | Retorna o valor arredondado. RoundUp | | Retorna o valor arredondado para cima. RoundDown | | Retorna o valor arredondado para baixo. Max | | Retorna o maior valor entre dois números. Min | | Retorna o menor valor entre dois números. Chance IsChance | Chance | Retorna verdadeiro com base em uma chance percentual. Decimal Decimals | Decimal | Retorna o número de casas decimais de um valor. ## Conta [Seção intitulada “Conta”](#account) > Estas funções estão relacionadas aos dados da conta e permitem tanto recuperar quanto atualizar essas informações. FUNÇÕES | ALIASES | RETORNOS GetVol GetVolume | GetVol | Retorna o volume que a ordem será executada. SetVol SetVolume | SetVol | Define o novo volume da ordem. ## Tempo [Seção intitulada “Tempo”](#time) > Estas funções auxiliam em operações relacionadas a datas e horários, como conversões, cálculos, formatações e retornos. FUNÇÕES | ALIASES | RETORNOS IsTime | | Verifica se o tempo corresponde aos critérios informados. STime SymbolTime | STime | Retorna o horário atual do símbolo. TLeft TimeLeft | TLeft | Retorna o tempo restante da vela atual. DayW DayOfWeek | DayW | Retorna o dia da semana. DayY DayOfYear | DayY | Retorna o dia do ano. Month | | Retorna o mês atual. Year | | Retorna o ano atual. StartT StartTime | StartT | Retorna o horário inicial de referência. ValueT ValueOfTime | ValueT | Converte o horário em valor numérico baseado no método. ## Posições e Ordens abertas [Seção intitulada “Posições e Ordens abertas”](#open-trades) > Estas funções permitem obter informações sobre posições e ordens abertas, como quantidades, preços, volumes, etc. FUNÇÕES | ALIASES | RETORNOS AVolO AllVolumeOpen | AVolO | Retorna o volume total de todas as posições e ordens abertas.2.05+ BVolO BuyVolumeOpen | BVolO | Retorna o volume total das posições e ordens de compra abertas.2.05+ SVolO SellVolumeOpen | SVolO | Retorna o volume total das posições e ordens de venda abertas.2.05+ APVolO AllPosVolumeOpen | APVolO | Retorna o volume total de todas as posições abertas.2.05+ BPVolO BuyPosVolumeOpen | BPVolO | Retorna o volume total das posições de compra abertas.2.05+ SPVolO SellPosVolumeOpen | SPVolO | Retorna o volume total das posições de venda abertas.2.05+ AOVolO AllOrderVolumeOpen | AOVolO | Retorna o volume total de todas as ordens pendentes.2.05+ BOVolO BuyOrderVolumeOpen | BOVolO | Retorna o volume total das ordens de compra pendentes.2.05+ SOVolO SellOrderVolumeOpen | SOVolO | Retorna o volume total das ordens de venda pendentes.2.05+ AOpen AllOpen | AOpen | Retorna a quantidade total de posições e ordens abertas.2.05+ BOpen BuyOpen | BOpen | Retorna a quantidade total de posições e ordens de compra abertas.2.05+ SOpen SellOpen | SOpen | Retorna a quantidade total de posições e ordens de venda abertas.2.05+ APosO AllPosOpen | APosO | Retorna a quantidade total de posições abertas.2.05+ BPosO BuyPosOpen | BPosO | Retorna a quantidade total de posições de compra abertas.2.05+ SPosO SellPosOpen | SPosO | Retorna a quantidade total de posições de venda abertas.2.05+ AOrderO AllOrderOpen | AOrderO | Retorna a quantidade total de ordens pendentes.2.05+ BOrderO BuyOrderOpen | BOrderO | Retorna a quantidade total de ordens de compra pendentes.2.05+ SOrderO SellOrderOpen | SOrderO | Retorna a quantidade total de ordens de venda pendentes.2.05+ AProfitO AllProfitOpen | AProfitO | Retorna o lucro/prejuízo total de todas as posições abertas.2.05+ BProfitO BuyProfitOpen | BProfitO | Retorna o lucro/prejuízo total das posições de compra abertas.2.05+ SProfitO SellProfitOpen | SProfitO | Retorna o lucro/prejuízo total das posições de venda abertas.2.05+ PAvgP AvgPrice | PAvgP | Retorna o preço médio das posições abertas.2.05+ PAvgDir AvgDir | PAvgDir | Retorna a direção média das posições abertas.2.05+ AAvgPrice AllAvgPrice | AAvgPrice | Retorna o preço médio de todas as posições abertas.2.05+ BAvgPrice BuyAvgPrice | BAvgPrice | Retorna o preço médio das posições de compra abertas.2.05+ SAvgPrice SellAvgPrice | SAvgPrice | Retorna o preço médio das posições de venda abertas.2.05+ AAvgDir AllAvgDir | AAvgDir | Retorna a direção média de todas as posições abertas.2.05+ BAvgDir BuyAvgDir | BAvgDir | Retorna a direção média das posições de compra abertas.2.05+ SAvgDir SellAvgDir | SAvgDir | Retorna a direção média das posições de venda abertas.2.05+ PTicket PosTicket | PTicket | Retorna o ticket da posição aberta mais próxima do índice informado. PTicketE PosTicketExact | PTicketE | Retorna o ticket da posição aberta no índice informado ou 0, caso não exista.2.15+ PosDouble | | Retorna o valor de uma propriedade numérica (double) de uma posição. PosInt | | Retorna o valor de uma propriedade inteira de uma posição. PosString | | Retorna o valor de uma propriedade textual de uma posição. PCurrent PosCurrent | PCurrent | Retorna o preço atual de uma posição aberta. PO PosOpen | PO | Retorna o preço de abertura de uma posição. PProfit PosProfit | PProfit | Retorna o lucro atual de uma posição. PSL PosStop | PSL | Retorna o preço do Stop Loss de uma posição. PSWAP PosSwap | PSWAP | Retorna o valor do swap acumulado de uma posição. PTP PosTake | PTP | Retorna o preço do Take Profit de uma posição. PVol PosVolume | PVol | Retorna o volume de uma posição. PIdent PosIdentifier | PIdent | Retorna o identificador único de uma posição. PMagic PosMagic | PMagic | Retorna o número mágico de uma posição. PReason PosReason | PReason | Retorna o motivo de abertura de uma posição. PT PosTime | PT | Retorna o horário de abertura de uma posição. PTMsc PosTimeMsc | PTMsc | Retorna o horário de abertura de uma posição em milissegundos. PTUpdate PosTimeUpdate | PTUpdate | Retorna o horário da última atualização de uma posição. PTUpdateMsc PosTimeUpdateMsc | PTUpdateMsc | Retorna o horário da última atualização de uma posição em milissegundos. PType PosType | PType | Retorna o tipo de uma posição (compra/venda). PSymbol PosSymbol | PSymbol | Retorna o símbolo do ativo de uma posição. PComment PosComment | PComment | Retorna o comentário associado a uma posição. PExternal PosExternal | PExternal | Retorna o ID externo de uma posição. OTicket OrderTicket | OTicket | Retorna o ticket da ordem aberta mais próxima do índice informado. OTicketE OrderTicketExact | OTicketE | Retorna o ticket da ordem aberta no índice informado ou 0, caso não exista.2.15+ OrderDouble | | Retorna o valor de uma propriedade numérica (double) de uma ordem. OrderInt | | Retorna o valor de uma propriedade inteira de uma ordem. OrderString | | Retorna o valor de uma propriedade textual de uma ordem. OVolInit OrderVolumeInit | OVolInit | Retorna o volume inicial de uma ordem pendente. OVol OrderVolume | OVol | Retorna o volume atual de uma ordem. OO OrderOpen | OO | Retorna o preço de abertura de uma ordem. OSL OrderStop | OSL | Retorna o preço do Stop Loss de uma ordem. OTP OrderTake | OTP | Retorna o preço do Take Profit de uma ordem. OCurrent OrderCurrent | OCurrent | Retorna o preço atual de uma ordem pendente. OSLLimit OrderStopLimit | OSLLimit | Retorna o preço de ativação para ordens Stop Limit. OSetup OrderSetup | OSetup | Retorna a data/hora de criação da ordem. OType OrderType | OType | Retorna o tipo de uma ordem. OState OrderState | OState | Retorna o estado atual de uma ordem. OTExpira OrderTimeExpiration | OTExpira | Retorna a data/hora de expiração de uma ordem. ODone OrderDone | ODone | Retorna a data/hora de execução ou cancelamento de uma ordem. OSetupMsc OrderSetupMsc | OSetupMsc | Retorna a data/hora de criação da ordem em milissegundos. ODoneMsc OrderDoneMsc | ODoneMsc | Retorna a data/hora de execução ou cancelamento em milissegundos. OFilling OrderFilling | OFilling | Retorna a política de preenchimento de uma ordem. OT OrderTime | OT | Retorna a data/hora da última modificação da ordem. OMagic OrderMagic | OMagic | Retorna o número mágico de uma ordem. OReason OrderReason | OReason | Retorna o motivo de criação da ordem. OId OrderId | OId | Retorna o ID da ordem no sistema. OById OrderById | OById | Retorna o ticket da ordem pelo ID do sistema. OSymbol OrderSymbol | OSymbol | Retorna o símbolo do ativo de uma ordem. OComment OrderComment | OComment | Retorna o comentário associado a uma ordem. ## Posições fechadas [Seção intitulada “Posições fechadas”](#closed-trades) > Estas funções permitem obter informações sobre posições fechadas, como quantidades, preços, volumes, etc. FUNÇÕES | ALIASES | RETORNOS DTicket DealTicket | DTicket | Retorna o ticket da posição fechada mais próxima do índice informado. DTicketE DealTicketExact | DTicketE | Retorna o ticket da posição fechada no índice informado ou 0, caso não exista.2.15+ DProfit DealProfit | DProfit | Retorna o lucro/prejuízo de um negócio. DO DealOpen | DO | Retorna o preço de abertura de um negócio. DComm DealCommission | DComm | Retorna o valor da comissão de um negócio. DFee DealFee | DFee | Retorna o valor da taxa de um negócio. DSL DealStop | DSL | Retorna o preço do stop loss de um negócio. DTP DealTake | DTP | Retorna o preço do take profit de um negócio. DSwap DealSwap | DSwap | Retorna o valor do swap de um negócio. DVol DealVolume | DVol | Retorna o volume de um negócio. DMagic DealMagic | DMagic | Retorna o número mágico de um negócio. DReason DealReason | DReason | Retorna o motivo da execução de um negócio. DOrder DealOrder | DOrder | Retorna o ticket da ordem associada a um negócio. DId DealId | DId | Retorna o ID de um negócio. DEntry DealEntry | DEntry | Retorna o tipo de entrada de um negócio. DOut DealOut | DOut | Retorna se o negócio é uma saída. DIn DealIn | DIn | Retorna se o negócio é uma posição de entrada. DT DealTime | DT | Retorna a data/hora de execução de um negócio. DTMsc DealTimeMsc | DTMsc | Retorna o tempo de execução de negociações em milissegundos desde 01.01.1970 DType DealType | DType | Retorna o tipo de um negócio. DComment DealComment | DComment | Retorna o comentário associado a um negócio. DExternal DealExternal | DExternal | Retorna o ID externo de um negócio. DSymbol DealSymbol | DSymbol | Retorna o símbolo de um negócio. ## Conversores [Seção intitulada “Conversores”](#converters) > Estas funções de conversão permitem transformar valores entre diversos formatos, como converter números positivos em negativos e transformar strings em datas, entre outras operações. FUNÇÕES | ALIASES | RETORNOS Pos ToPositive | Pos | Retorna o valor absoluto de um número. Neg ToNegative | Neg | Retorna o valor negativo de um número. ToTime | | Retorna o horário em forma de texto simples para data em segundos. TMod ToTimeModify | TMod | Retorna o horário modificado. TFormat ToTimeFormat | TFormat | Retorna o horário em forma de texto. Format ToFormat | Format | Retorna uma nova string formatada. ToInt | | Retorna o valor convertido para inteiro. ## Variáveis do usuário [Seção intitulada “Variáveis do usuário”](#user-variables) > Essas variáveis permitem que o usuário crie suas próprias variáveis personalizadas. FUNÇÕES | ALIASES | RETORNOS ClrDou ClearDouble | ClrDou | Remove todas as variáveis criadas pelo usuário. ClrInt ClearInt | ClrInt | Remove todas as variáveis criadas pelo usuário. ClrStr ClearString | ClrStr | Remove todas as variáveis criadas pelo usuário. CreDou CreateDouble | CreDou | Cria uma variável caso ela não exista. CreInt CreateInt | CreInt | Cria uma variável caso ela não exista. CreStr CreateString | CreStr | Cria uma variável caso ela não exista. GetDou GetDouble | GetDou | Retorna o valor de uma variável criada pelo usuário. GetInt | | Retorna o valor de uma variável criada pelo usuário. GetStr GetString | GetStr | Retorna o valor de uma variável criada pelo usuário. RemDou RemoveDouble | RemDou | Remove uma variável caso ela exista. RemInt RemoveInt | RemInt | Remove uma variável caso ela exista. RemStr RemoveString | RemStr | Remove uma variável caso ela exista. RepDou ReplaceDouble | RepDou | Substitui o valor de uma variável caso ela exista. RepInt ReplaceInt | RepInt | Substitui o valor de uma variável caso ela exista. RepStr ReplaceString | RepStr | Substitui o valor de uma variável caso ela exista. SetDou SetDouble | SetDou | Define o valor de uma variável ou cria uma nova. SetInt | | Define o valor de uma variável ou cria uma nova. SetStr SetString | SetStr | Define o valor de uma variável ou cria uma nova. AddDou AddDouble | AddDou | Adiciona um valor double a uma variável existente. AddInt | | Adiciona um valor inteiro a uma variável existente.2.06+ ## Variáveis globais [Seção intitulada “Variáveis globais”](#global-variables) > Essas variáveis armazenam valores globais que são compartilhados entre todos os terminais do MetaTrader 5. > Lembre-se: por serem globais, qualquer programa pode alterar seus valores, o que pode gerar conflitos. > As variáveis permanecem disponíveis por até quatro semanas; caso não sejam utilizadas nesse período, o sistema as removerá automaticamente. FUNÇÕES | ALIASES | RETORNOS GetG GetGlobal | GetG | Obtém o valor de uma variável global do tipo double.2.06+ CreG CreateGlobal | CreG | Cria uma nova variável global do tipo double.2.06+ RepG ReplaceGlobal | RepG | Substitui o valor de uma variável global existente.2.06+ GetGT GetGlobalTime | GetGT | Obtém o timestamp do último acesso de uma variável global.2.06+ SetG SetGlobal | SetG | Define o valor de uma variável global (cria se não existir).2.06+ AddG AddGlobal | AddG | Adiciona um valor a uma variável global existente.2.06+ RemG RemoveGlobal | RemG | Remove uma variável global do tipo double.2.06+ ClrG ClearGlobal | ClrG | Limpa variáveis globais com um prefixo específico.2.06+ ## Trades [Seção intitulada “Trades”](#trades) > Estas funções permitem abrir, gerenciar e fechar posições de trade, incluindo ordens. FUNÇÕES | RETORNOS BuyAuto | Abre uma posição de compra no mercado. SellAuto | Abre uma posição de venda no mercado. Buy | Abre uma posição de compra no mercado atual. Sell | Abre uma posição de venda no mercado atual. BuyOrder | Coloca uma ordem pendente de compra. SellOrder | Coloca uma ordem pendente de venda. PosClose | Fecha uma posição aberta completamente. PosClosePartial | Fecha parcialmente uma posição aberta. OrderClose | Cancela uma ordem pendente. PosCloseAll | Fecha todas as posições abertas. PosBuyCloseAll | Fecha todas as posições de compra abertas. PosSellCloseAll | Fecha todas as posições de venda abertas. OrderCloseAll | Fecha todas as ordens abertas.2.08+ OrderBuyCloseAll | Fecha todas as ordens de compra abertas.2.08+ OrderSellCloseAll | Fecha todas as ordens de venda abertas.2.08+ PosModify | Modifica os níveis de take profit e stop loss de uma posição aberta. PosModifyTake | Modifica apenas o take profit de uma posição aberta. PosModifyStop | Modifica apenas o stop loss de uma posição aberta. OrderModify | Modifica os níveis de take profit e stop loss de uma ordem aberta. OrderModifyTake | Modifica apenas o take profit de uma ordem aberta. OrderModifyStop | Modifica apenas o stop loss de uma ordem aberta. OrderModifyPrice | Modifica apenas o preço de uma ordem aberta. Modify | Modifica os níveis de take profit e stop loss de uma posição ou ordem aberta. ModifyTake | Modifica apenas o take profit de uma posição ou ordem aberta. ModifyStop | Modifica apenas o stop loss de uma posição ou ordem aberta. ## Objetos básicos [Seção intitulada “Objetos básicos”](#basic-objects) > Estas funções permitem criar e manipular objetos básicos do MetaTrader 5. FUNÇÕES | ALIASES | RETORNOS ObjHL ObjHLine | ObjHL | Cria uma linha horizontal no gráfico.2.10+ ObjVL ObjVLine | ObjVL | Cria uma linha vertical no gráfico.2.10+ ObjTL ObjTrendLine | ObjTL | Cria uma linha de tendência no gráfico.2.10+ ObjRem ObjRemove | ObjRem | Remove um objeto do gráfico.2.10+ ObjClr ObjClear | ObjClr | Remove múltiplos objetos do gráfico.2.10+ ObjEx ObjExist | ObjEx | Verifica se um objeto existe no gráfico.2.10+ ObjGT ObjGetTime | ObjGT | Obtém o tempo associado a um objeto.2.10+ ObjGP ObjGetPrice | ObjGP | Obtém o preço associado a um objeto.2.10+ ObjST ObjSetTime | ObjST | Define o tempo de um ponto de um objeto.2.10+ ObjSP ObjSetPrice | ObjSP | Define o preço de um ponto de um objeto.2.10+ --- # Funções # Todas as funções VARIÁVEIS | RETORNOS Log | Imprime um texto nas Logs do ScriptBot. Print | Imprime um texto nas logs do Metatrader. See | Retorna o valor informado e exibe esse valor no log para depuração. Seq | Executa múltiplas expressões em sequência. 2.15+ Indicator | Retorna o valor do buffer de um indicador. Indicator'X' | Retorna o valor do buffer de um indicador. ClearDouble | Remove todas as variáveis criadas pelo usuário. ClearInt | Remove todas as variáveis criadas pelo usuário. ClearString | Remove todas as variáveis criadas pelo usuário. CreateDouble | Cria uma variável caso ela não exista. CreateInt | Cria uma variável caso ela não exista. CreateString | Cria uma variável caso ela não exista. GetDouble | Retorna o valor de uma variável criada pelo usuário. GetInt | Retorna o valor de uma variável criada pelo usuário. GetString | Retorna o valor de uma variável criada pelo usuário. RemoveDouble | Remove uma variável caso ela exista. RemoveInt | Remove uma variável caso ela exista. RemoveString | Remove uma variável caso ela exista. ReplaceDouble | Substitui o valor de uma variável caso ela exista. ReplaceInt | Substitui o valor de uma variável caso ela exista. ReplaceString | Substitui o valor de uma variável caso ela exista. SetDouble | Define o valor de uma variável ou cria uma nova. SetInt | Define o valor de uma variável ou cria uma nova. SetString | Define o valor de uma variável ou cria uma nova. AddDouble | Adiciona um valor double a uma variável existente. AddInt | Adiciona um valor inteiro a uma variável existente. 2.06+ GetGlobal | Obtém o valor de uma variável global do tipo double. 2.06+ CreateGlobal | Cria uma nova variável global do tipo double. 2.06+ ReplaceGlobal | Substitui o valor de uma variável global existente. 2.06+ GetGlobalTime | Obtém o timestamp do último acesso de uma variável global. 2.06+ SetGlobal | Define o valor de uma variável global (cria se não existir). 2.06+ AddGlobal | Adiciona um valor a uma variável global existente. 2.06+ RemoveGlobal | Remove uma variável global do tipo double. 2.06+ ClearGlobal | Limpa variáveis globais com um prefixo específico. 2.06+ Open | Retorna o preço de abertura de uma vela. Close | Retorna o preço de fechamento de uma vela. High | Retorna o preço da máxima de uma vela. Low | Retorna o preço da mínima de uma vela. Time | Retorna o horário de abertura de uma vela. Direction | Retorna a direção de uma vela (-1 = Negativa, 0 = Neutra, 1 = Positiva). Spread | Retorna a quantidade de spread de uma vela. Candle | Retorna o index da vela. MaxHigh | Retorna o preço máximo entre duas posições de velas. MinLow | Retorna o preço mínimo entre duas posições de velas. TickVolume | Retorna o volume de uma vela. RealVolume | Retorna o volume de uma vela usando os dados reais. Median | Retorna a media entre dois valores. TickToPoint | Retorna o valor de tick convertido em pontos. MoneyToPoint | Retorna o valor na moeda convertida em pontos. PipToPoint | Retorna o valor do pip convertido em pontos. CountStep | Retorna a quantidade de passos que ocorreram. CountStepGradual | Retorna a quantidade de passos que ocorreram de forma gradual. Division | Retorna a divisão entre dois valores, permitindo que o denominador seja zero. RestDivision | Retorna o resto da divisão entre dois valores, permitindo que o denominador seja zero. Percent | Retorna a variação percentual de value até target, com value sendo o valor base. PercentOfValue | Retorna a quantidade percentual de um valor. HitPercent | Retorna a quantidade percentual de acerto. CorrectPrice | Retorna o valor correto de um preço. Random | Retorna um valor inteiro aleatório entre dois valores. Round | Retorna o valor arredondado. RoundUp | Retorna o valor arredondado para cima. RoundDown | Retorna o valor arredondado para baixo. Max | Retorna o maior valor entre dois números. Min | Retorna o menor valor entre dois números. IsChance | Retorna verdadeiro com base em uma chance percentual. Decimals | Retorna o número de casas decimais de um valor. GetVolume | Retorna o volume que a ordem será executada. SetVolume | Define o novo volume da ordem. ToPositive | Retorna o valor absoluto de um número. ToNegative | Retorna o valor negativo de um número. ToTime | Retorna o horário em forma de texto simples para data em segundos. ToTimeModify | Retorna o horário modificado. ToTimeFormat | Retorna o horário em forma de texto. ToFormat | Retorna uma nova string formatada. ToInt | Retorna o valor convertido para inteiro. Last | Retorna o último preço de negociação. LastHigh | Retorna o maior preço do último negócio. LastLow | Retorna o menor preço do último negócio. Ask | Retorna o preço de venda (ask). AskHigh | Retorna o maior preço de venda (ask). AskLow | Retorna o menor preço de venda (ask). Bid | Retorna o preço de compra (bid). BidHigh | Retorna o maior preço de compra (bid). BidLow | Retorna o menor preço de compra (bid). LastTime | Retorna o horário do último negócio. DayStartTime | Retorna o horário de início do pregão no dia especificado. DayEndTime | Retorna o horário de encerramento do pregão no dia especificado. DayStartCandle | Retorna a vela (candle) de início do dia. DayEndCandle | Retorna a vela (candle) de fim do dia. DayHigh | Retorna o maior preço do dia. DayLow | Retorna o menor preço do dia. IsTime | Verifica se o tempo corresponde aos critérios informados. SymbolTime | Retorna o horário atual do símbolo. TimeLeft | Retorna o tempo restante da vela atual. DayOfWeek | Retorna o dia da semana. DayOfYear | Retorna o dia do ano. Month | Retorna o mês atual. Year | Retorna o ano atual. StartTime | Retorna o horário inicial de referência. ValueOfTime | Converte o horário em valor numérico baseado no método. AllVolumeOpen | Retorna o volume total de todas as posições e ordens abertas. 2.05+ BuyVolumeOpen | Retorna o volume total das posições e ordens de compra abertas. 2.05+ SellVolumeOpen | Retorna o volume total das posições e ordens de venda abertas. 2.05+ AllPosVolumeOpen | Retorna o volume total de todas as posições abertas. 2.05+ BuyPosVolumeOpen | Retorna o volume total das posições de compra abertas. 2.05+ SellPosVolumeOpen | Retorna o volume total das posições de venda abertas. 2.05+ AllOrderVolumeOpen | Retorna o volume total de todas as ordens pendentes. 2.05+ BuyOrderVolumeOpen | Retorna o volume total das ordens de compra pendentes. 2.05+ SellOrderVolumeOpen | Retorna o volume total das ordens de venda pendentes. 2.05+ AllOpen | Retorna a quantidade total de posições e ordens abertas. 2.05+ BuyOpen | Retorna a quantidade total de posições e ordens de compra abertas. 2.05+ SellOpen | Retorna a quantidade total de posições e ordens de venda abertas. 2.05+ AllPosOpen | Retorna a quantidade total de posições abertas. 2.05+ BuyPosOpen | Retorna a quantidade total de posições de compra abertas. 2.05+ SellPosOpen | Retorna a quantidade total de posições de venda abertas. 2.05+ AllOrderOpen | Retorna a quantidade total de ordens pendentes. 2.05+ BuyOrderOpen | Retorna a quantidade total de ordens de compra pendentes. 2.05+ SellOrderOpen | Retorna a quantidade total de ordens de venda pendentes. 2.05+ AllProfitOpen | Retorna o lucro/prejuízo total de todas as posições abertas. 2.05+ BuyProfitOpen | Retorna o lucro/prejuízo total das posições de compra abertas. 2.05+ SellProfitOpen | Retorna o lucro/prejuízo total das posições de venda abertas. 2.05+ AvgPrice | Retorna o preço médio das posições abertas. 2.05+ AvgDir | Retorna a direção média das posições abertas. 2.05+ AllAvgPrice | Retorna o preço médio de todas as posições abertas. 2.05+ BuyAvgPrice | Retorna o preço médio das posições de compra abertas. 2.05+ SellAvgPrice | Retorna o preço médio das posições de venda abertas. 2.05+ AllAvgDir | Retorna a direção média de todas as posições abertas. 2.05+ BuyAvgDir | Retorna a direção média das posições de compra abertas. 2.05+ SellAvgDir | Retorna a direção média das posições de venda abertas. 2.05+ PosTicket | Retorna o ticket da posição aberta mais próxima do índice informado. PosTicketExact | Retorna o ticket da posição aberta no índice informado ou 0, caso não exista. 2.15+ PosDouble | Retorna o valor de uma propriedade numérica (double) de uma posição. PosInt | Retorna o valor de uma propriedade inteira de uma posição. PosString | Retorna o valor de uma propriedade textual de uma posição. PosCurrent | Retorna o preço atual de uma posição aberta. PosOpen | Retorna o preço de abertura de uma posição. PosProfit | Retorna o lucro atual de uma posição. PosStop | Retorna o preço do Stop Loss de uma posição. PosSwap | Retorna o valor do swap acumulado de uma posição. PosTake | Retorna o preço do Take Profit de uma posição. PosVolume | Retorna o volume de uma posição. PosIdentifier | Retorna o identificador único de uma posição. PosMagic | Retorna o número mágico de uma posição. PosReason | Retorna o motivo de abertura de uma posição. PosTime | Retorna o horário de abertura de uma posição. PosTimeMsc | Retorna o horário de abertura de uma posição em milissegundos. PosTimeUpdate | Retorna o horário da última atualização de uma posição. PosTimeUpdateMsc | Retorna o horário da última atualização de uma posição em milissegundos. PosType | Retorna o tipo de uma posição (compra/venda). PosSymbol | Retorna o símbolo do ativo de uma posição. PosComment | Retorna o comentário associado a uma posição. PosExternal | Retorna o ID externo de uma posição. OrderTicket | Retorna o ticket da ordem aberta mais próxima do índice informado. OrderTicketExact | Retorna o ticket da ordem aberta no índice informado ou 0, caso não exista. 2.15+ OrderDouble | Retorna o valor de uma propriedade numérica (double) de uma ordem. OrderInt | Retorna o valor de uma propriedade inteira de uma ordem. OrderString | Retorna o valor de uma propriedade textual de uma ordem. OrderVolumeInit | Retorna o volume inicial de uma ordem pendente. OrderVolume | Retorna o volume atual de uma ordem. OrderOpen | Retorna o preço de abertura de uma ordem. OrderStop | Retorna o preço do Stop Loss de uma ordem. OrderTake | Retorna o preço do Take Profit de uma ordem. OrderCurrent | Retorna o preço atual de uma ordem pendente. OrderStopLimit | Retorna o preço de ativação para ordens Stop Limit. OrderSetup | Retorna a data/hora de criação da ordem. OrderType | Retorna o tipo de uma ordem. OrderState | Retorna o estado atual de uma ordem. OrderTimeExpiration | Retorna a data/hora de expiração de uma ordem. OrderDone | Retorna a data/hora de execução ou cancelamento de uma ordem. OrderSetupMsc | Retorna a data/hora de criação da ordem em milissegundos. OrderDoneMsc | Retorna a data/hora de execução ou cancelamento em milissegundos. OrderFilling | Retorna a política de preenchimento de uma ordem. OrderTime | Retorna a data/hora da última modificação da ordem. OrderMagic | Retorna o número mágico de uma ordem. OrderReason | Retorna o motivo de criação da ordem. OrderId | Retorna o ID da ordem no sistema. OrderById | Retorna o ticket da ordem pelo ID do sistema. OrderSymbol | Retorna o símbolo do ativo de uma ordem. OrderComment | Retorna o comentário associado a uma ordem. DealTicket | Retorna o ticket da posição fechada mais próxima do índice informado. DealTicketExact | Retorna o ticket da posição fechada no índice informado ou 0, caso não exista. 2.15+ DealProfit | Retorna o lucro/prejuízo de um negócio. DealOpen | Retorna o preço de abertura de um negócio. DealCommission | Retorna o valor da comissão de um negócio. DealFee | Retorna o valor da taxa de um negócio. DealStop | Retorna o preço do stop loss de um negócio. DealTake | Retorna o preço do take profit de um negócio. DealSwap | Retorna o valor do swap de um negócio. DealVolume | Retorna o volume de um negócio. DealMagic | Retorna o número mágico de um negócio. DealReason | Retorna o motivo da execução de um negócio. DealOrder | Retorna o ticket da ordem associada a um negócio. DealId | Retorna o ID de um negócio. DealEntry | Retorna o tipo de entrada de um negócio. DealOut | Retorna se o negócio é uma saída. DealIn | Retorna se o negócio é uma posição de entrada. DealTime | Retorna a data/hora de execução de um negócio. DealTimeMsc | Retorna o tempo de execução de negociações em milissegundos desde 01.01.1970 DealType | Retorna o tipo de um negócio. DealComment | Retorna o comentário associado a um negócio. DealExternal | Retorna o ID externo de um negócio. DealSymbol | Retorna o símbolo de um negócio. BuyAuto | Abre uma posição de compra no mercado. SellAuto | Abre uma posição de venda no mercado. Buy | Abre uma posição de compra no mercado atual. Sell | Abre uma posição de venda no mercado atual. BuyOrder | Coloca uma ordem pendente de compra. SellOrder | Coloca uma ordem pendente de venda. PosClose | Fecha uma posição aberta completamente. PosClosePartial | Fecha parcialmente uma posição aberta. OrderClose | Cancela uma ordem pendente. PosCloseAll | Fecha todas as posições abertas. PosBuyCloseAll | Fecha todas as posições de compra abertas. PosSellCloseAll | Fecha todas as posições de venda abertas. OrderCloseAll | Fecha todas as ordens abertas. 2.08+ OrderBuyCloseAll | Fecha todas as ordens de compra abertas. 2.08+ OrderSellCloseAll | Fecha todas as ordens de venda abertas. 2.08+ PosModify | Modifica os níveis de take profit e stop loss de uma posição aberta. PosModifyTake | Modifica apenas o take profit de uma posição aberta. PosModifyStop | Modifica apenas o stop loss de uma posição aberta. OrderModify | Modifica os níveis de take profit e stop loss de uma ordem aberta. OrderModifyTake | Modifica apenas o take profit de uma ordem aberta. OrderModifyStop | Modifica apenas o stop loss de uma ordem aberta. OrderModifyPrice | Modifica apenas o preço de uma ordem aberta. Modify | Modifica os níveis de take profit e stop loss de uma posição ou ordem aberta. ModifyTake | Modifica apenas o take profit de uma posição ou ordem aberta. ModifyStop | Modifica apenas o stop loss de uma posição ou ordem aberta. ObjHLine | Cria uma linha horizontal no gráfico. 2.10+ ObjVLine | Cria uma linha vertical no gráfico. 2.10+ ObjTrendLine | Cria uma linha de tendência no gráfico. 2.10+ ObjRemove | Remove um objeto do gráfico. 2.10+ ObjClear | Remove múltiplos objetos do gráfico. 2.10+ ObjExist | Verifica se um objeto existe no gráfico. 2.10+ ObjGetTime | Obtém o tempo associado a um objeto. 2.10+ ObjGetPrice | Obtém o preço associado a um objeto. 2.10+ ObjSetTime | Define o tempo de um ponto de um objeto. 2.10+ ObjSetPrice | Define o preço de um ponto de um objeto. 2.10+ --- # SetString Esta função define o valor de uma variável. Se a variável não existir, ela será criada, caso já exista, seu valor será substituído. ### Função Nome da função: `SetString` Aliases: `SetStr` ### Parâmetros string | variable; | | // Nome da variável. string | value; | | // Valor da variável. ### Exemplos ```java //Default example: SetString[variable, value] //Using aliases: SetStr[variable, value] //Other examples SetString["Name", "my other text"] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada ou atualizada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou o valor não foi atualizado. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # SetInt Esta função define o valor de uma variável. Se a variável não existir, ela será criada, caso já exista, seu valor será substituído. ### Função Nome da função: `SetInt` ### Parâmetros string | variable; | | // Nome da variável. long | value; | | // Valor da variável. ### Exemplos ```java //Default example: SetInt[variable, value] //Other examples SetInt["Name", 777] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada ou atualizada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou o valor não foi atualizado. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # SetDouble Esta função define o valor de uma variável. Se a variável não existir, ela será criada, caso já exista, seu valor será substituído. ### Função Nome da função: `SetDouble` Aliases: `SetDou` ### Parâmetros string | variable; | | // Nome da variável. double | value; | | // Valor da variável. ### Exemplos ```java //Default example: SetDouble[variable, value] //Using aliases: SetDou[variable, value] //Other examples SetDouble["Name", 777] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada ou atualizada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou o valor não foi atualizado. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ReplaceString Esta função permite substituir o valor de uma variável caso não exista. ### Função Nome da função: `ReplaceString` Aliases: `RepStr` ### Parâmetros string | variable; | | // Nome da variável. string | value; | | // Valor da variável. ### Exemplos ```java //Default example: ReplaceString[variable, value] //Using aliases: RepStr[variable, value] //Other examples ReplaceString["Name", "my other text"] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou variavel já existente. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ReplaceInt Esta função permite substituir o valor de uma variável caso não exista. ### Função Nome da função: `ReplaceInt` Aliases: `RepInt` ### Parâmetros string | variable; | | // Nome da variável. long | value; | | // Valor da variável. ### Exemplos ```java //Default example: ReplaceInt[variable, value] //Using aliases: RepInt[variable, value] //Other examples ReplaceInt["Name", 888] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou variavel já existente. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ReplaceDouble Esta função permite substituir o valor de uma variável caso não exista. ### Função Nome da função: `ReplaceDouble` Aliases: `RepDou` ### Parâmetros string | variable; | | // Nome da variável. double | value; | | // Valor da variável. ### Exemplos ```java //Default example: ReplaceDouble[variable, value] //Using aliases: RepDou[variable, value] //Other examples ReplaceDouble["Name", 888] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou variavel já existente. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # RemoveString Esta função permite remover uma variável caso ela exista. ### Função Nome da função: `RemoveString` Aliases: `RemStr` ### Parâmetros string | variable; | | // Nome da variável. ### Exemplos ```java //Default example: RemoveString[variable] //Using aliases: RemStr[variable] //Other examples RemoveString["Name"] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi removida.. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável nao foi removida ou se não existia uma variável com esse nome. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # RemoveInt Esta função permite remover uma variável caso ela exista. ### Função Nome da função: `RemoveInt` Aliases: `RemInt` ### Parâmetros string | variable; | | // Nome da variável. ### Exemplos ```java //Default example: RemoveInt[variable] //Using aliases: RemInt[variable] //Other examples RemoveInt["Name"] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi removida.. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável nao foi removida ou se não existia uma variável com esse nome. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # RemoveDouble Esta função permite remover uma variável caso ela exista. ### Função Nome da função: `RemoveDouble` Aliases: `RemDou` ### Parâmetros string | variable; | | // Nome da variável. ### Exemplos ```java //Default example: RemoveDouble[variable] //Using aliases: RemDou[variable] //Other examples RemoveDouble["Name" ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi removida.. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável nao foi removida ou se não existia uma variável com esse nome. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # GetString Esta função retorna o valor de uma variável criada pelo usuário. ### Função Nome da função: `GetString` Aliases: `GetStr` ### Parâmetros string | variable; | | // Nome da variável. ### Exemplos ```java //Default example: GetString[variable] //Using aliases: GetStr[variable] //Other examples GetString["Name" ``` ### Retornos Em caso de sucesso: Retorna o valor armazenado na variável. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna valor vazio caso a variável não exista. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # GetInt Esta função retorna o valor de uma variável criada pelo usuário. ### Função Nome da função: `GetInt` ### Parâmetros string | variable; | | // Nome da variável. ### Exemplos ```java //Default example: GetInt[variable] //Other examples GetInt["Name" ``` ### Retornos Em caso de sucesso: Retorna o valor armazenado na variável. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna '0' caso a variável não exista. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # GetDouble Esta função retorna o valor de uma variável criada pelo usuário. ### Função Nome da função: `GetDouble` Aliases: `GetDou` ### Parâmetros string | variable; | | // Nome da variável. ### Exemplos ```java //Default example: GetDouble[variable] //Using aliases: GetDou[variable] //Other examples GetDouble["Name" ``` ### Retornos Em caso de sucesso: Retorna o valor armazenado na variável. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna '0.0' caso a variável não exista. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # CreateString Esta função permite criar uma variável caso não exista. ### Função Nome da função: `CreateString` Aliases: `CreStr` ### Parâmetros string | variable; | | // Nome da variável. string | value; | | // Valor da variável. ### Exemplos ```java //Default example: CreateString[variable, value] //Using aliases: CreStr[variable, value] //Other examples CreateString["Name", "my text"] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou variavel já existente. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # CreateInt Esta função permite criar uma variável caso não exista. ### Função Nome da função: `CreateInt` Aliases: `CreInt` ### Parâmetros string | variable; | | // Nome da variável. long | value; | | // Valor da variável. ### Exemplos ```java //Default example: CreateInt[variable, value] //Using aliases: CreInt[variable, value] //Other examples CreateInt["Name", 777] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou variavel já existente. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # CreateDouble Esta função permite criar uma variável caso não exista. ### Função Nome da função: `CreateDouble` Aliases: `CreDou` ### Parâmetros string | variable; | | // Nome da variável. double | value; | | // Valor da variável. ### Exemplos ```java //Default example: CreateDouble[variable, value] //Using aliases: CreDou[variable, value] //Other examples CreateDouble["Name", 777] ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se a variável foi criada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se a variável não foi criada por conta de um erro ou variavel já existente. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ClearString Esta função permite remover todas as variáveis criadas pelo usuário. ### Função Nome da função: `ClearString` Aliases: `ClrStr` ### Parâmetros Esta função não requer parâmetros. ### Exemplos ```java //Default example: ClearString[] //Using aliases: ClrStr[] //Other examples GetInt["Count"] >= 10 -> ClearString[]; ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se as variáveis foram removidas. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se as variáveis não foram removidas ou não existem. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ClearInt Esta função permite remover todas as variáveis criadas pelo usuário. ### Função Nome da função: `ClearInt` Aliases: `ClrInt` ### Parâmetros Esta função não requer parâmetros. ### Exemplos ```java //Default example: ClearInt[] //Using aliases: ClrInt[] //Other examples GetInt["Count"] >= 10 -> ClearInt[]; ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se as variáveis foram removidas. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se as variáveis não foram removidas ou não existem. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ClearDouble Esta função permite remover todas as variáveis criadas pelo usuário. ### Função Nome da função: `ClearDouble` Aliases: `ClrDou` ### Parâmetros Esta função não requer parâmetros. ### Exemplos ```java //Default example: ClearDouble[] //Using aliases: ClrDou[] //Other examples GetDouble["Count"] >= 10 -> ClearDouble[]; ``` ### Retornos Em caso de sucesso: Retorna um boolean (true) se as variáveis foram removidas. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um boolean (false) se as variáveis não foram removidas ou não existem. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # AddInt #### Disponível a partir da versão 2.06 Esta função adiciona um valor inteiro ao valor atual de uma variável. Se a variável não existir, ela será criada com o valor especificado. ### Função Nome da função: `AddInt` ### Parâmetros string | name; | | // Nome da variável. int | value; | | // Valor inteiro a ser adicionado. ### Exemplos ```java //Default example: AddInt[name, value] //Other examples AddInt("contador", 5) ``` ### Retornos Em caso de sucesso: Retorna true se o valor foi adicionado/criado com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se ocorrer um erro na operação. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # AddDouble Esta função adiciona um valor double ao valor atual de uma variável. Se a variável não existir, ela será criada com o valor especificado. ### Função Nome da função: `AddDouble` Aliases: `AddDou` ### Parâmetros string | name; | | // Nome da variável. double | value; | | // Valor double a ser adicionado. ### Exemplos ```java //Default example: AddDouble[name, value] //Using aliases: AddDou[name, value] //Other examples AddDouble("saldo", 15.75) ``` ### Retornos Em caso de sucesso: Retorna true se o valor foi adicionado/criado com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se ocorrer um erro na operação. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # SellOrder Esta função coloca uma ordem pendente de venda (Sell Limit/Stop) com parâmetros opcionais de take profit, stop loss e comentário personalizado. ### Função Nome da função: `SellOrder` ### Parâmetros double | price; | | // Preço de ativação para a ordem pendente. double | volume; | | // Volume/lote da operação. int | tpPoints | = 0; | // Pontos para o take profit (0 para desativar). int | slPoints | = 0; | // Pontos para o stop loss (0 para desativar). string | comment | = "SB-PlaceByFunction"; | // Comentário associado à ordem. string | symbol | = REAL; | // Símbolo do ativo (vazio para usar o símbolo atual). ### Exemplos ```java //Default example: SellOrder[price, volume, tpPoints = 0, slPoints = 0, comment = "SB-PlaceByFunction", symbol = REAL] //Other examples SellOrder[1.13000, 0.1, 100, 50] // Ordem pendente de venda em 1.13000 com TP 100 pontos e SL 50 pontos SellOrder[1.13500, 0.5] // Ordem pendente de venda em 1.13500 sem TP/SL SellOrder[1.13500, 0.5, TickToPoint[20], TickToPoint[20]] // Ordem pendente de venda em 1.13500 com TP/SL em 20 ticks ``` ### Retornos Em caso de sucesso: Retorna true se a ordem for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a ordem não for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # SellAuto Esta função abre uma posição de venda no mercado, com opções de take profit, stop loss e comentário. O tipo de ordem (venda imediata ou pendente) é definido automaticamente. ### Função Nome da função: `SellAuto` ### Parâmetros double | price; | | // Preço de entrada para a ordem de venda. double | volume; | | // Volume/lote da operação. int | tpPoints | = 0; | // Pontos para o take profit (0 para desativar). int | slPoints | = 0; | // Pontos para o stop loss (0 para desativar). string | comment | = "SB-PlaceByFunction"; | // Comentário associado à ordem. string | symbol | = REAL; | // Símbolo do ativo (vazio para usar o símbolo atual). ### Exemplos ```java //Default example: SellAuto[price, volume, tpPoints = 0, slPoints = 0, comment = "SB-PlaceByFunction", symbol = REAL] //Other examples SellAuto[BID, 0.1, 100, 50] // Venda 0.1 lote no preço atual com TP 100 pontos e SL 50 pontos SellAuto[BID, 0.5] // Venda 0.5 lote sem TP/SL SellAuto[BID, 0.5, TickToPoint[20], TickToPoint[20]] // Venda 0.5 lote com TP/SL em 20 ticks ``` ### Retornos Em caso de sucesso: Retorna true se a ordem for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a ordem não for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # Sell Esta função abre uma posição de venda no preço de mercado atual (Bid), com parâmetros opcionais de take profit, stop loss e comentário personalizado. ### Função Nome da função: `Sell` ### Parâmetros double | volume; | | // Volume/lote da operação. int | tpPoints | = 0; | // Pontos para o take profit (0 para desativar). int | slPoints | = 0; | // Pontos para o stop loss (0 para desativar). string | comment | = "SB-PlaceByFunction"; | // Comentário associado à ordem. string | symbol | = REAL; | // Símbolo do ativo (vazio para usar o símbolo atual). ### Exemplos ```java //Default example: Sell[volume, tpPoints = 0, slPoints = 0, comment = "SB-PlaceByFunction", symbol = REAL] //Other examples Sell[0.1, 100, 50] // Vende 0.1 lote no preço de mercado com TP 100 pontos e SL 50 pontos Sell[0.5] // Vende 0.5 lote sem TP/SL Sell[0.5, TickToPoint[20], TickToPoint[20]] // Vende 0.5 lote com TP/SL em 20 ticks ``` ### Retornos Em caso de sucesso: Retorna true se a ordem for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a ordem não for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # PosSellCloseAll Esta função fecha todas as posições de venda (Sell) abertas no mercado, podendo ser filtradas por símbolo. ### Função Nome da função: `PosSellCloseAll` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: PosSellCloseAll[symbol = REAL, magic = MAGIC] //Other examples PosSellCloseAll[] // Fecha todas as posições de venda em todos os símbolos PosSellCloseAll[EURUSD] // Fecha todas as posições de venda somente no EURUSD ``` ### Retornos Em caso de sucesso: Retorna o número de posições de venda fechadas com sucesso. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma posição de venda for fechada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # PosModifyTake Esta função permite alterar somente o nível de take profit de uma posição aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `PosModifyTake` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | take | = 0; | // Valor do novo take profit (0 mantém inalterado). ### Exemplos ```java //Default example: PosModifyTake[ticket, method, take = 0] //Other examples PosModifyTake[123456, TYPE_PRICE, 1.12500] // Altera TP para 1.12500 (valor absoluto) PosModifyTake[123456, TYPE_POINT, 300] // Altera TP para +300 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a posição não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # PosModifyStop Esta função permite alterar somente o nível de stop loss de uma posição aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `PosModifyStop` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | stop | = 0; | // Valor do novo stop loss (0 mantém inalterado). ### Exemplos ```java //Default example: PosModifyStop[ticket, method, stop = 0] //Other examples PosModifyStop[123456, TYPE_PRICE, 1.11500] // Altera SL para 1.11500 (valor absoluto) PosModifyStop[123456, TYPE_POINT, 150] // Altera SL para -150 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a posição não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # PosModify Esta função permite alterar os níveis de take profit e/ou stop loss de uma posição aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `PosModify` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | take | = 0; | // Valor do novo take. (0= ignora). double | stop | = 0; | // Valor do novo stop loss. (0= ignora). ### Exemplos ```java //Default example: PosModify[ticket, method, take = 0, stop = 0] //Other examples PosModify[123456, TYPE_PRICE, 1.12500, 1.11500] // Altera TP para 1.12500 e SL para 1.11500 (valores absolutos) PosModify[123456, TYPE_POINT, 300, 150] // Altera TP para +300 pontos e SL para -150 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a posição não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # PosClosePartial Esta função fecha parcialmente uma posição aberta no mercado, reduzindo seu volume pelo valor especificado. ### Função Nome da função: `PosClosePartial` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição a ser parcialmente fechada. double | volume; | | // Volume/lote a ser fechado. ### Exemplos ```java //Default example: PosClosePartial[ticket, volume] //Other examples PosClosePartial[PosTicket[0], 0.5] // Fecha 0.5 lotes da ultima posição aberta ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a posição for parcialmente fechada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a posição não for encontrada, o volume for inválido ou não puder ser fechada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # PosCloseAll Esta função fecha todas as posições abertas no mercado, podendo ser filtradas por símbolo. ### Função Nome da função: `PosCloseAll` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: PosCloseAll[symbol = REAL, magic = MAGIC] //Other examples PosCloseAll[] // Fecha todas as posições abertas em todos os símbolos PosCloseAll[EURUSD] // Fecha todas as posições abertas somente no EURUSD ``` ### Retornos Em caso de sucesso: Retorna o número de posições fechadas com sucesso. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma posição for fechada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # PosClose Esta função fecha completamente uma posição aberta no mercado, identificada pelo seu ticket. O fechamento é feito ao preço atual de mercado. ### Função Nome da função: `PosClose` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição a ser fechada. ### Exemplos ```java //Default example: PosClose[ticket] //Other examples PosClose[PosTicket[0]] // Fecha completamente a ultima posição aberta ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a posição for fechada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a posição não for encontrada ou não puder ser fechada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # PosBuyCloseAll Esta função fecha todas as posições de compra (Buy) abertas no mercado, podendo ser filtradas por símbolo. ### Função Nome da função: `PosBuyCloseAll` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: PosBuyCloseAll[symbol = REAL, magic = MAGIC] //Other examples PosBuyCloseAll[] // Fecha todas as posições de compra em todos os símbolos PosBuyCloseAll[EURUSD] // Fecha todas as posições de compra somente no EURUSD ``` ### Retornos Em caso de sucesso: Retorna o número de posições de compra fechadas com sucesso. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma posição de compra for fechada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderSellCloseAll #### Disponível a partir da versão 2.08 Esta função fecha todas as ordens de venda (Sell) abertas no mercado, podendo ser filtradas por símbolo. ### Função Nome da função: `OrderSellCloseAll` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: OrderSellCloseAll[symbol = REAL, magic = MAGIC] //Other examples OrderSellCloseAll[] // Fecha todas as ordens de venda em todos os símbolos OrderSellCloseAll[EURUSD] // Fecha todas as ordens de venda somente no EURUSD ``` ### Retornos Em caso de sucesso: Retorna o número de ordens de venda fechadas com sucesso. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma ordem de venda for fechada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderModifyTake Esta função permite alterar somente o nível de take profit de uma ordem aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `OrderModifyTake` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | take | = 0; | // Valor do novo take profit (0 mantém inalterado). ### Exemplos ```java //Default example: OrderModifyTake[ticket, method, take = 0] //Other examples OrderModifyTake[123456, TYPE_PRICE, 1.12500] // Altera TP para 1.12500 (valor absoluto) OrderModifyTake[123456, TYPE_POINT, 300] // Altera TP para +300 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a ordem não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # OrderModifyStop Esta função permite alterar somente o nível de stop loss de uma ordem aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `OrderModifyStop` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | stop | = 0; | // Valor do novo stop loss (0 mantém inalterado). ### Exemplos ```java //Default example: OrderModifyStop[ticket, method, stop = 0] //Other examples OrderModifyStop[123456, TYPE_PRICE, 1.11500] // Altera SL para 1.11500 (valor absoluto) OrderModifyStop[123456, TYPE_POINT, 150] // Altera SL para -150 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a ordem não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # OrderModifyPrice Esta função permite alterar somente o preço de uma ordem aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `OrderModifyPrice` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem a ser modificada. double | price; | | // Valor do novo preço. ### Exemplos ```java //Default example: OrderModifyPrice[ticket, price] //Other examples OrderModifyPrice[123456, 1.11500] // Altera preço para 1.11500 ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a ordem não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # OrderModify Esta função permite alterar os níveis de take profit e/ou stop loss de uma ordem aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `OrderModify` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | take | = 0; | // Valor do novo take. (0= ignora). double | stop | = 0; | // Valor do novo stop loss. (0= ignora). double | price | = 0; | // Valor do novo preço. (0= ignora). ### Exemplos ```java //Default example: OrderModify[ticket, method, take = 0, stop = 0, price = 0] //Other examples OrderModify[123456, TYPE_PRICE, 1.12500, 1.11500] // Altera TP para 1.12500 e SL para 1.11500 (valores absolutos) OrderModify[123456, TYPE_POINT, 300, 150] // Altera TP para +300 pontos e SL para -150 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a ordem não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # OrderCloseAll #### Disponível a partir da versão 2.08 Esta função fecha todas as ordens abertas no mercado, podendo ser filtradas por símbolo. ### Função Nome da função: `OrderCloseAll` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: OrderCloseAll[symbol = REAL, magic = MAGIC] //Other examples OrderCloseAll[] // Fecha todas as ordens abertas em todos os símbolos OrderCloseAll[EURUSD] // Fecha todas as ordens abertas somente no EURUSD ``` ### Retornos Em caso de sucesso: Retorna o número de ordens fechadas com sucesso. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma ordem for fechada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderClose Esta função cancela uma ordem pendente (limit/stop) identificada pelo seu ticket. ### Função Nome da função: `OrderClose` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem pendente a ser cancelada. ### Exemplos ```java //Default example: OrderClose[ticket] //Other examples OrderClose[OrderTicket[0]] // Cancela a ultima ordem pendente ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a ordem for cancelada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a ordem não for encontrada ou não puder ser cancelada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # OrderBuyCloseAll #### Disponível a partir da versão 2.08 Esta função fecha todas as ordens de compra (Buy) abertas no mercado, podendo ser filtradas por símbolo. ### Função Nome da função: `OrderBuyCloseAll` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: OrderBuyCloseAll[symbol = REAL, magic = MAGIC] //Other examples OrderBuyCloseAll[] // Fecha todas as ordens de compra em todos os símbolos OrderBuyCloseAll[EURUSD] // Fecha todas as ordens de compra somente no EURUSD ``` ### Retornos Em caso de sucesso: Retorna o número de ordens de compra fechadas com sucesso. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma ordem de compra for fechada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # ModifyTake Esta função permite alterar somente o nível de take profit de uma posição ou ordem aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `ModifyTake` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | take | = 0; | // Valor do novo take profit (0 mantém inalterado). ### Exemplos ```java //Default example: ModifyTake[ticket, method, take = 0] //Other examples ModifyTake[123456, TYPE_PRICE, 1.12500] // Altera TP para 1.12500 (valor absoluto) ModifyTake[123456, TYPE_POINT, 300] // Altera TP para +300 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a posição ou ordem não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ModifyStop Esta função permite alterar somente o nível de stop loss de uma posição ou ordem aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `ModifyStop` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | stop | = 0; | // Valor do novo stop loss (0 mantém inalterado). ### Exemplos ```java //Default example: ModifyStop[ticket, method, stop = 0] //Other examples ModifyStop[123456, TYPE_PRICE, 1.11500] // Altera SL para 1.11500 (valor absoluto) ModifyStop[123456, TYPE_POINT, 150] // Altera SL para -150 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a posição ou ordem não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # Modify Esta função permite alterar os níveis de take profit e/ou stop loss de uma posição ou ordem aberta existente, utilizando diferentes métodos de cálculo. ### Função Nome da função: `Modify` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição a ser modificada. ENUM_TRADE_MODIFY | method; | | // Método de cálculo: 'TYPE_PRICE', 'TYPE_POINT'. double | take | = 0; | // Valor do novo take. (0= ignora). double | stop | = 0; | // Valor do novo stop loss. (0= ignora). ### Exemplos ```java //Default example: Modify[ticket, method, take = 0, stop = 0] //Other examples Modify[123456, TYPE_PRICE, 1.12500, 1.11500] // Altera TP para 1.12500 e SL para 1.11500 (valores absolutos) Modify[123456, TYPE_POINT, 300, 150] // Altera TP para +300 pontos e SL para -150 pontos do preço de abertura ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se a posição ou ordem não for encontrada ou a modificação falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # BuyOrder Esta função coloca uma ordem pendente de compra (Buy Limit/Stop) com parâmetros opcionais de take profit, stop loss e comentário personalizado. ### Função Nome da função: `BuyOrder` ### Parâmetros double | price; | | // Preço de ativação para a ordem pendente. double | volume; | | // Volume/lote da operação. int | tpPoints | = 0; | // Pontos para o take profit (0 para desativar). int | slPoints | = 0; | // Pontos para o stop loss (0 para desativar). string | comment | = "SB-PlaceByFunction"; | // Comentário associado à ordem. string | symbol | = REAL; | // Símbolo do ativo (vazio para usar o símbolo atual). ### Exemplos ```java //Default example: BuyOrder[price, volume, tpPoints = 0, slPoints = 0, comment = "SB-PlaceByFunction", symbol = REAL] //Other examples BuyOrder[1.12000, 0.1, 100, 50] // Ordem pendente de compra em 1.12000 com TP 100 pontos e SL 50 pontos BuyOrder[1.11500, 0.5] // Ordem pendente de compra em 1.11500 sem TP/SL BuyOrder[1.11500, 0.5, TickToPoint[20], TickToPoint[20]] // Ordem pendente de compra em 1.11500 com TP/SL em 20 ticks ``` ### Retornos Em caso de sucesso: Retorna true se a ordem for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a ordem não for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # BuyAuto Esta função abre uma posição de compra no mercado, com opções de take profit, stop loss e comentário. O tipo de ordem (compra imediata ou pendente) é definido automaticamente. ### Função Nome da função: `BuyAuto` ### Parâmetros double | price; | | // Preço de entrada para a ordem de compra. double | volume; | | // Volume/lote da operação. int | tpPoints | = 0; | // Pontos para o take profit (0 para desativar). int | slPoints | = 0; | // Pontos para o stop loss (0 para desativar). string | comment | = "SB-PlaceByFunction"; | // Comentário associado à ordem. string | symbol | = REAL; | // Símbolo do ativo (vazio para usar o símbolo atual). ### Exemplos ```java //Default example: BuyAuto[price, volume, tpPoints = 0, slPoints = 0, comment = "SB-PlaceByFunction", symbol = REAL] //Other examples BuyAuto[ASK, 0.1, 100, 50] // Compra 0.1 lote no preço atual com TP 100 pontos e SL 50 pontos BuyAuto[ASK, 0.5] // Compra 0.5 lote sem TP/SL BuyAuto[ASK, 0.5, TickToPoint[20], TickToPoint[20]] // Compra 0.5 lote com TP/SL em 20 ticks ``` ### Retornos Em caso de sucesso: Retorna true se a ordem for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a ordem não for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # Buy Esta função abre uma posição de compra no preço de mercado atual (Ask), com parâmetros opcionais de take profit, stop loss e comentário personalizado. ### Função Nome da função: `Buy` ### Parâmetros double | volume; | | // Volume/lote da operação. int | tpPoints | = 0; | // Pontos para o take profit (0 para desativar). int | slPoints | = 0; | // Pontos para o stop loss (0 para desativar). string | comment | = "SB-PlaceByFunction"; | // Comentário associado à ordem. string | symbol | = REAL; | // Símbolo do ativo (vazio para usar o símbolo atual). ### Exemplos ```java //Default example: Buy[volume, tpPoints = 0, slPoints = 0, comment = "SB-PlaceByFunction", symbol = REAL] //Other examples Buy[0.1, 100, 50] // Compra 0.1 lote no preço de mercado com TP 100 pontos e SL 50 pontos Buy[0.5] // Compra 0.5 lote sem TP/SL Buy[0.5, TickToPoint[20], TickToPoint[20]] // Compra 0.5 lote com TP/SL em 20 ticks ``` ### Retornos Em caso de sucesso: Retorna true se a ordem for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a ordem não for executada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # Year Esta função retorna o número do ano atual com base no horário do símbolo. ### Função Nome da função: `Year` ### Parâmetros string | symbol | = SYMBOL; | // Símbolo do ativo. ### Exemplos ```java //Default example: Year[symbol = SYMBOL] //Other examples Year["VALE3"] ``` ### Retornos Em caso de sucesso: Retorna o ano atual (ex: 2025). Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna -1 se não for possível determinar o ano. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # ValueOfTime Esta função retorna um valor numérico representando o tempo, conforme o método especificado. Podendo ser segundos, minutos, horas, etc.. ### Função Nome da função: `ValueOfTime` Aliases: `ValueT` ### Parâmetros datetime | time; | | // Horário a ser convertido. ENUM_TIME | method; | | // Método de retorno. (ex: 'TYPE_SEC', 'TYPE_MIN' ...). ### Exemplos ```java //Default example: ValueOfTime[time, method] //Using aliases: ValueT[time, method] //Other examples ValueOfTime[TimeNow, TYPE_SEC] ``` ### Retornos Em caso de sucesso: Retorna o valor numérico correspondente ao horário. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna -1 se o horário ou método forem inválidos. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # TimeLeft Esta função retorna quanto tempo falta para o término da vela atual no timeframe e símbolo especificados. ### Função Nome da função: `TimeLeft` Aliases: `TLeft` ### Parâmetros ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. string | symbol | = SYMBOL; | // Símbolo do ativo. ### Exemplos ```java //Default example: TimeLeft[timeframe = CURRENT, symbol = SYMBOL] //Using aliases: TLeft[timeframe = CURRENT, symbol = SYMBOL] //Other examples TimeLeft[M5, "PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o tempo restante (em segundos) da vela atual. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna -1 se os parâmetros forem inválidos. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # SymbolTime Esta função retorna o horário atual do ativo (símbolo) no mercado correspondente. ### Função Nome da função: `SymbolTime` Aliases: `STime` ### Parâmetros string | symbol | = SYMBOL; | // Símbolo do ativo. ### Exemplos ```java //Default example: SymbolTime[symbol = SYMBOL] //Using aliases: STime[symbol = SYMBOL] //Other examples SymbolTime["PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o horário atual do ativo. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna null se o símbolo for inválido. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # StartTime Esta função retorna o horário de início conforme o método informado. Pode representar abertura do dia, semana, mês, etc. ### Função Nome da função: `StartTime` Aliases: `StartT` ### Parâmetros ENUM_TIME_HISTORIC | method; | | // Método de cálculo (ex: 'TYPE_DAY', 'TYPE_WEEK' ...). string | symbol | = SYMBOL; | // Símbolo do ativo. ### Exemplos ```java //Default example: StartTime[method, symbol = SYMBOL] //Using aliases: StartT[method, symbol = SYMBOL] //Other examples StartTime[TYPE_DAY, "PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o horário de início conforme o método. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna null se o método ou símbolo for inválido. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # Month Esta função retorna o número do mês atual (1 a 12) com base no horário atual do símbolo. ### Função Nome da função: `Month` ### Parâmetros string | symbol | = SYMBOL; | // Símbolo do ativo. ### Exemplos ```java //Default example: Month[symbol = SYMBOL] //Other examples Month["VALE3"] ``` ### Retornos Em caso de sucesso: Retorna o número do mês. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna -1 se não for possível determinar o mês. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # IsTime Esta função verifica se o horário de referência corresponde aos valores fornecidos para hora, minuto e segundo. Caso algum dos valores seja -1, ele será ignorado no critério. ### Função Nome da função: `IsTime` ### Parâmetros datetime | timeRef; | | // Horário de referência. int | hour | = -1; | // Hora (0 a 23) ou -1 para ignorar. int | minute | = -1; | // Minuto (0 a 59) ou -1 para ignorar. int | second | = -1; | // Segundo (0 a 59) ou -1 para ignorar. ### Exemplos ```java //Default example: IsTime[timeRef, hour = -1, minute = -1, second = -1] //Other examples IsTime[TIME_CURRENT, 10] // Returns true if the hour is 10 IsTime[TIME_CURRENT, -1, 30] // Returns true if the minute is 30 ``` ### Retornos Em caso de sucesso: Retorna true se o horário corresponder aos critérios. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se não corresponder ou houver erro nos parâmetros. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # DayOfYear Esta função retorna o número do dia no ano (1 a 366) com base no horário atual do símbolo. ### Função Nome da função: `DayOfYear` Aliases: `DayY` ### Parâmetros string | symbol | = SYMBOL; | // Símbolo do ativo. ### Exemplos ```java //Default example: DayOfYear[symbol = SYMBOL] //Using aliases: DayY[symbol = SYMBOL] //Other examples DayOfYear["VALE3"] ``` ### Retornos Em caso de sucesso: Retorna o dia do ano. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna -1 se o símbolo for inválido. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # DayOfWeek Esta função retorna o dia da semana (0 = domingo, 1 = segunda, ..., 6 = sábado) do símbolo informado. ### Função Nome da função: `DayOfWeek` Aliases: `DayW` ### Parâmetros string | symbol | = SYMBOL; | // Símbolo do ativo. ### Exemplos ```java //Default example: DayOfWeek[symbol = SYMBOL] //Using aliases: DayW[symbol = SYMBOL] //Other examples DayOfWeek["PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o número correspondente ao dia da semana. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna -1 se não for possível determinar o dia. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # SellVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as posições e ordens de venda abertas, considerando os filtros fornecidos. ### Função Nome da função: `SellVolumeOpen` Aliases: `SVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: SellVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: SVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples SellVolumeOpen["ITUB4", 123456, -1, W1] ``` ### Retornos Em caso de sucesso: Retorna o volume total das posições e ordens de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições e ordens de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # SellProfitOpen #### Disponível a partir da versão 2.05 Esta função retorna o lucro/prejuízo total combinado de todas as posições de venda abertas, considerando os filtros fornecidos. ### Função Nome da função: `SellProfitOpen` Aliases: `SProfitO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: SellProfitOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: SProfitO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples SellProfitOpen["PETR4", 123456, -1, H4] ``` ### Retornos Em caso de sucesso: Retorna o lucro/prejuízo total das posições de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # SellPosVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as posições de venda abertas. ### Função Nome da função: `SellPosVolumeOpen` Aliases: `SPVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: SellPosVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: SPVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples SellPosVolumeOpen["VALE3", 123456, -1, D1] ``` ### Retornos Em caso de sucesso: Retorna o volume total das posições de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # SellPosOpen #### Disponível a partir da versão 2.05 Esta função retorna o total de posições de venda abertas, considerando os filtros fornecidos. ### Função Nome da função: `SellPosOpen` Aliases: `SPosO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: SellPosOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: SPosO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples SellPosOpen["ITUB4", 123456, -1, W1] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de posições de venda abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver posições de venda abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # SellOrderVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as ordens de venda pendentes, considerando os filtros fornecidos. ### Função Nome da função: `SellOrderVolumeOpen` Aliases: `SOVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: SellOrderVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: SOVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples SellOrderVolumeOpen["PETR4", 123456, -1, H1] ``` ### Retornos Em caso de sucesso: Retorna o volume total das ordens de venda pendentes. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver ordens de venda pendentes. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # SellOrderOpen #### Disponível a partir da versão 2.05 Esta função retorna o total de ordens de venda pendentes, considerando os filtros fornecidos. ### Função Nome da função: `SellOrderOpen` Aliases: `SOrderO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: SellOrderOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: SOrderO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples SellOrderOpen["VALE3", 123456, -1, D1] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de ordens de venda pendentes. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver ordens de venda pendentes. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # SellOpen #### Disponível a partir da versão 2.05 Esta função retorna o total combinado de posições de venda abertas e ordens de venda pendentes, considerando os filtros fornecidos. ### Função Nome da função: `SellOpen` Aliases: `SOpen` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: SellOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: SOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples SellOpen["BBAS3", 123456, -1, MN1] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de posições e ordens de venda abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver posições ou ordens de venda abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # SellAvgPrice #### Disponível a partir da versão 2.05 Esta função retorna o preço médio ponderado pelo volume de todas as posições de venda abertas, considerando os filtros fornecidos. ### Função Nome da função: `SellAvgPrice` Aliases: `SAvgPrice` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: SellAvgPrice[symbol = REAL, magic = MAGIC] //Using aliases: SAvgPrice[symbol = REAL, magic = MAGIC] //Other examples SellAvgPrice("VALE3", 123456) ``` ### Retornos Em caso de sucesso: Retorna o preço médio das posições de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # SellAvgDir #### Disponível a partir da versão 2.05 Esta função retorna a direção média ponderada de todas as posições de venda abertas, considerando os filtros fornecidos. ### Função Nome da função: `SellAvgDir` Aliases: `SAvgDir` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: SellAvgDir[symbol = REAL, magic = MAGIC] //Using aliases: SAvgDir[symbol = REAL, magic = MAGIC] //Other examples SellAvgDir("PETR4", 123456) ``` ### Retornos Em caso de sucesso: Retorna a direção média das posições de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições de venda abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosVolume Esta função retorna o volume (tamanho) de uma posição identificada pelo ticket. ### Função Nome da função: `PosVolume` Aliases: `PVol` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosVolume[ticket] //Using aliases: PVol[ticket] //Other examples PosVolume[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o volume da posição. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosType Esta função retorna o tipo da posição (0 para compra, 1 para venda) identificada pelo ticket. ### Função Nome da função: `PosType` Aliases: `PType` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosType[ticket] //Using aliases: PType[ticket] //Other examples PosType[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna 0 (compra) ou 1 (venda). Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna -1 se a posição não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # PosTimeUpdateMsc Esta função retorna o horário da última atualização de uma posição no formato datetime em milissegundos desde 01/01/1970. ### Função Nome da função: `PosTimeUpdateMsc` Aliases: `PTUpdateMsc` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosTimeUpdateMsc[ticket] //Using aliases: PTUpdateMsc[ticket] //Other examples PosTimeUpdateMsc[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o timestamp em milissegundos. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # PosTimeUpdate Esta função retorna o horário da última atualização (modificação) de uma posição no formato datetime. ### Função Nome da função: `PosTimeUpdate` Aliases: `PTUpdate` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosTimeUpdate[ticket] //Using aliases: PTUpdate[ticket] //Other examples PosTimeUpdate[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o datetime da última atualização. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # PosTimeMsc Esta função retorna o horário de abertura de uma posição no formato datetime em milissegundos desde 01/01/1970. ### Função Nome da função: `PosTimeMsc` Aliases: `PTMsc` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosTimeMsc[ticket] //Using aliases: PTMsc[ticket] //Other examples PosTimeMsc[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o timestamp em milissegundos. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # PosTime Esta função retorna o horário de abertura de uma posição no formato datetime. ### Função Nome da função: `PosTime` Aliases: `PT` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosTime[ticket] //Using aliases: PT[ticket] //Other examples PosTime[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o datetime de abertura da posição. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # PosTicketExact #### Disponível a partir da versão 2.15 Esta função retorna o ticket de uma posição aberta no índice exato informado. Caso não exista uma posição nesse índice, a função retorna 0. ### Função Nome da função: `PosTicketExact` Aliases: `PTicketE` ### Parâmetros int | index; | | // Indice da posição. Começando com 0 para a mais atual. ENUM_TRADE | type | = TYPE_ALL; | // Tipo de trade: 'TYPE_BUY', 'TYPE_SELL', 'TYPE_ALL'. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. string | symbol | = REAL; | // Símbolo do ativo. ### Exemplos ```java //Default example: PosTicketExact[index, type = TYPE_ALL, magic = MAGIC, symbol = REAL] //Using aliases: PTicketE[index, type = TYPE_ALL, magic = MAGIC, symbol = REAL] //Other examples PosTicketExact[0, TYPE_BUY] // Retorna o ticket da compra mais recente ``` ### Retornos Em caso de sucesso: Retorna o ticket da posição. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma posição for encontrada com os parâmetros informados. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # PosTicket Esta função retorna o ticket da posição aberta mais próxima do índice informado. Caso o índice solicitado seja maior que a quantidade de posições abertas, será retornado o ticket da última posição disponível (a de maior índice). ### Função Nome da função: `PosTicket` Aliases: `PTicket` ### Parâmetros int | index; | | // Indice da posição. Começando com 0 para a mais atual. ENUM_TRADE | type | = TYPE_ALL; | // Tipo de trade: 'TYPE_BUY', 'TYPE_SELL', 'TYPE_ALL'. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. string | symbol | = REAL; | // Símbolo do ativo. ### Exemplos ```java //Default example: PosTicket[index, type = TYPE_ALL, magic = MAGIC, symbol = REAL] //Using aliases: PTicket[index, type = TYPE_ALL, magic = MAGIC, symbol = REAL] //Other examples PosTicket[0, TYPE_BUY] // Retorna o ticket da compra mais recente ``` ### Retornos Em caso de sucesso: Retorna o ticket da posição. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma posição for encontrada com os parâmetros informados. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # PosTake Esta função retorna o preço definido para o Take Profit de uma posição identificada pelo ticket. ### Função Nome da função: `PosTake` Aliases: `PTP` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosTake[ticket] //Using aliases: PTP[ticket] //Other examples PosTake[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço do Take Profit. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não tiver Take Profit definido ou não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosSymbol Esta função retorna o símbolo do ativo negociado em uma posição identificada pelo ticket. ### Função Nome da função: `PosSymbol` Aliases: `PSymbol` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosSymbol[ticket] //Using aliases: PSymbol[ticket] //Other examples PosSymbol[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o símbolo do ativo. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna string vazia se a posição não for encontrada. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # PosSwap Esta função retorna o valor total de swap acumulado para uma posição identificada pelo ticket. ### Função Nome da função: `PosSwap` Aliases: `PSWAP` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosSwap[ticket] //Using aliases: PSWAP[ticket] //Other examples PosSwap[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o valor acumulado de swap. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosString Esta função retorna o valor de uma propriedade específica do tipo string (texto) de uma posição aberta, identificada pelo seu ticket. ### Função Nome da função: `PosString` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ENUM_POS_STRING | property; | | // Propriedade da posição: 'TYPE_SYMBOL' (símbolo do ativo), 'TYPE_COMMENT' (comentário da operação). ### Exemplos ```java //Default example: PosString[ticket, property] //Other examples PosString[123456, TYPE_SYMBOL] // Retorna o símbolo do ativo da posição PosString[PosTicket[0], TYPE_COMMENT] // Retorna o comentário da posição ``` ### Retornos Em caso de sucesso: Retorna o valor da propriedade solicitada. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna uma string vazia se a posição não existir ou a propriedade for inválida. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # PosStop Esta função retorna o preço definido para o Stop Loss de uma posição identificada pelo ticket. ### Função Nome da função: `PosStop` Aliases: `PSL` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosStop[ticket] //Using aliases: PSL[ticket] //Other examples PosStop[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço do Stop Loss. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não tiver Stop Loss definido ou não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosReason Esta função retorna o código que indica o motivo pelo qual a posição foi aberta. ### Função Nome da função: `PosReason` Aliases: `PReason` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosReason[ticket] //Using aliases: PReason[ticket] //Other examples PosReason[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o código do motivo de abertura. 0: Terminal desktop. 1: Aplicativo móvel. 2: Plataforma web. 3: Expert Advisor, script ou outro código MQL5 Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # PosProfit Esta função retorna o lucro ou prejuízo atual (em moeda do ativo) de uma posição identificada pelo ticket. ### Função Nome da função: `PosProfit` Aliases: `PProfit` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosProfit[ticket] //Using aliases: PProfit[ticket] //Other examples PosProfit[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o lucro/prejuízo atual da posição. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosOpen Esta função retorna o preço de abertura de uma posição identificada pelo ticket. ### Função Nome da função: `PosOpen` Aliases: `PO` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosOpen[ticket] //Using aliases: PO[ticket] //Other examples PosOpen[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço de abertura da posição. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosMagic Esta função retorna o número mágico (identificador do robô) de uma posição identificada pelo ticket. ### Função Nome da função: `PosMagic` Aliases: `PMagic` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosMagic[ticket] //Using aliases: PMagic[ticket] //Other examples PosMagic[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o número mágico da posição. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # PosInt Esta função retorna o valor de uma propriedade específica do tipo inteiro de uma posição aberta, identificada pelo seu ticket. ### Função Nome da função: `PosInt` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ENUM_POS_INT | property; | | // Propriedade da posição: 'TYPE_TIME' (timestamp de abertura), 'TYPE_MAGIC' (número mágico). ### Exemplos ```java //Default example: PosInt[ticket, property] //Other examples PosInt[123456, TYPE_TIME] // Retorna o timestamp de abertura da posição PosInt[PosTicket[0], TYPE_MAGIC] // Retorna o número mágico da posição ``` ### Retornos Em caso de sucesso: Retorna o valor da propriedade solicitada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não existir ou a propriedade for inválida. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # PosIdentifier Esta função retorna o identificador da posição, um valor único atribuído a cada nova posição aberta, que permanece inalterado durante toda a sua existência. Alterações na posição não modificam esse identificador. ### Função Nome da função: `PosIdentifier` Aliases: `PIdent` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosIdentifier[ticket] //Using aliases: PIdent[ticket] //Other examples PosIdentifier[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o ticket da posição. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # PosExternal Esta função retorna o identificador externo (gerado pelo servidor) de uma posição identificada pelo ticket. ### Função Nome da função: `PosExternal` Aliases: `PExternal` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosExternal[ticket] //Using aliases: PExternal[ticket] //Other examples PosExternal[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o ID externo da posição. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna string vazia se a posição não for encontrada. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # PosDouble Esta função retorna o valor de uma propriedade específica do tipo double (número com casas decimais) de uma posição aberta, identificada pelo seu ticket. ### Função Nome da função: `PosDouble` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ENUM_POS_DOUBLE | property; | | // Propriedade da posição: 'TYPE_VOLUME' (volume/lotes), 'TYPE_OPEN' (preço de abertura). ### Exemplos ```java //Default example: PosDouble[ticket, property] //Other examples PosDouble[123456, TYPE_VOLUME] // Retorna o volume/lotes da posição PosDouble[PosTicket[0], TYPE_OPEN] // Retorna o preço de abertura da posição ``` ### Retornos Em caso de sucesso: Retorna o valor da propriedade solicitada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se a posição não existir ou a propriedade for inválida. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosCurrent Esta função retorna o preço atual de uma posição aberta identificada pelo ticket. ### Função Nome da função: `PosCurrent` Aliases: `PCurrent` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosCurrent[ticket] //Using aliases: PCurrent[ticket] //Other examples PosCurrent[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço atual da posição. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a posição não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PosComment Esta função retorna o comentário/texto descritivo associado a uma posição identificada pelo ticket. ### Função Nome da função: `PosComment` Aliases: `PComment` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a posição. ### Exemplos ```java //Default example: PosComment[ticket] //Using aliases: PComment[ticket] //Other examples PosComment[PosTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o comentário da posição. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna string vazia se a posição não for encontrada. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # OrderVolumeInit Esta função retorna o volume inicial especificado quando a ordem pendente foi criada. ### Função Nome da função: `OrderVolumeInit` Aliases: `OVolInit` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderVolumeInit[ticket] //Using aliases: OVolInit[ticket] //Other examples OrderVolumeInit[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o volume inicial da ordem. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # OrderVolume Esta função retorna o volume atual (tamanho) de uma ordem, que pode ter sido modificado após a criação. ### Função Nome da função: `OrderVolume` Aliases: `OVol` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderVolume[ticket] //Using aliases: OVol[ticket] //Other examples OrderVolume[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o volume atual da ordem. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # OrderType Esta função retorna o tipo da ordem (compra/venda, stop/limit, etc) conforme enumerador de tipos de ordem. ### Função Nome da função: `OrderType` Aliases: `OType` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderType[ticket] //Using aliases: OType[ticket] //Other examples OrderType[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o código do tipo de ordem. (0: Compra mercado, 1: Venda mercado, 2: Buy Limit, 3: Sell Limit, 4: Buy Stop, 5: Sell Stop, 6: Buy Stop Limit, 7: Sell Stop Limit, 8: Fechar por oposta) Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderTimeExpiration Esta função retorna o momento em que a ordem pendente irá expirar (se aplicável) no formato datetime. ### Função Nome da função: `OrderTimeExpiration` Aliases: `OTExpira` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderTimeExpiration[ticket] //Using aliases: OTExpira[ticket] //Other examples OrderTimeExpiration[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o datetime de expiração da ordem. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não tiver expiração ou não for encontrada. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # OrderTime Esta função retorna o momento da última modificação da ordem no formato datetime. ### Função Nome da função: `OrderTime` Aliases: `OT` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderTime[ticket] //Using aliases: OT[ticket] //Other examples OrderTime[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o datetime da última modificação. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # OrderTicketExact #### Disponível a partir da versão 2.15 Esta função retorna o ticket de uma ordem aberta no índice exato informado. Caso não exista uma ordem nesse índice, a função retorna 0. ### Função Nome da função: `OrderTicketExact` Aliases: `OTicketE` ### Parâmetros int | index; | | // Indice da ordem. Começando com 0 para a mais atual. ENUM_TRADE | type | = TYPE_ALL; | // Tipo de trade: 'TYPE_BUY', 'TYPE_SELL', 'TYPE_ALL'. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. string | symbol | = REAL; | // Símbolo do ativo. ### Exemplos ```java //Default example: OrderTicketExact[index, type = TYPE_ALL, magic = MAGIC, symbol = REAL] //Using aliases: OTicketE[index, type = TYPE_ALL, magic = MAGIC, symbol = REAL] //Other examples OrderTicketExact[0, TYPE_BUY] // Retorna o ticket da compra mais recente ``` ### Retornos Em caso de sucesso: Retorna o ticket da ordem. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma ordem for encontrada com os parâmetros informados. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # OrderTicket Esta função retorna o ticket da ordem aberta mais próxima do índice informado. Caso o índice solicitado seja maior que a quantidade de ordens abertas, será retornado o ticket da última ordem disponível (a de maior índice). ### Função Nome da função: `OrderTicket` Aliases: `OTicket` ### Parâmetros int | index; | | // Indice da ordem. Começando com 0 para a mais atual. ENUM_TRADE | type | = TYPE_ALL; | // Tipo de trade: 'TYPE_BUY', 'TYPE_SELL', 'TYPE_ALL'. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. string | symbol | = REAL; | // Símbolo do ativo. ### Exemplos ```java //Default example: OrderTicket[index, type = TYPE_ALL, magic = MAGIC, symbol = REAL] //Using aliases: OTicket[index, type = TYPE_ALL, magic = MAGIC, symbol = REAL] //Other examples OrderTicket[0, TYPE_BUY] // Retorna o ticket da compra mais recente ``` ### Retornos Em caso de sucesso: Retorna o ticket da ordem. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma ordem for encontrada com os parâmetros informados. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # OrderTake Esta função retorna o preço definido para o Take Profit de uma ordem pendente. ### Função Nome da função: `OrderTake` Aliases: `OTP` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderTake[ticket] //Using aliases: OTP[ticket] //Other examples OrderTake[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço do Take Profit. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não tiver Take Profit definido ou não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # OrderSymbol Esta função retorna o símbolo do ativo negociado em uma ordem. ### Função Nome da função: `OrderSymbol` Aliases: `OSymbol` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderSymbol[ticket] //Using aliases: OSymbol[ticket] //Other examples OrderSymbol[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o símbolo do ativo. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna string vazia se a ordem não for encontrada. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # OrderString Esta função retorna o valor de uma propriedade específica do tipo string (texto) de uma ordem aberta, identificada pelo seu ticket. ### Função Nome da função: `OrderString` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ENUM_ORDER_STRING | property; | | // Propriedade da ordem: 'TYPE_SYMBOL' (símbolo do ativo), 'TYPE_COMMENT' (comentário da operação). ### Exemplos ```java //Default example: OrderString[ticket, property] //Other examples OrderString[123456, TYPE_SYMBOL] // Retorna o símbolo do ativo da ordem OrderString[OrderTicket[0], TYPE_COMMENT] // Retorna o comentário da ordem ``` ### Retornos Em caso de sucesso: Retorna o valor da propriedade solicitada. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna uma string vazia se a ordem não existir ou a propriedade for inválida. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # OrderStopLimit Esta função retorna o preço de ativação especificado para ordens do tipo Stop Limit. ### Função Nome da função: `OrderStopLimit` Aliases: `OSLLimit` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderStopLimit[ticket] //Using aliases: OSLLimit[ticket] //Other examples OrderStopLimit[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço de ativação da Stop Limit. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for do tipo Stop Limit ou não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # OrderStop Esta função retorna o preço definido para o Stop Loss de uma ordem pendente. ### Função Nome da função: `OrderStop` Aliases: `OSL` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderStop[ticket] //Using aliases: OSL[ticket] //Other examples OrderStop[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço do Stop Loss. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não tiver Stop Loss definido ou não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # OrderState Esta função retorna o estado atual da ordem conforme enumerador de estados. ### Função Nome da função: `OrderState` Aliases: `OState` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderState[ticket] //Using aliases: OState[ticket] //Other examples OrderState[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o código do estado da ordem. (0: Verificando, 1: Aceita, 2: Cancelada, 3: Parcial, 4: Executada, 5: Rejeitada, 6: Expirada, 7: Registrando, 8: Modificando, 9: Cancelando) Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderSetupMsc Esta função retorna o momento em que a ordem foi criada no formato timestamp em milissegundos desde 01/01/1970. ### Função Nome da função: `OrderSetupMsc` Aliases: `OSetupMsc` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderSetupMsc[ticket] //Using aliases: OSetupMsc[ticket] //Other examples OrderSetupMsc[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o timestamp em milissegundos. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # OrderSetup Esta função retorna o momento em que a ordem foi criada no formato datetime. ### Função Nome da função: `OrderSetup` Aliases: `OSetup` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderSetup[ticket] //Using aliases: OSetup[ticket] //Other examples OrderSetup[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o datetime de criação da ordem. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # OrderReason Esta função retorna o código que indica o motivo pelo qual a ordem foi criada (manual, EA, etc). ### Função Nome da função: `OrderReason` Aliases: `OReason` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderReason[ticket] //Using aliases: OReason[ticket] //Other examples OrderReason[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o código do motivo de criação. (0: Desktop, 1: Mobile, 2: Web, 3: Expert, 4: Stop Loss, 5: Take Profit, 6: Stop Out) Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderOpen Esta função retorna o preço de abertura especificado para uma ordem pendente. ### Função Nome da função: `OrderOpen` Aliases: `OO` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderOpen[ticket] //Using aliases: OO[ticket] //Other examples OrderOpen[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço de abertura da ordem. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # OrderMagic Esta função retorna o número mágico (identificador personalizado do robô) associado a uma ordem. ### Função Nome da função: `OrderMagic` Aliases: `OMagic` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderMagic[ticket] //Using aliases: OMagic[ticket] //Other examples OrderMagic[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o número mágico da ordem. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # OrderInt Esta função retorna o valor de uma propriedade específica do tipo inteiro de uma ordem aberta, identificada pelo seu ticket. ### Função Nome da função: `OrderInt` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ENUM_ORDER_INT | property; | | // Propriedade da ordem: 'TYPE_TIME_SETUP' (timestamp de abertura), 'TYPE_MAGIC' (número mágico). ### Exemplos ```java //Default example: OrderInt[ticket, property] //Other examples OrderInt[123456, TYPE_TIME_SETUP] // Retorna o timestamp de abertura da ordem OrderInt[OrderTicket[0], TYPE_MAGIC] // Retorna o número mágico da ordem ``` ### Retornos Em caso de sucesso: Retorna o valor da propriedade solicitada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não existir ou a propriedade for inválida. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderId Esta função retorna o identificador único da ordem no sistema de negociação. ### Função Nome da função: `OrderId` Aliases: `OId` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderId[ticket] //Using aliases: OId[ticket] //Other examples OrderId[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o ID da ordem. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderFilling Esta função retorna o tipo de política de preenchimento (FOK, IOC, etc) conforme enumerador de tipos de preenchimento. ### Função Nome da função: `OrderFilling` Aliases: `OFilling` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderFilling[ticket] //Using aliases: OFilling[ticket] //Other examples OrderFilling[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o código da política de preenchimento. (0: FOK (tudo ou nada), 1: IOC (tudo/parcial), 2: BOC (só livro), 3: Return (parcial continua)) Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # OrderDouble Esta função retorna o valor de uma propriedade específica do tipo double (número com casas decimais) de uma ordem aberta, identificada pelo seu ticket. ### Função Nome da função: `OrderDouble` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ENUM_ORDER_DOUBLE | property; | | // Propriedade da ordem: 'TYPE_VOLUME' (volume/lotes), 'TYPE_OPEN' (preço de abertura). ### Exemplos ```java //Default example: OrderDouble[ticket, property] //Other examples OrderDouble[123456, TYPE_VOLUME] // Retorna o volume/lotes da ordem OrderDouble[OrderTicket[0], TYPE_OPEN] // Retorna o preço de abertura da ordem ``` ### Retornos Em caso de sucesso: Retorna o valor da propriedade solicitada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se a ordem não existir ou a propriedade for inválida. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # OrderDoneMsc Esta função retorna o momento em que a ordem foi executada ou cancelada no formato timestamp em milissegundos desde 01/01/1970. ### Função Nome da função: `OrderDoneMsc` Aliases: `ODoneMsc` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderDoneMsc[ticket] //Using aliases: ODoneMsc[ticket] //Other examples OrderDoneMsc[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o timestamp em milissegundos. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem ainda estiver pendente ou não for encontrada. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # OrderDone Esta função retorna o momento em que a ordem foi executada ou cancelada no formato datetime. ### Função Nome da função: `OrderDone` Aliases: `ODone` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderDone[ticket] //Using aliases: ODone[ticket] //Other examples OrderDone[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o datetime de execução/cancelamento. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem ainda estiver pendente ou não for encontrada. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # OrderCurrent Esta função retorna o preço atual (de mercado) para o ativo da ordem pendente. ### Função Nome da função: `OrderCurrent` Aliases: `OCurrent` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderCurrent[ticket] //Using aliases: OCurrent[ticket] //Other examples OrderCurrent[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço atual do ativo da ordem. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # OrderComment Esta função retorna o comentário/texto descritivo associado a uma ordem. ### Função Nome da função: `OrderComment` Aliases: `OComment` ### Parâmetros ulong | ticket; | | // Número do ticket que identifica a ordem. ### Exemplos ```java //Default example: OrderComment[ticket] //Using aliases: OComment[ticket] //Other examples OrderComment[OrderTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o comentário da ordem. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna string vazia se a ordem não for encontrada. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # OrderById Esta função retorna o número do ticket correspondente a um ID de ordem no sistema. ### Função Nome da função: `OrderById` Aliases: `OById` ### Parâmetros ulong | ticket; | | // ID da ordem no sistema. ### Exemplos ```java //Default example: OrderById[ticket] //Using aliases: OById[ticket] //Other examples OrderById[987654] ``` ### Retornos Em caso de sucesso: Retorna o número do ticket da ordem. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a ordem não for encontrada. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # BuyVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as posições e ordens de compra abertas, considerando os filtros fornecidos. ### Função Nome da função: `BuyVolumeOpen` Aliases: `BVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: BuyVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: BVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples BuyVolumeOpen["VALE3", 123456, -1, D1] ``` ### Retornos Em caso de sucesso: Retorna o volume total das posições e ordens de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições e ordens de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # BuyProfitOpen #### Disponível a partir da versão 2.05 Esta função retorna o lucro/prejuízo total combinado de todas as posições de compra abertas, considerando os filtros fornecidos. ### Função Nome da função: `BuyProfitOpen` Aliases: `BProfitO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: BuyProfitOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: BProfitO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples BuyProfitOpen["BBAS3", 123456, -1, MN1] ``` ### Retornos Em caso de sucesso: Retorna o lucro/prejuízo total das posições de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # BuyPosVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as posições de compra abertas. ### Função Nome da função: `BuyPosVolumeOpen` Aliases: `BPVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: BuyPosVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: BPVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples BuyPosVolumeOpen["PETR4", 123456, -1, H4] ``` ### Retornos Em caso de sucesso: Retorna o volume total das posições de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # BuyPosOpen #### Disponível a partir da versão 2.05 Esta função retorna o total de posições de compra abertas, considerando os filtros fornecidos. ### Função Nome da função: `BuyPosOpen` Aliases: `BPosO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: BuyPosOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: BPosO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples BuyPosOpen["VALE3", 123456, -1, D1] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de posições de compra abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver posições de compra abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # BuyOrderVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as ordens de compra pendentes, considerando os filtros fornecidos. ### Função Nome da função: `BuyOrderVolumeOpen` Aliases: `BOVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: BuyOrderVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: BOVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples BuyOrderVolumeOpen["BBAS3", 123456, -1, MN1] ``` ### Retornos Em caso de sucesso: Retorna o volume total das ordens de compra pendentes. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver ordens de compra pendentes. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # BuyOrderOpen #### Disponível a partir da versão 2.05 Esta função retorna o total de ordens de compra pendentes, considerando os filtros fornecidos. ### Função Nome da função: `BuyOrderOpen` Aliases: `BOrderO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: BuyOrderOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: BOrderO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples BuyOrderOpen["PETR4", 123456, -1, H1] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de ordens de compra pendentes. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver ordens de compra pendentes. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # BuyOpen #### Disponível a partir da versão 2.05 Esta função retorna o total combinado de posições de compra abertas e ordens de compra pendentes, considerando os filtros fornecidos. ### Função Nome da função: `BuyOpen` Aliases: `BOpen` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: BuyOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: BOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples BuyOpen["ITUB4", 123456, -1, W1] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de posições e ordens de compra abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver posições ou ordens de compra abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # BuyAvgPrice #### Disponível a partir da versão 2.05 Esta função retorna o preço médio ponderado pelo volume de todas as posições de compra abertas, considerando os filtros fornecidos. ### Função Nome da função: `BuyAvgPrice` Aliases: `BAvgPrice` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: BuyAvgPrice[symbol = REAL, magic = MAGIC] //Using aliases: BAvgPrice[symbol = REAL, magic = MAGIC] //Other examples BuyAvgPrice("PETR4", 123456) ``` ### Retornos Em caso de sucesso: Retorna o preço médio das posições de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # BuyAvgDir #### Disponível a partir da versão 2.05 Esta função retorna a direção média ponderada de todas as posições de compra abertas, considerando os filtros fornecidos. ### Função Nome da função: `BuyAvgDir` Aliases: `BAvgDir` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: BuyAvgDir[symbol = REAL, magic = MAGIC] //Using aliases: BAvgDir[symbol = REAL, magic = MAGIC] //Other examples BuyAvgDir("BBAS3", 123456) ``` ### Retornos Em caso de sucesso: Retorna a direção média das posições de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições de compra abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AvgPrice #### Disponível a partir da versão 2.05 Esta função retorna o preço médio ponderado pelo volume de todas as posições abertas, considerando o tipo de operação e os filtros fornecidos. ### Função Nome da função: `AvgPrice` Aliases: `PAvgP` ### Parâmetros ENUM_POSITION_TYPE | type | = TYPE_ALL; | // Tipo de posição (COMPRA/VENDA/TODAS). string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: AvgPrice[type = TYPE_ALL, symbol = REAL, magic = MAGIC] //Using aliases: PAvgP[type = TYPE_ALL, symbol = REAL, magic = MAGIC] //Other examples AvgPrice(POSITION_TYPE_BUY, "VALE3", 123456) ``` ### Retornos Em caso de sucesso: Retorna o preço médio das posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AvgDir #### Disponível a partir da versão 2.05 Esta função retorna a direção média ponderada das posições abertas, considerando o tipo de operação e os filtros fornecidos. ### Função Nome da função: `AvgDir` Aliases: `PAvgDir` ### Parâmetros ENUM_POSITION_TYPE | type | = TYPE_ALL; | // Tipo de posição (COMPRA/VENDA/TODAS). string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: AvgDir[type = TYPE_ALL, symbol = REAL, magic = MAGIC] //Using aliases: PAvgDir[type = TYPE_ALL, symbol = REAL, magic = MAGIC] //Other examples AvgDir(POSITION_TYPE_SELL, "ITUB4", 123456) ``` ### Retornos Em caso de sucesso: Retorna a direção média das posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AllVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as posições e ordens abertas, considerando os filtros fornecidos. ### Função Nome da função: `AllVolumeOpen` Aliases: `AVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: AllVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: AVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples AllVolumeOpen["PETR4", 123456, -1, H1] ``` ### Retornos Em caso de sucesso: Retorna o volume total de todas as posições e ordens abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições e ordens abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AllProfitOpen #### Disponível a partir da versão 2.05 Esta função retorna o lucro/prejuízo total combinado de todas as posições abertas, considerando os filtros fornecidos. ### Função Nome da função: `AllProfitOpen` Aliases: `AProfitO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: AllProfitOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: AProfitO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples AllProfitOpen["ITUB4", 123456, -1, W1] ``` ### Retornos Em caso de sucesso: Retorna o lucro/prejuízo total de todas as posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AllPosVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as posições abertas. ### Função Nome da função: `AllPosVolumeOpen` Aliases: `APVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: AllPosVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: APVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples AllPosVolumeOpen["BBAS3", 123456, -1, MN1] ``` ### Retornos Em caso de sucesso: Retorna o volume total de todas as posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AllPosOpen #### Disponível a partir da versão 2.05 Esta função retorna o total de posições abertas, considerando os filtros fornecidos. ### Função Nome da função: `AllPosOpen` Aliases: `APosO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: AllPosOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: APosO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples AllPosOpen["PETR4", 123456, -1, H4] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de posições abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver posições abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # AllOrderVolumeOpen #### Disponível a partir da versão 2.05 Esta função retorna o volume total combinado de todas as ordens pendentes, considerando os filtros fornecidos. ### Função Nome da função: `AllOrderVolumeOpen` Aliases: `AOVolO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: AllOrderVolumeOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: AOVolO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples AllOrderVolumeOpen["ITUB4", 123456, -1, W1] ``` ### Retornos Em caso de sucesso: Retorna o volume total de todas as ordens pendentes. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver ordens pendentes. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AllOrderOpen #### Disponível a partir da versão 2.05 Esta função retorna o total de ordens pendentes, considerando os filtros fornecidos. ### Função Nome da função: `AllOrderOpen` Aliases: `AOrderO` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: AllOrderOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: AOrderO[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples AllOrderOpen["BBAS3", 123456, -1, MN1] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de ordens pendentes. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver ordens pendentes. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # AllOpen #### Disponível a partir da versão 2.05 Esta função retorna o total combinado de posições abertas e ordens pendentes, considerando os filtros fornecidos. ### Função Nome da função: `AllOpen` Aliases: `AOpen` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. int | candle | = -1; | // Índice da vela de inicio (-1 para todas). ENUM_TIMEFRAME | timeframe | = CURRENT; | // Tempo gráfico. ### Exemplos ```java //Default example: AllOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Using aliases: AOpen[symbol = REAL, magic = MAGIC, candle = -1, timeframe = CURRENT] //Other examples AllOpen["VALE3", 123456, -1, D1] ``` ### Retornos Em caso de sucesso: Retorna a quantidade total de posições e ordens abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver posições ou ordens abertas. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # AllAvgPrice #### Disponível a partir da versão 2.05 Esta função retorna o preço médio ponderado pelo volume de todas as posições abertas, considerando os filtros fornecidos. ### Função Nome da função: `AllAvgPrice` Aliases: `AAvgPrice` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: AllAvgPrice[symbol = REAL, magic = MAGIC] //Using aliases: AAvgPrice[symbol = REAL, magic = MAGIC] //Other examples AllAvgPrice("BBAS3", 123456) ``` ### Retornos Em caso de sucesso: Retorna o preço médio de todas as posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AllAvgDir #### Disponível a partir da versão 2.05 Esta função retorna a direção média ponderada de todas as posições abertas, considerando os filtros fornecidos. ### Função Nome da função: `AllAvgDir` Aliases: `AAvgDir` ### Parâmetros string | symbol | = REAL; | // Símbolo do ativo. ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. ### Exemplos ```java //Default example: AllAvgDir[symbol = REAL, magic = MAGIC] //Using aliases: AAvgDir[symbol = REAL, magic = MAGIC] //Other examples AllAvgDir("ITUB4", 123456) ``` ### Retornos Em caso de sucesso: Retorna a direção média de todas as posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se não houver posições abertas. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # TickToPoint Esta função retorna o valor de tick convertido em pontos. ### Função Nome da função: `TickToPoint` Aliases: `TickTP` ### Parâmetros double | value; | | // O valor que será calculado. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: TickToPoint[value, symbol = SYMBOL] //Using aliases: TickTP[value, symbol = SYMBOL] //Other examples TickToPoint[50] TickToPoint[50, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o valor de tick convertido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # RoundUp Esta função retorna o valor arredondado para cima, garantindo que o resultado seja sempre o próximo inteiro maior ou igual. ### Função Nome da função: `RoundUp` ### Parâmetros double | value; | | // O valor para ser arredondado. ### Exemplos ```java //Default example: RoundUp[value] //Other examples RoundUp[10.7] // 11 RoundUp[10.3] // 11 RoundUp[Close[0]/2] ``` ### Retornos Em caso de sucesso: Retorna o valor arredondado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # RoundDown Esta função retorna o valor arredondado para baixo, garantindo que o resultado seja sempre o próximo inteiro menor ou igual. ### Função Nome da função: `RoundDown` ### Parâmetros double | value; | | // O valor para ser arredondado. ### Exemplos ```java //Default example: RoundDown[value] //Other examples RoundDown[10.7] // 10 RoundDown[10.3] // 10 RoundDown[Close[0]/2] ``` ### Retornos Em caso de sucesso: Retorna o valor arredondado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Round Esta função retorna o valor arredondado. ### Função Nome da função: `Round` ### Parâmetros double | value; | | // O valor para ser arredondado. ### Exemplos ```java //Default example: Round[value] //Other examples Round[10.7] // 11 Round[10.3] // 10 Round[Close[0]/2] ``` ### Retornos Em caso de sucesso: Retorna o valor arredondado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # RestDivision Esta função retorna o resto da divisão entre dois valores, permitindo que o denominador seja zero e evitando divisões por zero. ### Função Nome da função: `RestDivision` Aliases: `RDivi` ### Parâmetros double | value; | | // O valor base. double | divisor; | | // O valor do denominador. ### Exemplos ```java //Default example: RestDivision[value, divisor] //Using aliases: RDivi[value, divisor] //Other examples RestDivision[50, 2] ``` ### Retornos Em caso de sucesso: Retorna o resto da divisão. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Random Esta função retorna um valor inteiro aleatório entre dois valores. ### Função Nome da função: `Random` ### Parâmetros int | min; | | // O valor minimo. int | max; | | // O valor maximo. ### Exemplos ```java //Default example: Random[min, max] //Other examples Random[0, 1000] ``` ### Retornos Em caso de sucesso: Retorna um valor inteiro aleatório entre dois valores. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo int (0). Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # PipToPoint Esta função retorna o valor do pip convertido em pontos. ### Função Nome da função: `PipToPoint` Aliases: `PipTP` ### Parâmetros double | value; | | // O valor que será calculado. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: PipToPoint[value, symbol = SYMBOL] //Using aliases: PipTP[value, symbol = SYMBOL] //Other examples PipToPoint[50] PipToPoint[50, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o valor de tick convertido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # PercentOfValue Esta função retorna a quantidade percentual de um valor. ### Função Nome da função: `PercentOfValue` Aliases: `PercentValue` ### Parâmetros double | value; | | // O valor base. double | percent; | | // O valor percentual que será retornado. ### Exemplos ```java //Default example: PercentOfValue[value, percent] //Using aliases: PercentValue[value, percent] //Other examples PercentOfValue[100, 20] // Return 20.0 PercentOfValue[200, 50] // Return 100.0 ``` ### Retornos Em caso de sucesso: Retorna a quantidade percentual. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Percent Esta função retorna a variação percentual de value até target, com value sendo o valor base. ### Função Nome da função: `Percent` ### Parâmetros double | value; | | // O valor base. double | target; | | // O valor do alvo. ### Exemplos ```java //Default example: Percent[value, target] //Other examples Percent[100, 120] // 20% Percent[100, 50] // -50% ``` ### Retornos Em caso de sucesso: Retorna a variação percentual. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # MoneyToPoint Esta função retorna o valor na moeda convertida em pontos. ### Função Nome da função: `MoneyToPoint` Aliases: `MoneyTP` ### Parâmetros double | value; | | // O valor que será calculado. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: MoneyToPoint[value, symbol = SYMBOL] //Using aliases: MoneyTP[value, symbol = SYMBOL] //Other examples MoneyToPoint[50] MoneyToPoint[50, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o valor de tick convertido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Min Esta função retorna o menor valor entre dois números fornecidos. ### Função Nome da função: `Min` ### Parâmetros double | first; | | // o primeiro valor. double | second; | | // O segundo valor. ### Exemplos ```java //Default example: Min[first, second] //Other examples Min[10, 20] // 10 Min[60, 40] // 40 ``` ### Retornos Em caso de sucesso: Retorna o menor valor. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Median Esta função retorna a media entre dois valores. ### Função Nome da função: `Median` Aliases: `Med` ### Parâmetros double | first; | | // O primeiro valor. double | second; | | // O segundo valor. ### Exemplos ```java //Default example: Median[first, second] //Using aliases: Med[first, second] //Other examples Median[749, 750] ``` ### Retornos Em caso de sucesso: Retorna o preço médio entre os dois valores. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Max Esta função retorna o maior valor entre dois números fornecidos. ### Função Nome da função: `Max` ### Parâmetros double | first; | | // o primeiro valor. double | second; | | // O segundo valor. ### Exemplos ```java //Default example: Max[first, second] //Other examples Max[10, 20] // 20 Max[60, 40] // 60 ``` ### Retornos Em caso de sucesso: Retorna o maior valor. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # IsChance Esta função retorna verdadeiro com base em uma chance percentual entre 0 e 100. Por exemplo, ao passar 30, há aproximadamente 30% de chance de retornar verdadeiro. ### Função Nome da função: `IsChance` Aliases: `Chance` ### Parâmetros double | chance; | | // o valor da chance. ### Exemplos ```java //Default example: IsChance[chance] //Using aliases: Chance[chance] //Other examples IsChance[10] // It contains 10% chance of returning true. IsChance[60] ``` ### Retornos Em caso de sucesso: Retorna verdadeiro caso a chance seja atingida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso caso a chance não seja atingida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # HitPercent Esta função retorna a quantidade percentual de acerto entre gain e loss. A variação sempre será de 0% a 100%. ### Função Nome da função: `HitPercent` ### Parâmetros double | gain; | | // O valor de quantidade de ganho. double | loss; | | // O valor de quantidade de perda. ### Exemplos ```java //Default example: HitPercent[gain, loss] //Other examples HitPercent[30, 70] // Is 30% of hit percent HitPercent[30, 100] // Is 23,07% of hit percent ``` ### Retornos Em caso de sucesso: Retorna a quantidade percentual de acerto. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Division Esta função retorna a divisão entre dois valores, permitindo que o denominador seja zero e evitando divisões por zero. ### Função Nome da função: `Division` Aliases: `Divi` ### Parâmetros double | value; | | // O valor base. double | divisor; | | // O valor do denominador. ### Exemplos ```java //Default example: Division[value, divisor] //Using aliases: Divi[value, divisor] //Other examples Division[50, 2] ``` ### Retornos Em caso de sucesso: Retorna o resultado da divisão. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Decimals Esta função retorna a quantidade de casas decimais presentes em um número, indicando seu nível de precisão. ### Função Nome da função: `Decimals` Aliases: `Decimal` ### Parâmetros double | value; | | // o valor a ser verificado. ### Exemplos ```java //Default example: Decimals[value] //Using aliases: Decimal[value] //Other examples Decimals[10.00002] // Is 5 ``` ### Retornos Em caso de sucesso: Retorna a quantidade de casas decimais. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo int (0). Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # CountStepGradual Esta função calcula a quantidade de passos realizados de forma gradual e arredonda o resultado para o inteiro mais próximo de zero. ### Função Nome da função: `CountStepGradual` Aliases: `CountGrad` ### Parâmetros double | value; | | // O valor base. double | step; | | // O valor do passo. double | multiplier | = 1.0; | // O valor do multiplicador. ### Exemplos ```java //Default example: CountStepGradual[value, step, multiplier = 1.0] //Using aliases: CountGrad[value, step, multiplier = 1.0] //Other examples CountStepGradual[50, 2] ``` ### Retornos Em caso de sucesso: Retorna a quantidade de passos. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo uint (0). Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) --- # CountStep Esta função calcula a quantidade de passos realizados e arredonda o resultado para o inteiro mais próximo de zero. ### Função Nome da função: `CountStep` Aliases: `Count` ### Parâmetros double | value; | | // O valor base. double | step; | | // O valor do passo. ### Exemplos ```java //Default example: CountStep[value, step] //Using aliases: Count[value, step] //Other examples CountStep[50, 2] ``` ### Retornos Em caso de sucesso: Retorna a quantidade de passos. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo uint (0). Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) --- # CorrectPrice Esta função corrige preços inválidos, convertendo-os para valores válidos conforme o passo do mercado. ### Função Nome da função: `CorrectPrice` Aliases: `FixPrice` ### Parâmetros double | price; | | // O valor do preço. string | symbol | = SYMBOL; | // O simbolo de referência. ### Exemplos ```java //Default example: CorrectPrice[price, symbol = SYMBOL] //Using aliases: FixPrice[price, symbol = SYMBOL] ``` ### Retornos Em caso de sucesso: Retorna o preço correto do ativo alvo. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # LastTime Esta função retorna o horário da última negociação para o símbolo especificado. ### Função Nome da função: `LastTime` Aliases: `LastT` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: LastTime[symbol = SYMBOL] //Using aliases: LastT[symbol = SYMBOL] //Other examples LastTime["PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o horário da última negociação. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # LastLow Esta função retorna o menor preço registrado no último negócio do símbolo informado. ### Função Nome da função: `LastLow` Aliases: `LastL` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: LastLow[symbol = SYMBOL] //Using aliases: LastL[symbol = SYMBOL] //Other examples LastLow["VALE3"] ``` ### Retornos Em caso de sucesso: Retorna o menor preço do último negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # LastHigh Esta função retorna o maior preço registrado no último negócio do símbolo informado. ### Função Nome da função: `LastHigh` Aliases: `LastH` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: LastHigh[symbol = SYMBOL] //Using aliases: LastH[symbol = SYMBOL] //Other examples LastHigh["VALE3"] ``` ### Retornos Em caso de sucesso: Retorna o maior preço do último negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Last Esta função retorna o valor do último preço de negociação para o símbolo especificado. ### Função Nome da função: `Last` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: Last[symbol = SYMBOL] //Other examples Last["PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o último preço. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DayStartTime Esta função retorna o horário de abertura do pregão para o ativo no dia informado. Pode variar conforme o ativo e o mercado. ### Função Nome da função: `DayStartTime` Aliases: `DayST` ### Parâmetros int | day; | | // O valor do dia, sendo 0 o dia atual, 1 o dia anterior, etc. string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: DayStartTime[day, symbol = SYMBOL] //Using aliases: DayST[day, symbol = SYMBOL] //Other examples DayStartTime[0, "PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o horário de abertura do pregão. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna null se os dados estiverem indisponíveis. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # DayStartCandle Esta função retorna o identificador da primeira vela (candle) do dia para o ativo especificado. ### Função Nome da função: `DayStartCandle` Aliases: `DaySC` ### Parâmetros int | day; | | // O valor do dia, sendo 0 o dia atual, 1 o dia anterior, etc. string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: DayStartCandle[day, symbol = SYMBOL] //Using aliases: DaySC[day, symbol = SYMBOL] //Other examples DayStartCandle[20250719, "PETR4"] ``` ### Retornos Em caso de sucesso: Retorna a vela inicial do dia. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver vela no dia. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) --- # DayLow Esta função retorna o menor valor de preço negociado no dia, para o timeframe e símbolo informados. ### Função Nome da função: `DayLow` Aliases: `DayL` ### Parâmetros int | day; | | // O valor do dia, sendo 0 o dia atual, 1 o dia anterior, etc. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico. string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: DayLow[day, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: DayL[day, timeframe = CURRENT, symbol = SYMBOL] //Other examples DayLow[0, M5, "PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o menor preço do dia. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se não houver dados. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DayHigh Esta função retorna o maior valor de preço negociado no dia, para o timeframe e símbolo informados. ### Função Nome da função: `DayHigh` Aliases: `DayH` ### Parâmetros int | day; | | // O valor do dia, sendo 0 o dia atual, 1 o dia anterior, etc. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico. string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: DayHigh[day, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: DayH[day, timeframe = CURRENT, symbol = SYMBOL] //Other examples DayHigh[0, M5, "PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o maior preço do dia. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se não houver dados. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DayEndTime Esta função retorna o horário de fechamento do pregão para o ativo no dia informado. ### Função Nome da função: `DayEndTime` Aliases: `DayET` ### Parâmetros int | day; | | // O valor do dia, sendo 0 o dia atual, 1 o dia anterior, etc. string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: DayEndTime[day, symbol = SYMBOL] //Using aliases: DayET[day, symbol = SYMBOL] //Other examples DayEndTime[0, "PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o horário de fechamento do pregão. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna null se os dados estiverem indisponíveis. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # DayEndCandle Esta função retorna o identificador da última vela (candle) do dia para o ativo especificado. ### Função Nome da função: `DayEndCandle` Aliases: `DayEC` ### Parâmetros int | day; | | // O valor do dia, sendo 0 o dia atual, 1 o dia anterior, etc. string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: DayEndCandle[day, symbol = SYMBOL] //Using aliases: DayEC[day, symbol = SYMBOL] //Other examples DayEndCandle[0, "PETR4"] ``` ### Retornos Em caso de sucesso: Retorna a última vela do dia. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se não houver vela no dia. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) --- # BidLow Esta função retorna o menor valor de bid registrado no dia para o símbolo especificado. ### Função Nome da função: `BidLow` Aliases: `BidL` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: BidLow[symbol = SYMBOL] //Using aliases: BidL[symbol = SYMBOL] //Other examples BidLow["BBAS3"] ``` ### Retornos Em caso de sucesso: Retorna o menor preço de compra. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # BidHigh Esta função retorna o maior valor de bid registrado no dia para o símbolo especificado. ### Função Nome da função: `BidHigh` Aliases: `BidH` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: BidHigh[symbol = SYMBOL] //Using aliases: BidH[symbol = SYMBOL] //Other examples BidHigh["BBAS3"] ``` ### Retornos Em caso de sucesso: Retorna o maior preço de compra. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Bid Esta função retorna o preço de compra (bid) atual do símbolo especificado. ### Função Nome da função: `Bid` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: Bid[symbol = SYMBOL] //Other examples Bid["BBAS3"] ``` ### Retornos Em caso de sucesso: Retorna o preço de compra. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AskLow Esta função retorna o menor valor de ask registrado no dia para o símbolo especificado. ### Função Nome da função: `AskLow` Aliases: `AskL` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: AskLow[symbol = SYMBOL] //Using aliases: AskL[symbol = SYMBOL] //Other examples AskLow["ITUB4"] ``` ### Retornos Em caso de sucesso: Retorna o menor preço de venda. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # AskHigh Esta função retorna o maior valor de ask registrado no dia para o símbolo especificado. ### Função Nome da função: `AskHigh` Aliases: `AskH` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: AskHigh[symbol = SYMBOL] //Using aliases: AskH[symbol = SYMBOL] //Other examples AskHigh["ITUB4"] ``` ### Retornos Em caso de sucesso: Retorna o maior preço de venda. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Ask Esta função retorna o preço de venda (ask) atual do símbolo especificado. ### Função Nome da função: `Ask` ### Parâmetros string | symbol | = SYMBOL; | // O símbolo do ativo. ### Exemplos ```java //Default example: Ask[symbol = SYMBOL] //Other examples Ask["PETR4"] ``` ### Retornos Em caso de sucesso: Retorna o preço de venda. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna zero se o símbolo for inválido. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Seq #### Disponível a partir da versão 2.15 Esta função é usada para executar múltiplas expressões em sequência, garantindo que cada uma seja avaliada na ordem especificada. ### Função Nome da função: `Seq` ### Parâmetros any | expression1; | | // Primeira expressão a ser executada. any | expression2 | = ""; | // Segunda expressão a ser executada. any | expression...63 | = ""; | // Outro parametro de expressão que será executado após a segunda, máximo de 63 parametros. ### Exemplos ```java //Default example: Seq[expression1, expression2 = "", expression...63 = ""] //Other examples Seq[Buy[...], Sell[...], PosCloseAll[...]] ``` ### Retornos Em caso de sucesso: Retorna um valor boolean (true) em caso de sucesso de todas as expressões executadas. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um valor boolean (false) em caso de uma expressão falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # Indicator'X' Esta função acessa diretamente o buffer de um indicador e retorna os valores armazenados, permitindo a leitura dos dados calculados pelo indicador em cada barra do gráfico. Esta função é prefixada, sendo necessário substituir o 'x' por um valor entre 0 e 20, onde 'x' representa a categoria em que o indicador está configurado nas definições do robô. ### Função Nome da função: `Indicator'X'` Aliases: `IND'X'` ### Parâmetros uint | buffer | = 0; | // Buffer do indicador que armazena o valor. uint | candle | = 0; | // A vela de referância para obter o preço do indicador. ### Exemplos ```java //Default example: Indicator'X'[buffer = 0, candle = 0] //Using aliases: IND'X'[buffer = 0, candle = 0] //Other examples IND1[buffer, candle] CLOSE[1] <= IND7[0, 1] && CLOSE[0] >= IND7[1, 1] ``` ### Retornos Em caso de sucesso: Retorna o valor do buffer do indicador do tipo double. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0.0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Indicator Esta função acessa diretamente o buffer de um indicador e retorna os valores armazenados, permitindo a leitura dos dados calculados pelo indicador em cada barra do gráfico. ### Função Nome da função: `Indicator` Aliases: `IND` ### Parâmetros uint | id | = 0; | // Categoria que o indicador esta instalado. uint | buffer | = 0; | // Buffer do indicador que armazena o valor. uint | candle | = 0; | // A vela de referância para obter o preço do indicador. ### Exemplos ```java //Default example: Indicator[id = 0, buffer = 0, candle = 0] //Using aliases: IND[id = 0, buffer = 0, candle = 0] //Other examples CLOSE[1] <= IND[7, 0, 1] && CLOSE[0] >= IND[7, 1, 1] ``` ### Retornos Em caso de sucesso: Retorna o valor do buffer do indicador do tipo double. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0.0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # SetGlobal #### Disponível a partir da versão 2.06 Esta função define o valor de uma variável global do tipo double. Se a variável não existir, ela será criada. ### Função Nome da função: `SetGlobal` Aliases: `SetG` ### Parâmetros string | name; | | // Nome da variável global. double | value; | | // Valor a ser definido. ### Exemplos ```java //Default example: SetGlobal[name, value] //Using aliases: SetG[name, value] //Other examples SetGlobal("minha_variavel", 555.55) ``` ### Retornos Em caso de sucesso: Retorna true se o valor foi definido com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se ocorrer um erro. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ReplaceGlobal #### Disponível a partir da versão 2.06 Esta função substitui o valor de uma variável global do tipo double existente. Retorna false se a variável não existir. ### Função Nome da função: `ReplaceGlobal` Aliases: `RepG` ### Parâmetros string | name; | | // Nome da variável global. double | value; | | // Novo valor da variável. ### Exemplos ```java //Default example: ReplaceGlobal[name, value] //Using aliases: RepG[name, value] //Other examples ReplaceGlobal("minha_variavel", 678.90) ``` ### Retornos Em caso de sucesso: Retorna true se o valor foi substituído com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a variável não existir ou ocorrer um erro. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # RemoveGlobal #### Disponível a partir da versão 2.06 Esta função remove uma variável global do tipo double do sistema. Retorna false se a variável não existir. ### Função Nome da função: `RemoveGlobal` Aliases: `RemG` ### Parâmetros string | name; | | // Nome da variável global a ser removida. ### Exemplos ```java //Default example: RemoveGlobal[name] //Using aliases: RemG[name] //Other examples RemoveGlobal("variavel_antiga") ``` ### Retornos Em caso de sucesso: Retorna true se a variável foi removida com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a variável não existir ou ocorrer um erro. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # GetGlobalTime #### Disponível a partir da versão 2.06 Esta função retorna o timestamp do último acesso (leitura ou escrita) de uma variável global do tipo double. ### Função Nome da função: `GetGlobalTime` Aliases: `GetGT` ### Parâmetros string | name; | | // Nome da variável global. ### Exemplos ```java //Default example: GetGlobalTime[name] //Using aliases: GetGT[name] //Other examples GetGlobalTime("minha_variavel") ``` ### Retornos Em caso de sucesso: Retorna o timestamp do último acesso da variável. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se a variável não existir. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # GetGlobal #### Disponível a partir da versão 2.06 Esta função retorna o valor armazenado em uma variável global do tipo double. Se a variável não existir, retorna 0.0. ### Função Nome da função: `GetGlobal` Aliases: `GetG` ### Parâmetros string | name; | | // Nome da variável global. ### Exemplos ```java //Default example: GetGlobal[name] //Using aliases: GetG[name] //Other examples GetGlobal("minha_variavel") ``` ### Retornos Em caso de sucesso: Retorna o valor double da variável global. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 se a variável não existir. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # CreateGlobal #### Disponível a partir da versão 2.06 Esta função cria uma nova variável global do tipo double com o valor especificado. Retorna false se a variável já existir. ### Função Nome da função: `CreateGlobal` Aliases: `CreG` ### Parâmetros string | name; | | // Nome da variável global. double | value; | | // Valor inicial da variável. ### Exemplos ```java //Default example: CreateGlobal[name, value] //Using aliases: CreG[name, value] //Other examples CreateGlobal("nova_variavel", 123.45) ``` ### Retornos Em caso de sucesso: Retorna true se a variável foi criada com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a variável já existir ou ocorrer um erro. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ClearGlobal #### Disponível a partir da versão 2.06 Esta função remove todas as variáveis globais do tipo double que começam com o prefixo especificado. ### Função Nome da função: `ClearGlobal` Aliases: `ClrG` ### Parâmetros string | prefix; | | // Prefixo das variáveis a serem removidas. ### Exemplos ```java //Default example: ClearGlobal[prefix] //Using aliases: ClrG[prefix] //Other examples ClearGlobal("temp_") ``` ### Retornos Em caso de sucesso: Retorna true se as variáveis foram removidas com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se ocorrer um erro. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # AddGlobal #### Disponível a partir da versão 2.06 Esta função adiciona um valor ao valor atual de uma variável global do tipo double. A variável deve existir previamente. ### Função Nome da função: `AddGlobal` Aliases: `AddG` ### Parâmetros string | name; | | // Nome da variável global. double | value; | | // Valor a ser adicionado. ### Exemplos ```java //Default example: AddGlobal[name, value] //Using aliases: AddG[name, value] //Other examples AddGlobal("contador", 1.0) ``` ### Retornos Em caso de sucesso: Retorna true se o valor foi adicionado com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se a variável não existir ou ocorrer um erro. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # See Retorna o valor de uma expressão ou função, exibindo esse valor no log do robô para fins de depuração. A função não altera o resultado retornado, funcionando apenas como uma camada de visualização para acompanhar a execução do código. ### Função Nome da função: `See` ### Parâmetros any | value; | | // Valor da expressão ou função a ser exibido no log. string | label | = ""; | // Rótulo para identificar o valor a ser exibido no log. ### Exemplos ```java //Default example: See[value, label = ""] //Other examples See[PosTicket[0]] See[PosTicket[0], "Ticket 0"] ``` ### Retornos Em caso de sucesso: Retorna o valor do primeiro parâmetro. Retorno: [any](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor do primeiro parâmetro. Retorno: [any](https://sb.botrading.net/llms/references/types/index.md) --- # Print Esta função é usada para imprimir um texto nas logs do Metatrader, muito utilizada para depurar o código. ### Função Nome da função: `Print` ### Parâmetros string | text1; | | // Texto a ser impresso. string | text2 | = ""; | // Segundo parametro de texto que será concatenado ao primeiro. string | text...63 | = ""; | // Outro parametro de texto que será concatenado, máximo de 63 parametros. ### Exemplos ```java //Default example: Print[text1, text2 = "", text...63 = ""] //Other examples Print["Hello World!"] Print["Symbol: ", SYMBOL, " CurrentTime: ", TIME_CURRENT] ``` ### Retornos Em caso de sucesso: Retorna um valor boolean (true) em caso de sucesso de execução. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um valor boolean (false) em caso de erro de execução. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # Log Esta função é usada para imprimir um texto nas Logs do ScriptBot, ela é útil quando queremos separar textos de debug das Logs do Metatrader. ### Função Nome da função: `Log` ### Parâmetros string | text1; | | // Texto a ser impresso. string | text2 | = ""; | // Segundo parametro de texto que será concatenado ao primeiro. string | text...63 | = ""; | // Outro parametro de texto que será concatenado, máximo de 63 parametros. ### Exemplos ```java //Default example: Log[text1, text2 = "", text...63 = ""] //Other examples Log["Hello World!"] Log["Symbol: ", SYMBOL, " CurrentTime: ", TIME_CURRENT] ``` ### Retornos Em caso de sucesso: Retorna um valor boolean (true) em caso de sucesso de execução. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna um valor boolean (false) em caso de erro de execução. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ToTimeModify Esta função permite modificar um horário passado de referencia. ### Função Nome da função: `ToTimeModify` Aliases: `TMod` ### Parâmetros int | time; | | // o valor do horário em segundos. int | seconds | = -1; | // O valor de segundos a ser modificado ou -1 para ignorar. int | minutes | = -1; | // O valor de minutos a ser modificado ou -1 para ignorar. int | hours | = -1; | // O valor de horas a ser modificado ou -1 para ignorar. int | day | = -1; | // O valor do dia a ser modificado ou -1 para ignorar. int | month | = -1; | // O valor do mês a ser modificado ou -1 para ignorar. int | year | = -1; | // O valor do ano a ser modificado ou -1 para ignorar. ### Exemplos ```java //Default example: ToTimeModify[time, seconds = -1, minutes = -1, hours = -1, day = -1, month = -1, year = -1] //Using aliases: TMod[time, seconds = -1, minutes = -1, hours = -1, day = -1, month = -1, year = -1] //Other examples ToTimeModify[TIME_CURRENT, 50, 10, 12] // I would modify the seconds, minutes and hours. ToTimeModify[TIME_CURRENT, -1, -1, -1, 10] // I would only change the day, the other data would remain the same. ``` ### Retornos Em caso de sucesso: Retorna o novo horário em segundos. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo uint (0). Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) --- # ToTimeFormat Esta função transforma um valor em segundos em uma representação textual de horário. ### Função Nome da função: `ToTimeFormat` Aliases: `TFormat` ### Parâmetros uint | time; | | // o valor do horário. ### Exemplos ```java //Default example: ToTimeFormat[time] //Using aliases: TFormat[time] //Other examples ToTimeFormat[TIME_CURRENT] // It would be similar to: "1970.01.01 19:00:00" ``` ### Retornos Em caso de sucesso: Retorna o horário em forma de texto. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna a string vazia. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # ToTime Esta função retorna o horário em forma de texto para número em segundos. Com esta função você pode acessar a vela do dia usando um horário em forma de texto, por exemplo '13:00'. ### Função Nome da função: `ToTime` ### Parâmetros string | time; | | // o valor do horário. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: ToTime[time, symbol = SYMBOL] //Other examples ToTime["19:00"] ``` ### Retornos Em caso de sucesso: Retorna o horário em segundos. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo uint (0). Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) --- # ToPositive Esta função retorna o valor absoluto de um número, ou seja, o seu valor sem sinal (sempre positivo). ### Função Nome da função: `ToPositive` Aliases: `Pos` ### Parâmetros double | value; | | // o valor a ser convertido. ### Exemplos ```java //Default example: ToPositive[value] //Using aliases: Pos[value] //Other examples ToPositive[-10] // Is 10 ToPositive[Close[0]-Open[0]] // Result of the calculation "close [0] -Open [0]" will be positive even when "Open" is larger. ``` ### Retornos Em caso de sucesso: Retorna o valor absoluto. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # ToNegative Esta função retorna o valor negativo de um número, ou seja, o seu valor com sinal (sempre negativo). ### Função Nome da função: `ToNegative` Aliases: `Neg` ### Parâmetros double | value; | | // o valor a ser convertido. ### Exemplos ```java //Default example: ToNegative[value] //Using aliases: Neg[value] //Other examples ToNegative[10] // Is -10 ToNegative[Close[0]-Open[0]] // Result of the calculation "close [0] -Open [0]" will be negative even when "Open" is smaller. ``` ### Retornos Em caso de sucesso: Retorna o valor negativo. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # ToInt Esta função retorna o valor convertido para inteiro. Se o valor for uma string, ele será convertido para zero. Caso seja um número decimal, será arredondado para o inteiro mais próximo. ### Função Nome da função: `ToInt` ### Parâmetros any | value; | | // o valor a ser convertido. ### Exemplos ```java //Default example: ToInt[value] //Other examples ToInt[10.5] // Is 10 ToInt["9999"] // Is 9999 ToInt["My age 30"] // To convert to zero ``` ### Retornos Em caso de sucesso: Retorna o valor convertido para inteiro. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo int (0). Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # ToFormat Esta função permite modificar um texto, formatando-o de acordo com os parâmetros definidos internamente. ### Função Nome da função: `ToFormat` Aliases: `Format` ### Parâmetros string | text; | | // o valor do texto. any | param1 | = ""; | // Primeiro parametro que será formatado. any | param...63 | = ""; | // Os demais parametros que serão formatados. Não pode ser mais de 63. ### Exemplos ```java //Default example: ToFormat[text, param1 = "", param...63 = ""] //Using aliases: Format[text, param1 = "", param...63 = ""] //Other examples ToFormat["Hello, {0}!", "World"]] // New text: "Hello, World!" ToFormat["My text is {0} and my number is {1}!", "Metatrader is God", 10]] // New text: "My text is Metatrader is God and my number is 10!" ToFormat["My list: {0}, {1}, again {0}!", "Jujubas", 777]] // New text: "My list: Jujubas, 777, again Jujubas!" ``` ### Retornos Em caso de sucesso: Retorna o novo texto formatado. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna a string vazia. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # DealVolume Esta função retorna o volume negociado em um negócio específico. ### Função Nome da função: `DealVolume` Aliases: `DVol` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealVolume[ticket] //Using aliases: DVol[ticket] //Other examples DealVolume[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o volume do negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DealType Esta função retorna o tipo do negócio. ### Função Nome da função: `DealType` Aliases: `DType` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealType[ticket] //Using aliases: DType[ticket] //Other examples DealType[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o código do tipo de negócio. (0=Compra, 1=Venda, 2=Saldo, 3=Crédito, 4=Cobrança extra, 5=Correção, 6=Bônus, 7=Comissão extra, 8=Comissão diária, 9=Comissão mensal, 10=Comissão diária do agente, 11=Comissão mensal do agente, 12=Juros, 13=Compra cancelada, 14=Venda cancelada, 15=Dividendo, 16=Dividendo isento, 17=Imposto) Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) --- # DealTimeMsc Esta função retorna o tempo de execução de negociações em milissegundos desde 01.01.1970 ### Função Nome da função: `DealTimeMsc` Aliases: `DTMsc` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealTimeMsc[ticket] //Using aliases: DTMsc[ticket] //Other examples DealTimeMsc[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna a data/hora em milissegundos da execução do negócio. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # DealTime Esta função retorna a data e hora (em formato datetime) quando o negócio foi executado. ### Função Nome da função: `DealTime` Aliases: `DT` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealTime[ticket] //Using aliases: DT[ticket] //Other examples DealTime[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna a data/hora da execução do negócio. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # DealTicketExact #### Disponível a partir da versão 2.15 Esta função retorna o ticket de uma posição fechada no índice exato informado. Caso não exista uma posição nesse índice, a função retorna 0. ### Função Nome da função: `DealTicketExact` Aliases: `DTicketE` ### Parâmetros int | index; | | // Indice da posição. Começando com 0 para a mais atual. ENUM_TRADE | type | = TYPE_ALL; | // Tipo de trade: 'TYPE_BUY', 'TYPE_SELL', 'TYPE_ALL' ENUM_MARKET_ACTION | actionType | = TYPE_ALL; | // Tipo de fechamento: 'TYPE_IN', 'TYPE_OUT', 'TYPE_ALL'. ENUM_TIME_HISTORIC | dateType | = TYPE_DAY; | // Tipo de data de inicio: 'TYPE_DAY', 'TYPE_WEEK' ENUM_MARKET_GET | profitType | = TYPE_ALL; | // Tipo de retorno de lucro: 'TYPE_POSITIVE', 'TYPE_NEGATIVE' ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. string | symbol | = REAL; | // Símbolo do ativo. ### Exemplos ```java //Default example: DealTicketExact[index, type = TYPE_ALL, actionType = TYPE_ALL, dateType = TYPE_DAY, profitType = TYPE_ALL, magic = MAGIC, symbol = REAL] //Using aliases: DTicketE[index, type = TYPE_ALL, actionType = TYPE_ALL, dateType = TYPE_DAY, profitType = TYPE_ALL, magic = MAGIC, symbol = REAL] //Other examples DealTicketExact[0, TYPE_BUY, TYPE_IN] // Retorna o ticket da última posição de compra (ordem de abertura). DealTicketExact[0, TYPE_BUY, TYPE_OUT] // Retorna o ticket da última posição de compra (ordem que fechou). ``` ### Retornos Em caso de sucesso: Retorna o ticket da posição. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma posição for encontrada com os parâmetros informados. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # DealTicket Esta função retorna o ticket da posição fechada mais próxima do índice informado. Caso o índice solicitado seja maior que a quantidade de posições fechadas, será retornado o ticket da última posição disponível (a de maior índice). ### Função Nome da função: `DealTicket` Aliases: `DTicket` ### Parâmetros int | index; | | // Indice da posição. Começando com 0 para a mais atual. ENUM_TRADE | type | = TYPE_ALL; | // Tipo de trade: 'TYPE_BUY', 'TYPE_SELL', 'TYPE_ALL' ENUM_MARKET_ACTION | actionType | = TYPE_ALL; | // Tipo de fechamento: 'TYPE_IN', 'TYPE_OUT', 'TYPE_ALL'. ENUM_TIME_HISTORIC | dateType | = TYPE_DAY; | // Tipo de data de inicio: 'TYPE_DAY', 'TYPE_WEEK' ENUM_MARKET_GET | profitType | = TYPE_ALL; | // Tipo de retorno de lucro: 'TYPE_POSITIVE', 'TYPE_NEGATIVE' ulong | magic | = MAGIC; | // Número mágico para filtrar as operações. string | symbol | = REAL; | // Símbolo do ativo. ### Exemplos ```java //Default example: DealTicket[index, type = TYPE_ALL, actionType = TYPE_ALL, dateType = TYPE_DAY, profitType = TYPE_ALL, magic = MAGIC, symbol = REAL] //Using aliases: DTicket[index, type = TYPE_ALL, actionType = TYPE_ALL, dateType = TYPE_DAY, profitType = TYPE_ALL, magic = MAGIC, symbol = REAL] //Other examples DealTicket[0, TYPE_BUY, TYPE_IN] // Retorna o ticket da última posição de compra (ordem de abertura). DealTicket[0, TYPE_BUY, TYPE_OUT] // Retorna o ticket da última posição de compra (ordem que fechou). ``` ### Retornos Em caso de sucesso: Retorna o ticket da posição. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhuma posição for encontrada com os parâmetros informados. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # DealTake Esta função retorna o preço do take profit definido para um negócio específico. ### Função Nome da função: `DealTake` Aliases: `DTP` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealTake[ticket] //Using aliases: DTP[ticket] //Other examples DealTake[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço do take profit do negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DealSymbol Esta função retorna o nome do símbolo no qual o negócio foi executado. ### Função Nome da função: `DealSymbol` Aliases: `DSymbol` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealSymbol[ticket] //Using aliases: DSymbol[ticket] //Other examples DealSymbol[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o símbolo do negócio. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna string vazia se o negócio não for encontrado. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # DealSwap Esta função retorna o valor do swap acumulado para um negócio específico. ### Função Nome da função: `DealSwap` Aliases: `DSwap` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealSwap[ticket] //Using aliases: DSwap[ticket] //Other examples DealSwap[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o valor do swap do negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DealStop Esta função retorna o preço do stop loss definido para um negócio específico. ### Função Nome da função: `DealStop` Aliases: `DSL` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealStop[ticket] //Using aliases: DSL[ticket] //Other examples DealStop[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço do stop loss do negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DealReason Esta função retorna o código que indica o motivo pelo qual o negócio foi executado. ### Função Nome da função: `DealReason` Aliases: `DReason` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealReason[ticket] //Using aliases: DReason[ticket] //Other examples DealReason[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o código do motivo da execução. (0=Cliente, 1=Mobile, 2=Web, 3=Expert, 4=Stop Loss, 5=Take Profit, 6=Stop Out, 7=Rollover, 8=Margem, 9=Split, 10=Ação corporativa) Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna -1 se o negócio não for encontrado. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # DealProfit Esta função retorna o valor do lucro ou prejuízo (em moeda do ativo) de um negócio específico. ### Função Nome da função: `DealProfit` Aliases: `DProfit` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealProfit[ticket] //Using aliases: DProfit[ticket] //Other examples DealProfit[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o valor do lucro/prejuízo do negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DealOut Esta função indica se o negócio atual representa uma saída no sistema. ### Função Nome da função: `DealOut` Aliases: `DOut` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealOut[ticket] //Using aliases: DOut[ticket] //Other examples DealOut[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna true se o negócio for uma saída. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se o negócio for uma entrada ou se o negócio não for encontrado. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # DealOrder Esta função retorna o número do ticket da ordem que gerou o negócio. ### Função Nome da função: `DealOrder` Aliases: `DOrder` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealOrder[ticket] //Using aliases: DOrder[ticket] //Other examples DealOrder[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o ticket da ordem associada. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # DealOpen Esta função retorna o preço de abertura de um negócio específico. ### Função Nome da função: `DealOpen` Aliases: `DO` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealOpen[ticket] //Using aliases: DO[ticket] //Other examples DealOpen[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o preço de abertura do negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DealMagic Esta função retorna o identificador mágico (número de referência) associado a um negócio específico. ### Função Nome da função: `DealMagic` Aliases: `DMagic` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealMagic[ticket] //Using aliases: DMagic[ticket] //Other examples DealMagic[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o número mágico do negócio. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [ulong](https://sb.botrading.net/llms/references/types/index.md) --- # DealIn Esta função indica se o negócio atual representa uma posição de entrada no sistema. ### Função Nome da função: `DealIn` Aliases: `DIn` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealIn[ticket] //Using aliases: DIn[ticket] //Other examples DealIn[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna true se o negócio for uma entrada. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false se o negócio for uma saída ou se o negócio não for encontrado. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # DealId Esta função retorna o identificador único (ID) de um negócio específico. ### Função Nome da função: `DealId` Aliases: `DId` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealId[ticket] //Using aliases: DId[ticket] //Other examples DealId[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o ID do negócio. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # DealFee Esta função retorna o valor da taxa cobrada em um negócio específico. ### Função Nome da função: `DealFee` Aliases: `DFee` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealFee[ticket] //Using aliases: DFee[ticket] //Other examples DealFee[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o valor da taxa do negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DealExternal Esta função retorna identificador de negócios em um sistema de negociação externo (na troca). ### Função Nome da função: `DealExternal` Aliases: `DExternal` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealExternal[ticket] //Using aliases: DExternal[ticket] //Other examples DealExternal[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o ID externo do negócio. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna string vazia se o negócio não for encontrado. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # DealEntry Esta função retorna um código que indica o tipo de entrada de um negócio. ### Função Nome da função: `DealEntry` Aliases: `DEntry` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealEntry[ticket] //Using aliases: DEntry[ticket] //Other examples DealEntry[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o código do tipo de entrada. (0=Entrada, 1=Saída, 2=Reversão, 3=Fechamento por oposta) Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # DealCommission Esta função retorna o valor da comissão cobrada em um negócio específico. ### Função Nome da função: `DealCommission` Aliases: `DComm` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealCommission[ticket] //Using aliases: DComm[ticket] //Other examples DealCommission[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o valor da comissão do negócio. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se o negócio não for encontrado. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # DealComment Esta função retorna o comentário/texto descritivo associado a um negócio específico. ### Função Nome da função: `DealComment` Aliases: `DComment` ### Parâmetros long | ticket; | | // Número do ticket que identifica o negócio. ### Exemplos ```java //Default example: DealComment[ticket] //Using aliases: DComment[ticket] //Other examples DealComment[DealTicket[0]] ``` ### Retornos Em caso de sucesso: Retorna o comentário do negócio. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna string vazia se o negócio não for encontrado. Retorno: [string](https://sb.botrading.net/llms/references/types/index.md) --- # Time Esta função retorna o horário de abertura de uma vela. ### Função Nome da função: `Time` Aliases: `T` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: Time[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: T[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples Time[1] Time[1, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o horário da vela. Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo uint (0). Retorno: [uint](https://sb.botrading.net/llms/references/types/index.md) --- # TickVolume Esta função retorna o volume de uma vela com base nos dados de tick. ### Função Nome da função: `TickVolume` Aliases: `TICKV` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: TickVolume[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: TICKV[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples TickVolume[1] TickVolume[1, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o volume da vela. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo long (0). Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # Spread Esta função retorna a quantidade de spread de uma vela. ### Função Nome da função: `Spread` Aliases: `SPD` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: Spread[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: SPD[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples Spread[1] Spread[1, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o spread da vela. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo int (0). Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # RealVolume Esta função retorna o volume de uma vela com base em dados reais. Em alguns mercados, no entanto, o volume pode ser constantemente zero devido à ausência de dados de volume no feed de dados, seja por limitações da corretora, do tipo de ativo (como forex, que muitas vezes não fornece volume real), ou pela forma como o volume é calculado e disponibilizado. ### Função Nome da função: `RealVolume` Aliases: `REALV` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: RealVolume[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: REALV[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples TickVolume[1] TickVolume[1, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o volume da vela. Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo long (0). Retorno: [long](https://sb.botrading.net/llms/references/types/index.md) --- # Open Esta função retorna o preço de abertura de uma vela. ### Função Nome da função: `Open` Aliases: `O` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: Open[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: O[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples Open[1] Open[1, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o preço da vela. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0.0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # MinLow Esta função retorna o menor preço entre duas posições. Ela realiza uma varredura do índice inicial até o índice final, identificando e retornando o preço da menor vela encontrada nesse intervalo. ### Função Nome da função: `MinLow` Aliases: `MinL` ### Parâmetros uint | startIndex; | | // O index da primeira vela de referência. uint | endIndex; | | // O index da ultima vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: MinLow[startIndex, endIndex, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: MinL[startIndex, endIndex, timeframe = CURRENT, symbol = SYMBOL] //Other examples MinLow[0, 20] MinLow[0, 20, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o preço da menor vela. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # MaxHigh Esta função retorna o maior preço entre duas posições. Ela realiza uma varredura do índice inicial até o índice final, identificando e retornando o preço da maior vela encontrada nesse intervalo. ### Função Nome da função: `MaxHigh` Aliases: `MaxH` ### Parâmetros uint | startIndex; | | // O index da primeira vela de referência. uint | endIndex; | | // O index da ultima vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: MaxHigh[startIndex, endIndex, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: MaxH[startIndex, endIndex, timeframe = CURRENT, symbol = SYMBOL] //Other examples MaxHigh[0, 20] MaxHigh[0, 20, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o preço da maior vela. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Low Esta função retorna o preço da mínima de uma vela. ### Função Nome da função: `Low` Aliases: `L` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: Low[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: L[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples Low[1] Low[1, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o preço da vela. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0.0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # High Esta função retorna o preço da máxima de uma vela. ### Função Nome da função: `High` Aliases: `H` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: High[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: H[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples High[1] High[1, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o preço da vela. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0.0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Direction Esta função retorna a direção simplificada de uma vela, ou seja, se a vela é positiva ou negativa. (-1 = Negativa, 0 = Neutra, 1 = Positiva) ### Função Nome da função: `Direction` Aliases: `DIR` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: Direction[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: DIR[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples Direction[1] Direction[1, M5, "EURUSD"] DIR[1] == 1 // Check if the candle is positive/buying ``` ### Retornos Em caso de sucesso: Retorna a direção da vela. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo int (0). Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # Close Esta função retorna o preço de fechamento de uma vela. ### Função Nome da função: `Close` Aliases: `C` ### Parâmetros uint | candle; | | // A vela de referência. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: Close[candle, timeframe = CURRENT, symbol = SYMBOL] //Using aliases: C[candle, timeframe = CURRENT, symbol = SYMBOL] //Other examples Close[1] Close[1, M5, "EURUSD"] ``` ### Retornos Em caso de sucesso: Retorna o preço da vela. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0.0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # Candle Esta função retorna o identificador da vela, usado para obter o index utilizando o horário especificado. ### Função Nome da função: `Candle` ### Parâmetros uint | timeSeconds; | | // O horário em segundos. ENUM_TIMEFRAME | timeframe | = CURRENT; | // O tempo gráfico de referência. string | symbol | = SYMBOL; | // O ativo de referência. ### Exemplos ```java //Default example: Candle[timeSeconds, timeframe = CURRENT, symbol = SYMBOL] //Other examples Candle[1] Candle[1, M5, "EURUSD"] Candle[ToTime["13:00"]] // How to get the candle at 13:00 of the day Candle[TIME_CURRENT-300] // How to get the last 5 minutes candles index ``` ### Retornos Em caso de sucesso: Retorna o index da vela. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo int (0). Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # ObjVLine #### Disponível a partir da versão 2.10 Permite desenhar uma linha vertical em um ponto de tempo específico no gráfico, com personalização de cor, espessura e estilo de linha. ### Função Nome da função: `ObjVLine` Aliases: `ObjVL` ### Parâmetros string | name; | | // Identificador único da linha no gráfico. datetime | value; | | // Data e hora em que a linha vertical será desenhada. color | clr | = clrRed; | // Cor da linha. int | width | = 1; | // Espessura da linha. ENUM_LINE_STYLE | style | = TYPE_SOLID; | // Estilo da linha (sólida, tracejada, etc.). ### Exemplos ```java //Default example: ObjVLine[name, value, clr = clrRed, width = 1, style = TYPE_SOLID] //Using aliases: ObjVL[name, value, clr = clrRed, width = 1, style = TYPE_SOLID] //Other examples ObjVLine["InicioSessao", TIME_CURRENT] // Linha vermelha no início da sessão ObjVLine["Fechamento", TIME_CURRENT, clrBlue, 2, TYPE_DOT] // Linha azul pontilhada na hora atual ``` ### Retornos Em caso de sucesso: Retorna o tempo associado à linha criada. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 em caso de falha. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # ObjTrendLine #### Disponível a partir da versão 2.10 Permite desenhar uma linha de tendência conectando dois pontos de preço em tempos diferentes, com personalização de cor, espessura e estilo. ### Função Nome da função: `ObjTrendLine` Aliases: `ObjTL` ### Parâmetros string | name; | | // Identificador único da linha de tendência. datetime | time1; | | // Tempo do ponto inicial. double | price1; | | // Preço do ponto inicial. datetime | time2; | | // Tempo do ponto final. double | price2; | | // Preço do ponto final. color | clr | = clrRed; | // Cor da linha. int | width | = 1; | // Espessura da linha. ENUM_LINE_STYLE | style | = TYPE_SOLID; | // Estilo da linha. ### Exemplos ```java //Default example: ObjTrendLine[name, time1, price1, time2, price2, clr = clrRed, width = 1, style = TYPE_SOLID] //Using aliases: ObjTL[name, time1, price1, time2, price2, clr = clrRed, width = 1, style = TYPE_SOLID] //Other examples ObjTrendLine["Suporte", Time[10], Low[10], Time[0], Low[0]] // Linha de suporte conectando mínimos ObjTrendLine["Resistencia", Time[20], High[20], Time[0], High[0], clrBlue, 2, TYPE_DASH] // Linha de resistência tracejada azul ``` ### Retornos Em caso de sucesso: Retorna o preço atual da linha criada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 caso a criação falhe. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # ObjSetTime #### Disponível a partir da versão 2.10 Permite modificar a coordenada de tempo de um ponto específico de um objeto gráfico. ### Função Nome da função: `ObjSetTime` Aliases: `ObjST` ### Parâmetros string | name; | | // Nome do objeto. datetime | time; | | // Novo valor de tempo para o ponto do objeto. int | buffer | = 0; | // Número do buffer a ser modificado. ### Exemplos ```java //Default example: ObjSetTime[name, time, buffer = 0] //Using aliases: ObjST[name, time, buffer = 0] //Other examples ObjSetTime["LinhaSL", TIME_CURRENT] // Define o tempo atual para a linha ObjSetTime["LinhaSL", TIME_CURRENT, 0] // Ajusta o tempo do primeiro ponto ou linha ObjSetTime["Suporte", TIME_CURRENT, 1] // Ajusta o tempo do segundo ponto ou linha ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) caso falhe. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ObjSetPrice #### Disponível a partir da versão 2.10 Permite modificar a coordenada de preço de um ponto específico de um objeto gráfico. ### Função Nome da função: `ObjSetPrice` Aliases: `ObjSP` ### Parâmetros string | name; | | // Nome do objeto. double | price; | | // Novo valor de preço para o ponto do objeto. int | buffer | = 0; | // Número do buffer a ser modificado. ### Exemplos ```java //Default example: ObjSetPrice[name, price, buffer = 0] //Using aliases: ObjSP[name, price, buffer = 0] //Other examples ObjSetPrice["LinhaSL", 1.11500] // Define novo preço para a linha ObjSetPrice["Resistencia", 1.12000, 0] // Ajusta o preço do primeiro ponto ou linha ObjSetPrice["Resistencia", 1.12000, 1] // Ajusta o preço do segundo ponto ou linha ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se a modificação for bem-sucedida. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) caso falhe. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ObjRemove #### Disponível a partir da versão 2.10 Permite remover um objeto gráfico previamente criado no gráfico, identificado pelo seu nome. ### Função Nome da função: `ObjRemove` Aliases: `ObjRem` ### Parâmetros string | name; | | // Nome do objeto a ser removido. ### Exemplos ```java //Default example: ObjRemove[name] //Using aliases: ObjRem[name] //Other examples ObjRemove['LinhaSL'] // Remove a linha chamada LinhaSL ObjRemove['Resistencia'] // Remove objeto chamado Resistencia ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se o objeto foi removido com sucesso. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se o objeto não existir ou a remoção falhar. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ObjHLine #### Disponível a partir da versão 2.10 Permite desenhar uma linha horizontal em um preço específico no gráfico, com personalização de cor, espessura e estilo de linha. ### Função Nome da função: `ObjHLine` Aliases: `ObjHL` ### Parâmetros string | name; | | // Identificador único da linha no gráfico. double | price; | | // Preço em que a linha horizontal será desenhada. color | clr | = clrRed; | // Cor da linha. int | width | = 1; | // Espessura da linha. ENUM_LINE_STYLE | style | = TYPE_SOLID; | // Estilo da linha (sólida, tracejada, etc.). ### Exemplos ```java //Default example: ObjHLine[name, price, clr = clrRed, width = 1, style = TYPE_SOLID] //Using aliases: ObjHL[name, price, clr = clrRed, width = 1, style = TYPE_SOLID] //Other examples ObjHLine["LinhaSL", 1.11500] // Cria linha vermelha sólida no preço 1.11500 ObjHL["LinhaTP", 1.12000, clrBlue, 2, TYPE_DASH] // Linha azul tracejada mais espessa ``` ### Retornos Em caso de sucesso: Retorna o preço da linha criada. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 caso a criação falhe. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # ObjGetTime #### Disponível a partir da versão 2.10 Permite recuperar a coordenada de tempo de um ponto de um objeto gráfico, especificando índice e buffer. ### Função Nome da função: `ObjGetTime` Aliases: `ObjGT` ### Parâmetros string | name; | | // Nome do objeto. int | index | = -1; | // Índice do ponto (valor negativo indica o valor de criação). int | buffer | = 0; | // Número do buffer a ser acessado. ### Exemplos ```java //Default example: ObjGetTime[name, index = -1, buffer = 0] //Using aliases: ObjGT[name, index = -1, buffer = 0] //Other examples ObjGetTime["LinhaSL"] // Obtém o tempo associado à linha ObjGetTime["Suporte", 0] // Obtém o tempo do primeiro ponto do objeto Suporte ObjGetTime["Suporte", 1] // Obtém o tempo do segundo ponto do objeto Suporte ``` ### Retornos Em caso de sucesso: Retorna o valor datetime correspondente ao ponto do objeto. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 caso não encontre o objeto. Retorno: [datetime](https://sb.botrading.net/llms/references/types/index.md) --- # ObjGetPrice #### Disponível a partir da versão 2.10 Permite recuperar a coordenada de preço de um ponto de um objeto gráfico, especificando índice e buffer. ### Função Nome da função: `ObjGetPrice` Aliases: `ObjGP` ### Parâmetros string | name; | | // Nome do objeto. int | index | = -1; | // Índice do ponto (valor negativo indica o valor de criação). int | buffer | = 0; | // Número do buffer a ser acessado. ### Exemplos ```java //Default example: ObjGetPrice[name, index = -1, buffer = 0] //Using aliases: ObjGP[name, index = -1, buffer = 0] //Other examples ObjGetPrice["LinhaSL"] // Obtém o preço associado à linha ObjSetTime["Resistencia", 0] // Obtém o preço do primeiro ponto do objeto Resistencia ObjSetTime["Resistencia", 1] // Obtém o preço do segundo ponto do objeto Resistencia ``` ### Retornos Em caso de sucesso: Retorna o valor double correspondente ao ponto do objeto. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0.0 caso não encontre o objeto. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # ObjExist #### Disponível a partir da versão 2.10 Permite verificar a existência de um objeto no gráfico através do seu nome. ### Função Nome da função: `ObjExist` Aliases: `ObjEx` ### Parâmetros string | name; | | // Nome do objeto a ser verificado. ### Exemplos ```java //Default example: ObjExist[name] //Using aliases: ObjEx[name] //Other examples ObjExist["LinhaSL"] // Retorna true se a linha existir", "ObjExist["Resistencia"] // Retorna false se não houver objeto com este nome ``` ### Retornos Em caso de sucesso: Retorna verdadeiro (true) se o objeto existe. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna falso (false) se o objeto não existir. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # ObjClear #### Disponível a partir da versão 2.10 Remove todos os objetos cujo nome inicie com um prefixo específico e opcionalmente por tipo. ### Função Nome da função: `ObjClear` Aliases: `ObjClr` ### Parâmetros string | prefix; | | // Prefixo dos objetos a serem removidos. int | type | = -1; | // Tipo de objeto a remover (-1 remove todos os tipos). ### Exemplos ```java //Default example: ObjClear[prefix, type = -1] //Using aliases: ObjClr[prefix, type = -1] //Other examples ObjClear["Linha"] // Remove todos os objetos que começam com "Linha" ObjClear["Sinal", OBJ_TREND] // Remove somente objetos de tendência com prefixo "Sinal" ``` ### Retornos Em caso de sucesso: Retorna o número de objetos removidos. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna 0 se nenhum objeto foi removido. Retorno: [int](https://sb.botrading.net/llms/references/types/index.md) --- # SetVolume Esta função define o novo volume utilizado no sistema de envio de ordens. Ela altera diretaemente o valor no gerenciador de volume, portanto, é importante considerar o método de cálculo do mesmo. ### Função Nome da função: `SetVolume` Aliases: `SetVol` ### Parâmetros double | value; | | // o valor do volume. double | defaultValue | = VOLUME_MIN; | // o valor padrão do volume. ### Exemplos ```java //Default example: SetVolume[value, defaultValue = VOLUME_MIN] //Using aliases: SetVol[value, defaultValue = VOLUME_MIN] //Other examples SetVol[10] ``` ### Retornos Em caso de sucesso: Retorna true se o volume for alterado com sucesso, ou false caso contrário. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna false em caso de erro ou falha. Retorno: [bool](https://sb.botrading.net/llms/references/types/index.md) --- # GetVolume Esta função retorna o volume que a ordem será colocada no mercado. ### Função Nome da função: `GetVolume` Aliases: `GetVol` ### Parâmetros Esta função não requer parâmetros. ### Exemplos ```java //Default example: GetVolume[] //Using aliases: GetVol[] ``` ### Retornos Em caso de sucesso: Retorna o volume. Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) Em caso de erro: Retorna o valor padrão zero para o tipo double (0.0). Retorno: [double](https://sb.botrading.net/llms/references/types/index.md) --- # FAQ Nesta página, você encontrará respostas para perguntas frequentes sobre o ScriptBot. ## Perguntas Frequentes [Seção intitulada “Perguntas Frequentes”](#perguntas-frequentes) Preciso de conhecimentos avançados para usar o ScriptBot? Não. Nenhum conhecimento avançado ou experiência em programação é necessário. O ScriptBot utiliza expressões lógicas simples e parâmetros bem organizados, que podem ser facilmente aprendidos por qualquer pessoa, mesmo sem background técnico. Em nossa documentação, você encontra um guia completo com instruções e exemplos práticos para usar o robô. Em quais corretoras posso usar o ScriptBot? O ScriptBot é compatível com todas as corretoras que oferecem o MetaTrader 5 (MT5). Em quais mercados o ScriptBot é compatível? ScriptBot é compatível com todos os mercados, seja Forex, Indices, Ações, Futuros, Opções… Caso em algum mercado não seja compatível, entre em contato conosco. O ScriptBot é compatível com contas Hedge? Sim, o ScriptBot é totalmente compatível e também recomendado para uso com contas Hedge. O ScriptBot é compatível com contas Netting? Parcialmente. O ScriptBot ainda não é totalmente compatível com contas Netting, por isso não recomendamos seu uso nesse tipo de conta. A compatibilidade completa estará disponível em breve. O ScriptBot oferece estratégias prontas para uso? Não. A estratégia padrão do ScriptBot é apenas um exemplo simplificado e não deve ser utilizada em produção. No entanto, em nosso [Discord](https://discord.botrading.net) você pode encontrar diversas estratégias desenvolvidas pela comunidade. Lembre-se: nenhum lucro é garantido. Desconfie de garantias de lucro fácil e rápido; Como instalar um indicador no ScriptBot? Para instalar um indicador no ScriptBot, siga os passos detalhados na documentação, especificamente na seção [Instalação de Indicadores](https://sb.botrading.net/llms/architecture/indicators/index.md). Lá você encontrará instruções para instalar tanto indicadores internos quanto externos — incluindo aqueles que você comprou, baixou ou desenvolveu. O ScriptBot funciona em conta real e demo? Sim, o ScriptBot é compatível tanto com contas demo quanto com contas reais. Quais versões do ScriptBot estão disponíveis? Oferecemos três versões diferentes: **ScriptBot Lite (Gratuita):** Uma versão simplificada e totalmente gratuita para uso. **ScriptBot Standard (Gratuita):** Versão gratuita, sem limitações de sistemas, mas com limite de lucro mensal de 250,00 (moeda da conta). **ScriptBot Pro (Com licença):** Versão completa, com licença para uso ilimitado. Como adquirir uma licença para o ScriptBot? Atualmente, o ScriptBot 2.0 está na versão Dev-Build e disponível gratuitamente. Você pode baixar o robô diretamente na nossa [Página de downloads](https://sb.botrading.net/llms/resources/downloads/index.md). Como faço para receber suporte caso tenha dúvidas? Você pode entrar em contato conosco via [Discord](https://discord.botrading.net), e responderemos o mais rápido possível. Existe garantia ou política de reembolso? Sim. Oferecemos garantia de 7 dias. Caso não fique satisfeito, entre em contato para solicitar o reembolso conforme nossa política. O ScriptBot garante lucro? Não. O ScriptBot é uma ferramenta que permite desenvolver suas próprias estratégias, mas a lucratividade depende totalmente do usuário. Nenhum lucro é garantido. Posso personalizar as configurações do ScriptBot? Sim. Você pode ajustar os parâmetros para adequar o sistema ao seu estilo de trading, tendo total liberdade para configurar as opções que desejar. --- # Gatilhos Nesta página, você encontrará informações sobre os gatilhos de entrada, saída e atualização disponíveis no ScriptBot. ## O que é um gatilho? [Seção intitulada “O que é um gatilho?”](#o-que-é-um-gatilho) Um gatilho é um ponto de execução automatizado que verifica, em intervalos regulares, uma condição lógica definida pelo usuário. Essas condições são expressas por meio de expressões lógicas e avaliadas conforme a [Frequência Configurada](https://sb.botrading.net/llms/architecture/frequencies/index.md). No ScriptBot, os gatilhos são o mecanismo central de controle sobre ordens e posições, permitindo que o robô atue de forma autônoma, seguindo as regras definidas pelo usuário. Os principais tipos de gatilhos são: * **Gatilhos de entrada:** disparam ordens de compra ou venda quando a condição de entrada for satisfeita; * **Gatilhos de saída:** executam a saída do mercado, encerrando uma posição ou cancelando uma ordem; * **Gatilhos de atualização:** ajustam ordens ou posições existentes, com base em condições atualizadas do mercado. Há diferentes tipos de gatilhos, cada um com um papel específico no fluxo da estratégia. Eles oferecem controle granular e flexibilidade para automatizar decisões com precisão e segurança. ## Gatilhos de entrada [Seção intitulada “Gatilhos de entrada”](#gatilhos-de-entrada) Os gatilhos de entrada são responsáveis por realizar cálculos e avaliar condições para determinar se uma ordem de compra ou venda deve ser executada. Esses gatilhos possuem um fluxo de execução, o que os torna mais flexíveis na criação das estratégias. Abaixo está uma imagem contendo os gatilhos de entrada disponíveis no ScriptBot. ![Gatilhos de entrada](https://sb.botrading.net/llms/_astro/Triggers.DF9prFz0_19LMgU.webp/index.md) Os gatilhos seguem uma ordem de execução baseada em uma lógica condicional que define o fluxo da estratégia. Alguns são obrigatórios, enquanto outros são opcionais, mas todos, quando combinados, compõem o funcionamento completo da estratégia. O fluxo de operações do ScriptBot segue a seguinte ordem: O fluxo de execução é composto por quatro etapas principais, organizadas sequencialmente: 1. **PRE-REQUISITO** * Primeira verificação da sequência. * Responsável por fazer verificações iniciais, usadas para cálculos simples e rápidos. * Se validado como **verdadeiro**, o fluxo prossegue para o próximo gatilho. * **Opcional**: caso esteja vazio, o processo segue diretamente para o **ENTRADA**. 2. **ENTRADA** * Gatilho de entrada da estratégia. * Responsável por realizar o cálculo da lógica principal da estratégia. * Se validado como **verdadeiro**, leva à próxima etapa (**CONFIRMAÇÃO**). 3. **CONFIRMAÇÃO** * Confirmação adicional antes da execução. * Responsável por fazer cálculos adicionais, se necessário. * **Opcional**: se não estiver configurado, o fluxo segue diretamente para **FILTROS**. 4. **FILTROS** * Os filtros aplicam múltiplas camadas de validações para aumentar a **confiabilidade** da estratégia. * Cada filtro realiza uma **validação específica** e pode ter **pesos diferentes**, permitindo uma análise mais refinada. * A documentação completa sobre os filtros podem ser encontradas em [Filtros](https://sb.botrading.net/llms/architecture/filters/index.md). * **Opcional**: se não estiver configurado, o fluxo segue diretamente para **ENVIO DO PEDIDO**. 5. **ENVIO DO PEDIDO** * Etapa final do fluxo. * Responsável pelo envio da operação propriamente dita. ## Gatilhos de saída [Seção intitulada “Gatilhos de saída”](#gatilhos-de-saída) Os gatilhos de saida são responsáveis por realizar cálculos e avaliar condições para determinar se uma ordem de compra ou venda deve ser removida. Abaixo está uma imagem contendo os gatilhos de saída disponíveis no ScriptBot. ![Gatilhos de saída](https://sb.botrading.net/llms/_astro/ExitTriggers._NjEL2RC_2sPUIy.webp/index.md) No ScriptBot, existem quatro tipos diferentes de gatilhos de saída, cada um responsável por um tipo específico de finalização. ### Gatilhos de saída totais [Seção intitulada “Gatilhos de saída totais”](#gatilhos-de-saída-totais) Os gatilhos de **saída total** são responsáveis por tentar encerrar todas as **posições** e **ordens** atualmente abertas, de acordo com as condições definidas pelo usuário. ![Gatilhos de saída total](https://sb.botrading.net/llms/_astro/ExitTriggersAll.CgOFFnUY_Z1i7A9T.webp/index.md) O fluxo de saída segue a seguinte ordem: O fluxo é resumido em duas etapas: 1. **SAÍDA** * Representa o cálculo principal para realizar o fechamento. * Tem como função verificar se é possível encerrar todas as posições ou ordens em aberto. * Se o resultado for **verdadeiro**, o processo avança para a etapa seguinte: **FECHAMENTO TOTAL**. * **Importante**: se este campo estiver vazio, nenhum cálculo de fechamento será executado. 2. **FECHAMENTO TOTAL** * Última etapa do fluxo. * Responsável por encerrar definitivamente todas as posições e ordens abertas. ### Gatilhos de saída individuais [Seção intitulada “Gatilhos de saída individuais”](#gatilhos-de-saída-individuais) Os gatilhos de **saída individual** são responsáveis por tentar encerrar, de forma isolada, as **posições** e **ordens** atualmente abertas. Esse tipo de cálculo realiza uma **iteração separada** para cada posição ou ordem, permitindo que o usuário defina **condições específicas** para o fechamento de cada uma delas. ![Gatilhos de saída individual](https://sb.botrading.net/llms/_astro/ExitTriggersIndividual.JCPf1PM5_hKkMk.webp/index.md) O fluxo de saída segue a seguinte ordem: O fluxo é resumido nas seguintes etapas: 1. **ITERADOR** * Inicia o ciclo do fluxo. * Controla a repetição sobre uma coleção de ordens ou posições. * Garante que cada item seja processado individualmente, mantendo o controle do avanço. 2. **SELEÇÃO DA ORDEM OU POSIÇÃO** * Etapa responsável por selecionar a próxima ordem ou posição a ser processada. * Responsável por alimentar as [Variáveis Locais](https://sb.botrading.net/llms/placeholders/variables/#positions-and-orders/index.md). * Essa seleção alimenta a etapa seguinte: **SAÍDA INDIVIDUAL**. 3. **SAÍDA INDIVIDUAL** * Realiza a verificação principal para determinar se a ordem ou posição pode ser encerrada. * Se o resultado for **verdadeiro**, o fluxo segue para a etapa de **FECHAMENTO**. * Se **falso**, o item não será encerrado e o fluxo retorna diretamente ao **ITERADOR** para processar o próximo. 4. **FECHAMENTO** * Etapa final do processamento individual. * Encerra a ordem ou posição que foi validada na etapa anterior. * Após o fechamento, o fluxo retorna ao **ITERADOR** para continuar o ciclo com o próximo item. ### Gatilhos de atualização individuais [Seção intitulada “Gatilhos de atualização individuais”](#gatilhos-de-atualização-individuais) Os gatilhos de **atualização individual** são responsáveis por selecionar, de forma isolada, um **pedido**, bem como as **posições** e **ordens** que estão abertas no momento. Esse tipo de cálculo realiza uma **iteração separada** para cada posição ou ordem, permitindo que o usuário manipule este pedido, modificando seus dados, como stop, take e preços. ![Gatilhos de atualização individual](https://sb.botrading.net/llms/_astro/UpdateTriggersIndividual.LblVC4uu_Ahyjf.webp/index.md) O fluxo de atualização segue a seguinte ordem: O fluxo é resumido nas seguintes etapas: 1. **ITERADOR** * Inicia o ciclo do fluxo. * Controla a repetição sobre uma coleção de ordens ou posições. * Garante que cada item seja processado individualmente, mantendo o controle do avanço. 2. **SELEÇÃO DA ORDEM OU POSIÇÃO** * Etapa responsável por selecionar a próxima ordem ou posição a ser processada. * Responsável por alimentar as [Variáveis Locais](https://sb.botrading.net/llms/placeholders/variables/#positions-and-orders/index.md). * Essa seleção alimenta a etapa seguinte: **ATUALIZADOR INDIVIDUAL**. 3. **ATUALIZADOR INDIVIDUAL** * Realiza os cálculos condicionais da ordem ou posição. * Após a manipulação, o fluxo retorna ao **ITERADOR** para continuar o ciclo com o próximo item. --- # Indicadores Nesta página, você irá aprender a como instalar um indicador no ScriptBot. ## O que é um indicador? [Seção intitulada “O que é um indicador?”](#o-que-é-um-indicador) Os indicadores são ferramentas analíticas essenciais para apoiar a tomada de decisão no mercado financeiro. Eles podem ser aplicados visualmente, diretamente nos gráficos, ou de forma automatizada, integrando seus dados a estratégias operacionais por meio de expressões lógicas no ScriptBot. Esses indicadores são especialmente úteis na criação de filtros e na definição de pontos de entrada mais precisos. Além disso, possibilitam análises mais avançadas, que não seriam viáveis utilizando apenas expressões lógicas, trazendo maior flexibilidade e robustez às estratégias. ## Indicador [Seção intitulada “Indicador”](#indicator) Os indicadores são de extrema importância no desenvolvimento de estratégias no ScriptBot. Com eles, é possível analisar o comportamento do mercado, identificar tendências, detectar sinais de entrada e saída, além de otimizar a tomada de decisões automatizadas. ### Parâmetros: [Seção intitulada “Parâmetros:”](#parâmetros) * **[01] Nome ou Diretório**: * Define o nome ou diretório do indicador: * **[02] Parâmetros da Instância**: * Parâmetros da instancia do indicador, separados por vírgula. * **Valor padrão**: 0, SYMBOL, CURRENT * **[03] Parâmetros do Indicador**: * Parâmetros do indicador, se houver e separados por vírgula. * **[04] Carregamento forçado**: * O indicador é carregado imediatamente, mesmo que o indicador não seja utilizado. ### Tipos de Indicadores [Seção intitulada “Tipos de Indicadores”](#tipos-de-indicadores) No ScriptBot, existem dois tipos de indicadores: * **Indicadores internos** * São indicadores nativos do MetaTrader 5. * Sua instalação é simples, feita apenas pelo nome do indicador. * Você pode consultar a lista completa acessando: [Lista de Indicadores](https://sb.botrading.net/llms/references/indicators/index.md) * **Indicadores externos** * Desenvolvidos por terceiros, não fazem parte do MetaTrader 5 por padrão. * A instalação requer o caminho completo do arquivo. Por exemplo: **“Market/Ultra ZigZag.ex5”** * Podem ser encontrados no [MQL5 Market](https://www.mql5.com/pt/market/mt5/indicator), na [MQL5 CodeBase](https://www.mql5.com/pt/code/mt5/indicators) ou ainda ser criados pelo próprio usuário. ### Instalando um Indicador [Seção intitulada “Instalando um Indicador”](#instalando-um-indicador) O processo de instalação varia conforme o tipo de indicador, mas em ambos os casos é simples, embora exija atenção. Abaixo, você pode ver as duas formas de instalar um indicador: Indicadores Internos 1. A instalação de um indicador interno é extremamente simples. O primeiro passo é escolher um indicador na [Lista de Indicadores](https://sb.botrading.net/llms/references/indicators/index.md). 2. Com o indicador escolhido, basta adicioná-lo na configuração do robô. ![Internal Alligator](https://sb.botrading.net/llms/_astro/IndAlligator.Bs9_fz_Y_tYIKf.webp/index.md) No exemplo acima, o indicador [Alligator](https://sb.botrading.net/llms/references/indicators/#alligator/index.md) foi adicionado na configuração do robô. 3. Pronto! O indicador já está instalado, agora basta continuar com a configuração dos parâmetros. Indicadores Externos 1. Baixe o Indicador É possível baixar de qualquer fonte. Algumas das mais populares são: * Baixado do [MQL5 Market](https://www.mql5.com/pt/market/mt5/indicator) * Encontrado na [MQL5 CodeBase](https://www.mql5.com/pt/code/mt5/indicators) * Criado por você 2. Identifique o caminho completo onde o indicador está salvo. ![External Alligator](https://sb.botrading.net/llms/_astro/IndAlligatorExternalExplorer.BrAgyKfh_17goqP.webp/index.md) **Exemplo:** `Examples/Alligator` **PS**: Não é necessário incluir o diretório `Indicadores` antes de `Examples`, isso é intencional. O ScriptBot reconhece que todos os indicadores ficam dentro dessa pasta padrão. 3. Adicione o indicador na configuração do robô. ![External Alligator](https://sb.botrading.net/llms/_astro/IndAlligatorExternal.C8Bvd-Ne_ZFpNIU.webp/index.md) **Resultado:** `Examples/Alligator.ex5` **Importante:** * O caminho deve estar idêntico ao do arquivo, respeitando letras maiúsculas/minúsculas, espaços e pontuação. * No final do caminho, adicione a extensão `.ex5`, apenas para evitar problemas. 4. Pronto! O indicador já está instalado, agora basta continuar com a configuração dos parâmetros. ### Parâmetros da Instância [Seção intitulada “Parâmetros da Instância”](#parâmetros-da-instância) Os parâmetros da instância do indicador são obrigatórios e de extrema importância para o seu funcionamento adequado. Eles servem como diretrizes que definem o comportamento do indicador, como: em qual janela ele será inserido, qual ativo será analisado e qual o período (tempo gráfico) será utilizado para obter os dados. Esses parâmetros permitem que o indicador seja flexível, adaptando-se a diferentes contextos de análise. Por exemplo, é possível aplicar o indicador a diferentes ativos ou intervalos de tempo, sem a necessidade de alterar o esses dados diretamente no gráfico em operação, apenas modificando os parâmetros da instância. ###### Entendendo os Parâmetros: 0, SYMBOL, CURRENT | | | -> Período de Análise: [Lista de Períodos](https://sb.botrading.net/llms/references/enumerators/#timeframes/index.md) | | ----------> Tipo de Ativo: [Lista de Ativos](https://sb.botrading.net/llms/references/constants/#symbols/index.md) | ---------------> Janela de Análise: [Lista de Janelas](https://sb.botrading.net/llms/references/constants/#windows/index.md) ### Parâmetros do Indicador [Seção intitulada “Parâmetros do Indicador”](#parâmetros-do-indicador) Os parâmetros dos indicadores não são obrigatórios. Caso nenhum parâmetro seja informado, o indicador será iniciado com os valores padrão. Se optar por configurar os parâmetros manualmente, é fundamental respeitar a ordem correta. A sequência dos parâmetros deve seguir exatamente a estrutura esperada pelo indicador, caso contrário, ele poderá funcionar de forma incorreta. Para identificar os parâmetros corretamente, basta adicionar o indicador ao gráfico. O layout da janela de parâmetros pode variar, e o indicador pode apresentar dois formatos diferentes de entrada de dados, dependendo da sua implementação. **Primeiro formato:** ![Type 01](https://sb.botrading.net/llms/_astro/IndParamsType1.kaalg6lV_Z2uiPrF.webp/index.md) **Segundo formato:** ![Type 01](https://sb.botrading.net/llms/_astro/IndParamsType2.r7WxGDL6_Z15rXs3.webp/index.md) #### Ordens dos Parâmetros [Seção intitulada “Ordens dos Parâmetros”](#ordens-dos-parâmetros) Agora que sabemos a ordem correta em que os argumentos devem ser adicionados, é importante observar que o indicador Alligator possui dois parâmetros que utilizam enumerações: um para o método de média móvel (**Moving average method**) e outro para o tipo de preço a ser aplicado (**Applied price**). Os parâmetros devem ser adicionados na ordem correta, conforme mostra a imagem abaixo: ![External Alligator](https://sb.botrading.net/llms/_astro/IndAlligatorExternal.C8Bvd-Ne_ZFpNIU.webp/index.md) ###### Entendendo os Parâmetros: 13, 8, 8, 5, 5, 3, SMOOTHED, MEDIAN | | | | | | | | -> Applied price: [Lista de Preços](https://sb.botrading.net/llms/references/enumerators/#prices/index.md) | | | | | | | ----------> Moving average method: [Lista de Metodos](https://sb.botrading.net/llms/references/enumerators/#methods/index.md) | | | | | | -----------------> Lips shift | | | | | --------------------> Lips period | | | | -----------------------> Teeth shift | | | --------------------------> Teeth period | | -----------------------------> Jaws shift | ---------------------------------> Jaws period #### Parâmetros de Texto [Seção intitulada “Parâmetros de Texto”](#parâmetros-de-texto) Muitos indicadores podem incluir parâmetros do tipo texto, utilizados para armazenar expressões, nomes, descrições ou outras informações. Para facilitar o uso desses parâmetros, foi introduzido o operador `#`. Esse operador é exclusivo para parâmetros de indicadores e atua como um delimitador de sequência, garantindo que todo o conteúdo entre os símbolos `#` seja tratado como texto literal, sem sofrer qualquer tipo de interpretação ou modificação. Veja, por exemplo, a seguinte configuração fictícia: ###### Entendendo os Parâmetros: [01] Nome ou Diretório: | Examples/ExpIndicator.ex5 [02] Parâmetros da Instância: | 0, SYMBOL, CURRENT [03] Parâmetros do Indicador: | 22, 0, #CLOE[0] > OPEN[0, M5]#, SMOOTHED, MEDIAN [04] Carregamento forçado: | false Observe que o parâmetro `#CLOE[0] > OPEN[0, M5]#` utiliza o operador `#`. Nesse caso, todo o conteúdo entre os símbolos `#` é interpretado como texto literal, sem qualquer tipo de modificação ou interpretação adicional. ### Set por Arquivo [Seção intitulada “Set por Arquivo”](#set-por-arquivo) O carregamento por arquivo .set pode não ser um processo simples, mas é fundamental para configurar corretamente os parâmetros de alguns indicadores. Embora para a maioria dos indicadores essa etapa não seja necessária, há casos em que eles possuem muitos parâmetros ou configurações complexas, tornando inviável a instalação manual tradicional. Nesses casos, utilizar arquivos .set é a maneira mais eficiente e prática de garantir a configuração adequada. **Antes de começar, é importante entender algumas limitações:** * Alguns indicadores do MetaTrader 5 não permitem que suas configurações sejam salvas. * No MT5, existe um limite máximo de parâmetros que um robô pode carregar. Se o arquivo `.set` contiver mais de 62 parâmetros, o robô carregará apenas os primeiros 62. Caso esse limite seja ultrapassado, uma mensagem de erro será exibida. O indicador ainda será carregado, mas os parâmetros excedentes serão ignorados e pode ocorrer um comportamento diferente do esperado. #### Salvando o Arquivo set [Seção intitulada “Salvando o Arquivo set”](#salvando-o-arquivo-set) 1. Primeiro, escolhemos um indicador, configuramos suas opções e salvamos o arquivo `.set` em um local de nossa preferência no computador. Salve o arquivo com um nome descritivo, por exemplo: ``` my-set-alligator.set ``` 2. Antes de mover o arquivo `.set` para a pasta correta, execute pelo menos uma vez o robô em um ambiente de teste (como o testador de estratégia do MetaTrader). Isso é necessário para que o sistema crie automaticamente as pastas internas do robô, incluindo a pasta onde os sets serão armazenados. 3. Agora que o arquivo está salvo e as pastas do robô foram criadas, vamos mover o arquivo `.set` para o local correto: Existe duas formas diferentes de fazer isso: Localizando a pasta padrão: ``` C:Users{username}AppDataRoamingMetaQuotesTerminalCommonFilesScriptBotSets ``` **Atenção**: Substitua `{username}` pelo nome do seu usuário do Windows. Acessando usando o executador: Windows + R ``` %appdata%MetaQuotesTerminalCommonFilesScriptBotSets ``` ![Windows + R](https://sb.botrading.net/llms/_astro/WinExe.LhVHseN-_Of7H9.webp/index.md) Independendo da forma escolhida, copie o arquivo `.set` para a pasta de sets que foi localizada. 4. Com o arquivo `.set` no lugar certo, agora é hora de carregá-lo dentro do robô. Em vez de preencher os parâmetros manualmente, digite o nome exato do arquivo, incluindo a extensão `.set` nos parâmetros do indicador. Isso fará com que o robô carregue automaticamente todos os parâmetros configurados no arquivo. Exemplo visual: ![Alligator Set](https://sb.botrading.net/llms/_astro/IndAlligatorSet.3XgtdBeY_4JM5L.webp/index.md) 5. Pronto! O indicador já está com os parâmetros devidamente configurados. #### Usando Fragmentos [Seção intitulada “Usando Fragmentos”](#usando-fragmentos) Para utilizar os [Fragmentos](https://sb.botrading.net/llms/architecture/fragments/index.md) em um arquivo .set, é necessário abrir o arquivo .set. Nele, você pode alterar os valores e substituir pelos nomes dos fragmentos. Os arquivos .set salvos pelo Backtest podem apresentar parâmetros com várias barras (` | | `), o que pode parecer confuso. No entanto, tudo que estiver depois das barras são totalmente descartáveis e podem ser removidas sem causar qualquer erro de execução. O exemplo abaixo mostra como utilizar fragmentos em um arquivo .set: ![Alligator Fragment](https://sb.botrading.net/llms/_astro/IndSetSaveBt.CIvCUzO8_Z1hBdPj.webp/index.md) --- # Fragmentos Nesta página, você vai conhecer os fragmentos disponíveis no ScriptBot: para que servem, como funcionam e de que forma podem facilitar suas automatizações. Entenda também como esses recursos aceleram o desenvolvimento de estratégias de forma prática e eficiente. ## O que são fragmentos? [Seção intitulada “O que são fragmentos?”](#o-que-são-fragmentos) Os fragmentos (anteriormente chamados de “variáveis modeláveis”) são blocos de dados usados no ScriptBot para armazenar informações que podem ser aplicadas em qualquer parte da estratégia, como expressões lógicas, filtros, indicadores e eventos. Eles ajudam a organizar melhor a construção das estratégias e facilitam o reaproveitamento de expressões. Além disso, os fragmentos resolvem uma limitação importante: a impossibilidade de realizar otimizações no Backtest do MetaTrader 5, causada pela forma como expressões e indicadores eram carregados. Essa restrição foi superada com a introdução dos fragmentos. Durante a inicialização da estratégia, os fragmentos são automaticamente convertidos em valores fixos, já incorporados à lógica final. Isso melhora o desempenho e impede alterações durante a execução. ### Tipos de fragmentos [Seção intitulada “Tipos de fragmentos”](#tipos-de-fragmentos) Abaixo estão os principais tipos de fragmentos disponíveis: * **INTEGER**: Números inteiros * **DOUBLE**: Números decimais (ponto flutuante) * **STRING**: Textos, expressões ou qualquer outro valor * **TIMEFRAME**: Períodos gráficos (como M1, H1, etc) ![Fragmentos](https://sb.botrading.net/llms/_astro/Fragments.C2ueofqK_Z2tE0fa.webp/index.md) ## Usando fragmentos na expressão lógica [Seção intitulada “Usando fragmentos na expressão lógica”](#usando-fragmentos-na-expressão-lógica) Para utilizar um fragmento é simples, basta utilizar o nome do fragmento na sua expressão lógica, como por exemplo: ``` CLOSE[0] > CLOSE[1] && STR0 ``` Se, por exemplo, o fragmento **STR0** tiver o valor `ALL_PROFIT_OPEN >= 50`, a expressão lógica será automaticamente convertida, durante a inicialização, para: ``` CLOSE[0] > CLOSE[1] && ALL_PROFIT_OPEN >= 50 ``` ## Usando fragmentos nos indicadores [Seção intitulada “Usando fragmentos nos indicadores”](#usando-fragmentos-nos-indicadores) Os fragmentos podem ser utilizados em parâmetros de indicadores, como mostrado na imagem abaixo: ![Fragmentos](https://sb.botrading.net/llms/_astro/Ind0.BE7iiM_r_Z25UCRA.webp/index.md) Podemos observar o uso dos fragmentos **TF0**, **INT0** e **INT1**. Esses fragmentos serão automaticamente convertidos durante a inicialização, o que permite realizar otimizações de estratégias usando o Backtest do MetaTrader 5 ou simplesmente facilitar a manutenção da estratégia. ## Usando fragmentos com parâmetros [Seção intitulada “Usando fragmentos com parâmetros”](#usando-fragmentos-com-parâmetros) A possibilidade de utilizar parâmetros nos fragmentos do tipo STRING os torna ainda mais versáteis, permitindo que atuem como verdadeiras funções de conversão. Isso possibilita modificar o comportamento do fragmento de acordo com os parâmetros fornecidos, tornando as expressões mais flexíveis e dinâmicas. ### Definição do fragmento [Seção intitulada “Definição do fragmento”](#definição-do-fragmento) Vamos definir o fragmento **STR0** com o seguinte valor: `ALL_PROFIT_OPEN >= {0} && {1}`. Os caracteres `{` e `}` delimitam os parâmetros. Dentro das chaves, você deve informar o índice do parâmetro, começando em zero. O índice `{0}` representa o primeiro parâmetro, `{1}` o segundo, e assim por diante. ![Fragmentos](https://sb.botrading.net/llms/_astro/FragmentStrParam.DCb8H8T5_Z1aT05C.webp/index.md) ### Uso sem parâmetros [Seção intitulada “Uso sem parâmetros”](#uso-sem-parâmetros) Abaixo está um exemplo de uso do fragmento sem parâmetros: ``` CLOSE[0] > CLOSE[1] && STR0 ``` O fragmento **STR0** será automaticamente convertido para `CLOSE[0] > CLOSE[1] && ALL_PROFIT_OPEN >= {0} && {1}`, o que causará um erro na compilação da expressão lógica devido à ausência dos parâmetros necessários. Esse erro acontece porque, na definição do fragmento, os parâmetros `{0}` e `{1}` foram declarados como obrigatórios. ### Uso com parâmetros [Seção intitulada “Uso com parâmetros”](#uso-com-parâmetros) Abaixo está um exemplo de uso do fragmento com parâmetros: ``` CLOSE[0] > CLOSE[1] && STR0[50, Print["My age is: ", INT0]] ``` O fragmento **STR0** será convertido para `CLOSE[0] > CLOSE[1] && ALL_PROFIT_OPEN >= 50 && Print["My age is: ", INT0]`. Nenhum erro ocorrerá, pois todos os parâmetros foram fornecidos corretamente. De modo geral, o uso de parâmetros permite criar expressões mais complexas e flexíveis. Além disso, possibilita modificar o comportamento da expressão de forma dinâmica, conforme os valores passados. --- # Filtros Nesta página, você encontrará informações sobre os filtros, para que servem e como eles podem ajudar a melhorar a confiabilidade das estratégias no ScriptBot. ## O que é um filtro? [Seção intitulada “O que é um filtro?”](#o-que-é-um-filtro) Os filtros são um sistema avançado de validação em camadas, baseado em regras lógicas personalizadas e atribuídas com pesos específicos. Cada filtro funciona de forma independente, mas contribui para a decisão final com seu valor de importância. A soma dos pesos define se a operação será confirmada ou rejeitada. Diversos filtros podem ser criados para compras e vendas, cada um com configurações personalizáveis: * Definir como obrigatório ou opcional; * Atribuir um peso personalizado; * Estabelecer condições lógicas baseadas em indicadores ou sinais de mercado; * Escolher diferentes métodos de validação. Os filtros são acionados automaticamente após o [Gatilho de Confirmação](https://sb.botrading.net/llms/architecture/triggers/index.md), iniciando a análise para autorizar ou não a entrada no mercado. ## Para que servem? [Seção intitulada “Para que servem?”](#para-que-servem) Os filtros garantem que entradas de compra ou venda só ocorram quando condições específicas forem atendidas, oferecendo ao usuário um controle mais rigoroso e personalizado sobre suas operações. O sistema funciona com base na soma dos pesos dos filtros validados. Quando esse total atinge (ou supera) o peso mínimo definido, a ordem é autorizada. Caso contrário, a entrada é bloqueada, e a ordem não é enviada ao mercado. Em resumo, os filtros servem para: * Evitar entradas impulsivas ou fora dos critérios definidos; * Apoiar decisões com validações objetivas e consistentes; * Adicionar camadas de verificação que aumentam a segurança da estratégia; * Organizar e simplificar validações complexas, especialmente quando há múltiplas condições envolvidas. ## Configurando os filtros [Seção intitulada “Configurando os filtros”](#configurando-os-filtros) A configuração dos filtros é simples e intuitiva. Abaixo, você pode visualizar uma imagem que ilustra a estrutura dos filtros no sistema: ![Filtros](https://sb.botrading.net/llms/_astro/Filters.ClKtBuxG_1cXuNR.webp/index.md) Cada filtro pode ser configurado de forma personalizada, de acordo com as necessidades do usuário. A estrutura de configuração se divide em duas partes: **Geral** e **Filtro**. ### Geral [Seção intitulada “Geral”](#geral) * **[01] - Peso mínimo de validação**: Define o valor mínimo que a soma dos pesos dos filtros deve atingir para que o sistema autorize a entrada da ordem. ### Filtro [Seção intitulada “Filtro”](#filtro) * **[01] - Tipo**: Define o comportamento do filtro durante a validação. As opções são: * **Desativado**: O filtro é ignorado no processo de validação. * **Obrigatório**: * O filtro é sempre executado e deve ser validado com sucesso para que a ordem seja autorizada. * Este filtro também contribui para a pontuação total quando validado com sucesso. * **Opcional**: * O filtro é executado apenas se a soma total dos pesos ainda não tiver atingido o valor necessário. * Seu resultado contribui para a pontuação, seja validado ou não. * **[02] - Peso de Sucesso**: Valor somado à pontuação total caso o filtro seja validado com sucesso. * **[03] - Peso de Falha**: Valor somado à pontuação caso o filtro não seja validado. Pode ser zero, positivo ou negativo, conforme a estratégia adotada. * **[04 & 05] - Cálculos de Validação**: São expressões condicionais que o sistema executa quando o filtro for chamado. ## Entendendo os filtros [Seção intitulada “Entendendo os filtros”](#entendendo-os-filtros) Os filtros são, essencialmente, validações em camadas. Cada validação tem um peso associado, que influencia a pontuação total da ordem. Se a soma dos pesos dos filtros atingir ou superar o valor do **peso mínimo**, a ordem é autorizada. ### Primeiro exemplo: [Seção intitulada “Primeiro exemplo:”](#primeiro-exemplo) Neste exemplo, os filtros são utilizados de forma complementar. O sistema considera uma entrada válida (compra ou venda) quando a soma dos pesos dos filtros validados atinge um valor mínimo. Exemplo da configuração: ![EX1](https://sb.botrading.net/llms/_astro/FilterEx01.O8HkpqHz_ZzcFLH.webp/index.md) Se ao menos dois filtros forem validados com sucesso (2 × 25 = 50), o sistema considera que o critério mínimo foi atingido e confirma a entrada de compra ou venda. **Cálculos da Validação:** ``` Filtro 01 (complementar): "(25 + 25) >= 50" → verdadeiro → +25Filtro 02 (complementar): "(25 + 25) >= 50" → verdadeiro → +25Filtro 03 (complementar): "50 < 25" → falso → +0 Soma dos pesos: 25 + 25 + 0 = 50 ``` **Resultado:** Como a soma dos pesos dos filtros validados atingiu o mínimo exigido (50), a entrada é confirmada. ### Segundo exemplo: [Seção intitulada “Segundo exemplo:”](#segundo-exemplo) Neste exemplo, são utilizados filtros complementares e obrigatórios. O sistema exige que: 1. A soma dos pesos dos filtros validados atinja o valor mínimo configurado. 2. Todos os filtros obrigatórios também sejam validados com sucesso. Exemplo da configuração: ![EX2](https://sb.botrading.net/llms/_astro/FilterEx02.B2LSah2M_Zbrf5t.webp/index.md) Mesmo que a soma dos filtros complementares atinja o peso mínimo, se algum filtro obrigatório falhar, a entrada não será confirmada. **Cálculos da Validação:** ``` Filtro 01 (complementar): "(25 + 25) >= 50" → verdadeiro → +25Filtro 02 (complementar): "(25 + 25) >= 50" → verdadeiro → +25Filtro 03 (obrigatório): "50 < 25" → falso → +0 Soma dos pesos: 25 + 25 + 0 = 50 ``` **Resultado:** Embora a soma dos filtros validados tenha atingido o mínimo necessário (50), o filtro obrigatório não foi validado, portanto a entrada não é confirmada. ### Terceiro exemplo: [Seção intitulada “Terceiro exemplo:”](#terceiro-exemplo) Neste exemplo, são utilizados filtros complementares e obrigatórios. O sistema exige que: 1. A soma dos pesos dos filtros validados atinja o valor mínimo configurado. 2. Todos os filtros obrigatórios também sejam validados com sucesso. Exemplo da configuração: ![EX3](https://sb.botrading.net/llms/_astro/FilterEx03.Cbwt2YDw_ZBwkwG.webp/index.md) Mesmo que a soma dos filtros complementares atinja o peso mínimo, se algum filtro obrigatório falhar, a entrada não será confirmada. **Cálculos da Validação:** ``` Filtro 01 (obrigatório): "(25 + 25) >= 50" → verdadeiro → +25Filtro 02 (complementar): "(25 + 25) >= 50" → verdadeiro → +25Filtro 03 (complementar): "50 < 25" → falso → +0 Soma dos pesos: 25 + 25 + 0 = 50 ``` **Resultado:** A soma dos filtros validados atingiu o mínimo necessário (50) e o filtro obrigatório foi validado. Portanto, a entrada é confirmada. ### Quarto exemplo: [Seção intitulada “Quarto exemplo:”](#quarto-exemplo) Neste exemplo, são utilizados apenas filtros obrigatórios. Nesse caso, o sistema não depende da soma mínima de pesos, mas sim da validação de todos os filtros obrigatórios. Exemplo da configuração: ![EX4](https://sb.botrading.net/llms/_astro/FilterEx04.DMxdZQWg_yeXab.webp/index.md) Mesmo que os filtros validados acumulem peso suficiente, a entrada não será confirmada se qualquer filtro obrigatório falhar. **Cálculos da Validação:** ``` Filtro 01 (obrigatório): "(25 + 25) >= 50" → verdadeiro → +25Filtro 02 (obrigatório): "(25 + 25) >= 50" → verdadeiro → +25Filtro 03 (obrigatório): "50 < 25" → falso → +0 Soma dos pesos: 25 + 25 + 0 = 50 ``` **Resultado:** Apesar da soma dos pesos atingir 50, o filtro obrigatório “Filtro 03” não foi validado. Como nem todos os filtros obrigatórios foram validados, a entrada não é confirmada. --- # Eventos Nesta página, você encontrará informações sobre os eventos, para que servem e como eles podem ser utilizados em estratégias no ScriptBot. ## O que é um evento? [Seção intitulada “O que é um evento?”](#o-que-é-um-evento) Eventos são ações ou ocorrências que acontecem durante a execução do robô, como a abertura de uma ordem, o encerramento de uma posição ou a validação de um gatilho. Sempre que uma tarefa relevante é realizada, o robô dispara um evento correspondente. Esses eventos podem ser monitorados e utilizados para automatizar as ações do robô em diferentes situações de mercado. Dessa forma, o usuário pode configurar regras e estratégias personalizadas que respondem imediatamente após uma ação ocorrer, sem depender de temporizadores ou atrasos adicionais. Na prática, os eventos tornam o ScriptBot mais inteligente, dinâmico e flexível, permitindo a execução de ações em tempo real a partir de cada ocorrência. Isso proporciona maior controle e aumenta a eficiência das estratégias. ## Configurando os eventos [Seção intitulada “Configurando os eventos”](#configurando-os-eventos) A configuração dos eventos é simples e intuitiva. Abaixo, você pode visualizar uma imagem que ilustra a estrutura dos eventos: ![Eventos](https://sb.botrading.net/llms/_astro/Events.CZnsRHuD_Z1lgdyC.webp/index.md) Cada evento pode ser configurado de forma personalizada, de acordo com as necessidades do usuário. ### Evento [Seção intitulada “Evento”](#evento) * **[01] - Tipo**: Define o tipo do evento que será ouvido. Acesse a [Lista de Eventos](https://sb.botrading.net/llms/references/events/index.md) * **[02 & 03] - Cálculos de Validação**: São expressões condicionais que o sistema executa quando o evento for chamado. * **[04] - Executar em caso de sucesso**: Ações que serão executadas quando o evento for validado. * **[05] - Executar em caso de falha**: Ações que serão executadas quando o evento falhar. ## Exemplo [Seção intitulada “Exemplo”](#exemplo) Neste exemplo, vamos monitorar o evento de início de um novo dia e registrar uma mensagem nas logs indicando se é segunda-feira ou não. Exemplo da configuração: ![Ouvindo o evento OnDay()](https://sb.botrading.net/llms/_astro/EventEx01.Bb5bwB7Z_Z5C7ac.webp/index.md) Sempre que um novo dia começar, o evento `OnDay()` será acionado. O sistema então realizará os cálculos necessários para determinar se o evento foi validado ou não. O fluxo da execução segue a seguinte ordem: O fluxo é resumido nas seguintes etapas: 1. **EVENTO** * Evento: `OnDay()`. * Evento que será monitorado. 2. **CÁLCULOS** * Condição: `DayOfWeek[] == 0`. * Responsável por executar a tentativa da validação. * Se o resultado for **verdadeiro**, o fluxo segue para a etapa **(SUCESSO)**. * Se o resultado for **falso**, o fluxo segue para a etapa **(FALHA)**. 3. **SUCESSO** * Resposta: `Print["Today is Monday"]`. * Executa os cálculos definidos para o cenário de validação bem-sucedida. 4. **FALHA** * Resposta: `Print["Today is not Monday"]`. * Executa os cálculos definidos para o cenário de validação mal-sucedida.