inicio : SUMARIO

14.1 Função BuyAtMarket

14.2 Função BuyLimit

14.3 Função BuyPosition

14.4 Função BuyPositionQty

14.5 Função BuyPrice

14.6 Função BuyStop

14.7 Função BuyToCoverAtMarket

14.8 Função BuyToCoverLimit

14.9 Função BuyToCoverStop

14.10 Função CancelPendingOrders

14.11 Função ClosePosition

14.12 Função DailyResult

14.13 Função HasPendingOrders

14.14 Função HasPosition

14.15 Função IsBought

14.16 Função IsSold

14.17 Função MyPrice

14.18 Função Position

14.19 Função PositionQty

14.20 Função Price

14.21 Função ReversePosition

14.22 Função SellPosition

14.23 Função SellPositionQty

14.24 Função SellPrice

14.25 Função SellShortAtMarket

14.26 Função SellShortLimit

14.27 Função SellShortStop

14.28 Função SellToCoverAtMarket

14.29 Função SellToCoverLimit

14.30 Função SellToCoverStop

14.31 Função SendOrder

14.32 Função OpenResult

14.33 Função XRay

14.34 Função NumberOfPendingOrders

///

15.1 Função BarAnnualization

15.2 Função BarDuration

15.3 Função BarDurationF

15.4 Função BarType

15.5 Função CalcDate

15.6 Função CalcTime

15.7 Função CloseD

15.8 Função CloseM

15.9 Função CloseW

15.10 Função CloseY

15.11 Função CurrentAssetDate

15.12 Função CurrentDate

15.13 Função CurrentTime

15.14 Função Date

15.15 Função DayOfMonth

15.16 Função DayOfWeek

15.17 Função DaysToExpiration

15.18 Função ELDate

15.19 Função ELDate_Consol

15.20 Função FindBar

15.21 Função Friday

15.22 Função HighD

15.23 Função HighM

15.24 Função HighW

15.25 Função HighY

15.26 Função LastCalcDate

15.27 Função LastCalcTime

15.28 Função LastDayOfMonth

15.29 Função LowD

15.30 Função LowM

15.31 Função LowW

15.32 Função LowY

15.33 Função Month

15.34 Função MonthName

15.35 Função NextBarDown

15.36 Função NextBarUp

15.37 Função OpenD

15.38 Função OpenM

15.39 Função OpenW

15.40 Função OpenY

15.41 Função OpenTime

15.42 Função Time

15.43 Função TimeFrame

15.44 Função TradeDate

15.45 Função TradeDay

15.46 Função VolumeD

15.47 Função VolumeM

15.48 Função VolumeW

15.49 Função VolumeY

15.50 Função Week

15.51 Função Year

15.52 Função SessionType

15.53 Função TradeTime

15.54 Função TradeDateHour

15.55 Função LastTradeDate

15.56 Função Yesterday

///

16.1 Função C_3WhSolds_3BlkCrows

16.2 Função C_ClosingMarubozu

16.3 Função C_Doji

16.4 Função C_Engulfing

16.5 Função C_Hammer

16.6 Função C_InvertedHammer

16.7 Função C_Marubozu

16.8 Função C_ShootingStar

///

17.1 Função DiMaisDiMenos

17.2 Função LastBar

17.3 Função PaintVar

///

18.1 Função AvgPrice

18.2 Função Close

18.3 Função CloseN

18.4 Função Highest

18.5 Função HighestBars

18.6 Função HighestSince

18.7 Função High

18.8 Função HighN

18.9 Função HighSince

18.10 Função Low

18.11 Função LowN

18.12 Função Lowest

18.13 Função LowestBars

18.14 Função LowestSince

18.15 Função MedPrice

18.16 Função Open

18.17 Função OpenN

18.18 Função OpenSince

18.19 Função Price

18.20 Função PriceN

18.21 Função PriceSince

18.22 Função TrueRange

18.23 Função Volume

18.24 Função VolumeN

18.25 Função VolumeSince

18.26 Função WeightedClose

18.27 Função LastCalc

18.28 Função LastCalcN

18.29 Função LastCalcSince

18.30 Função LastCalcTime

18.31 Função LastCalcTimeN

18.32 Função LastCalcTimeSince

18.33 Função LastCalcDate

18.34 Função LastCalcDateN

18.35 Função LastCalcDateSince

18.36 Função LastCalcDateTime

18.37 Função Volume

///

19.1 Função TWOMVVOLATILITY

19.2 Função ACF

19.3 Função AccumulationDistribution

19.4 Função ADX

19.5 Função ADXR

19.6 Função Alligator

19.7 Função AmazingOscillator

19.8 Função Aroon

19.9 Função AroonOscillator

19.10 Função ATR

19.11 Função AvgTrueRange

19.12 Função AwesomeOscillator

19.13 Função BalanceOfPower

19.14 Função BidAskSpread

19.15 Função BollingerBands

19.16 Função BuySellVolume

19.17 Função Chaikin

19.18 Função ChaikinMoneyFlow

19.19 Função ChaikinVolatility

19.20 Função CMO

19.21 Função CommodityChannelIndex

19.22 Função CoppockCurve

19.23 Função Correlation

19.24 Função DEMA

19.25 Função DetrendedPriceOscillator

19.26 Função DM

19.27 Função DMPlus

19.28 Função DMMinus

19.29 Função DMI

19.30 Função DonchianChannel

19.31 Função DoubleSmoothedStochastic

19.32 Função DTrend

19.33 Função DTOscillator

19.34 Função EMA

19.35 Função ElderRay

19.36 Função Envelopes

19.37 Função ExponentialSmoothing

19.38 Função FisherTransform

19.39 Função ForceIndex

19.40 Função Guppy

19.41 Função HistoricalVolatility

19.42 Função HullMovingAverage

19.43 Função Ichimoku

19.44 Função Inertia

19.45 Função KeltnerChannel

19.46 Função KlingerOscillator

19.47 Função LinearRegression

19.48 Função LinearRegressionAngle

19.49 Função LinearRegressionIntercept

19.50 Função LinearRegressionSlope

19.51 Função LogReturn

19.52 Função MACD

19.53 Função MACDHistogram

19.54 Função MACDSignal

19.55 Função MAMA

19.56 Função MassIndex

19.57 Função MedianPrice

19.58 Função Momentum

19.59 Função MovingAverage

19.60 Função MovingAverageRibbon

19.61 Função NTLIndex

19.62 Função OnBalanceVolume

19.63 Função ParabolicSAR

19.64 Função PearsonCorrelationCoefficient

19.65 Função PivotPoints

19.66 Função PriceOscillator

19.67 Função PriceRateOfChange

19.68 Função PriceVolumeTrend

19.69 Função QQE

19.70 Função RangeAverage

19.71 Função RelativeStrengthIndex

19.72 Função SmoothedMovingAverage

19.73 Função StochasticOscillator

19.74 Função StochasticRSI

19.75 Função TEMA

19.76 Função TRIX

19.77 Função TimeSeriesForecast

19.78 Função UltimateOscillator

19.79 Função VerticalHorizontalFilter

19.80 Função VolumeAccumulation

19.81 Função VolumeRateOfChange

19.82 Função VolumeWeightedMovingAverage

19.83 Função WellesWilderAverage

19.84 Função WilliamsAccumulationDistribution

19.85 Função WilliamsPercentR

19.86 Função WilliamsR

19.87 Função ZigZag

19.88 Função Fisher

19.89 Função AverageDirectionalMovement

19.90 Função AverageDirectionalMovementIndex

19.91 Função ChandeMomentumOscillator

19.92 Função ComparativeRelativeStrength

19.93 Função DetrendedOscillator

19.94 Função DMICurrent

19.95 Função DirectionalMovementIndex

19.96 Função DynamicMomentumIndex

19.97 Função FastStochastic

19.98 Função HilbertTransform

19.99 Função IntradayMomentumIndex

19.100 Função MovingAverageConvergenceDivergence

19.101 Função NormalizedAverageTrueRange

19.102 Função PositiveDirectionalIndicator

19.103 Função PrettyGoodOscillator

19.104 Função QStick

19.105 Função RandomWalkIndex

19.106 Função Ratio

19.107 Função RelativeVigorIndex

19.108 Função SmoothedTrix

19.109 Função StandardDeviation

19.110 Função StochasticMomentumIndex

19.111 Função SwingIndex

19.112 Função TEMA

19.113 Função Trendline

19.114 Função VolatilityRatio

19.115 Função VStop

19.116 Função WildersSmoothing

19.117 Função ZigZagPercent

19.118 Função ZLEMA

19.119 Função AdaptiveMovingAverage

19.120 Função AdaptivePriceChannel

19.121 Função AverageVolume

19.122 Função Beta

19.123 Função Bias

19.124 Função Candlestick

19.125 Função CommodityIndex

19.126 Função CyclePeriod

19.127 Função DetrendedPrice

19.128 Função ElderForceIndex

19.129 Função Envelope

19.130 Função ForecastOscillator

19.131 Função Fractal

19.132 Função HighLowBands

19.133 Função HistoricalHigh

19.134 Função HistoricalLow

19.135 Função InsideBar

19.136 Função KaufmanAdaptiveMovingAverage

19.137 Função LatestClose

19.138 Função LinearRegressionChannel

19.139 Função MarketProfile

19.140 Função MoneyFlowIndex

19.141 Função NegativeDirectionalIndicator

19.142 Função NormalizedVolume

19.143 Função OpenHighLowClose

19.144 Função OutsideBar

19.145 Função Performance

19.146 Função PriceChannel

19.147 Função PriceRelative

19.148 Função PsychologicalLine

19.149 Função QFormula

19.150 Função QRatio

19.151 Função RScore

19.152 Função Range

19.153 Função RateOfChange

19.154 Função Resistance

19.155 Função SmoothedAverage

19.156 Função SmoothedStochastic

19.157 Função Support

19.158 Função SwingHigh

19.159 Função Williams

///

20.1 Função AskPrice

20.2 Função AskPriceN

20.3 Função AskPriceSince

20.4 Função BidPrice

20.5 Função BidPriceN

20.6 Função BidPriceSince

20.7 Função LastTradePrice

20.8 Função LastTradePriceN

20.9 Função LastTradePriceSince

20.10 Função TotalBuyQtd

20.11 Função TotalBuyQtdN

20.12 Função TotalBuyQtdSince

20.13 Função TotalSellQtd

20.14 Função TotalSellQtdN

20.15 Função TotalSellQtdSince

20.16 Função TotalBuySellQtd

///

21.1 Função ABS

21.2 Função ArcCos

21.3 Função ArcSin

21.4 Função ArcTan

21.5 Função Ceiling

21.6 Função Cos

21.7 Função Exp

21.8 Função Floor

21.9 Função Ln

21.10 Função Log10

21.11 Função Max

21.12 Função Min

21.13 Função Power

21.14 Função Round

21.15 Função Sign

21.16 Função Sin

21.17 Função Sqrt

21.18 Função Tan

21.19 Função Trunc

21.20 Função Average

21.21 Função AverageN

21.22 Função AverageSince

21.23 Função Correlation

21.24 Função CorrelationN

21.25 Função CorrelationSince

21.26 Função StdDev

21.27 Função StdDevN

21.28 Função StdDevSince

21.29 Função Sum

21.30 Função SumN

21.31 Função SumSince

21.32 Função Variance

21.33 Função VarianceN

21.34 Função VarianceSince

21.35 Função VolumeROC

21.36 Função VolumeROCN

21.37 Função VolumeROCSince

21.38 Função VolumeWeightedMovingAverage

21.39 Função VolumeWeightedMovingAverageN

21.40 Função VolumeWeightedMovingAverageSince

21.41 Função VolumeWeightedMovingAverageROC

21.42 Função VolumeWeightedMovingAverageROCN

21.43 Função VolumeWeightedMovingAverageROCSince

21.44 Função VolumeROC

///

22.1 Função Delta

22.2 Função Gamma

22.3 Função Rho

22.4 Função Theta

22.5 Função Vanna

22.6 Função Vega

///

23.1 Função Select

///

24.1 Função Cum

24.2 Função CumN

24.3 Função CumSince

24.4 Função CumVolume

24.5 Função CumVolumeN

24.6 Função CumVolumeSince

24.7 Função Cumulative

24.8 Função CumulativeN

24.9 Função CumulativeSince

24.10 Função CumulativeVolume

24.11 Função CumulativeVolumeN

24.12 Função CumulativeVolumeSince

24.13 Função Sum

24.14 Função SumN

24.15 Função SumSince

24.16 Função SumVolume

24.17 Função SumVolumeN

24.18 Função SumVolumeSince

24.19 Função TrueRange

24.20 Função TrueRangeN

24.21 Função TrueRangeSince

///

25.1 Função AssetHasValue

25.2 Função IsDef

25.3 Função FloatToStr

25.4 Função FloatToString

Fim : SUMARIO

//

14.1 Função BuyAtMarket

A função BuyAtMarket() tem como funcionalidade realizar uma ordem de compra a mercado.

Se o parâmetro de quantidade não for especificado, a ordem usará o valor definido no campo ”Quantidade” da aba

de Execução do editor de estratégias, com o mínimo sendo 1 lote.

Na automação, será considerada a quantidade configurada no campo ”Quantidade por Ordem”. Quando o parâmetro

de quantidade for especificado, ele irá sobrepor o valor padrão.

Parâmetros: Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem de compra.

Exemplo de uso: No exemplo abaixo, caso a média móvel de 10 períodos cruze a de 20 períodos para cima,

será enviada uma ordem de compra a mercado de 100 unidades.

Var

Media_10 : float;

Media_20 : float;

Begin

Media_10 := MA(Close, 10);

Media_20 := MA(Close, 20);

If Cross(Media_10, Media_20) Then

BuyAtMarket(100); // Ordem de Compra de 100 lotes/unidades

End;

//

14.2 Função BuyLimit

A função BuyLimit() tem como funcionalidade realizar uma ordem de compra com limite (limit order).

Este tipo de ordem é executada apenas quando o preço atinge ou cai abaixo do valor especificado.

Se o parâmetro de preço e quantidade não for especificado, o preço usará o preço do último candle fechado e a quantidade usará o valor definido no campo ”Quantidade” da aba de Execução do editor de estratégias, com o mínimo sendo 1 lote.

Na automação, a quantidade configurada no campo ”Quantidade por Ordem” será considerada. Quando o parâmetro de preço ou quantidade for especificado, ele irá sobrepor o valor padrão.

Parâmetros: Price: Float [Opcional]; Determina o preço limite para a ordem de compra. Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem de compra.

Exemplo de uso: No exemplo abaixo, caso a mínima do candle atual seja menor que a do candle anterior, será enviada uma ordem de compra com limite de 100 unidades no preço da mínima do candle anterior.

1 begin

2 if (Low < Low[1]) then

3 BuyLimit(Low[1], 100); // Ordem de Compra Limitada no preço da mínima do candle anterior

4 end;

//

14.3 Função BuyPosition

A função BuyPosition() tem como funcionalidade realizar uma ordem de compra a mercado no tamanho da posição aberta no ativo atual. Utilizada em estratégias de reversão ou aumento de posição.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se a posição for vendida (IsSold), ela reverterá a posição para o tamanho da posição vendida, resultando em uma posição comprada (BuyPosition).

If IsSold Then

BuyPosition; // Tenta reverter a posição (Buy) no tamanho da posição atual.

//

14.4 Função BuyPositionQty

A função BuyPositionQty() tem como funcionalidade realizar uma ordem de compra a mercado, adicionando a quantidade especificada ao tamanho da posição já aberta.

Parâmetros: Quantity: Float [Opcional]; Determina a quantidade a ser adicionada à ordem de compra.

Exemplo de uso: Adiciona 100 contratos à posição de compra atual se o resultado diário for positivo.

If DailyResult > 0 Then

BuyPositionQty(100); // Adiciona 100 contratos.

//

14.5 Função BuyPrice

A função BuyPrice() retorna o preço médio de compra da posição atualmente aberta. Útil para calcular lucros e stop-loss.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se a posição estiver comprada e o preço atual cair 5% do preço de compra.

If IsBought And Close < BuyPrice * 0.95 Then

ClosePosition; // Fecha a posição para limitar a perda.

//

14.6 Função BuyStop

A função BuyStop() tem como funcionalidade realizar uma ordem de compra com preço de stop (stop order).

Esta ordem é executada apenas quando o preço atinge ou ultrapassa o valor especificado.

Parâmetros: Price: Float [Opcional]; Determina o preço stop para a ordem de compra. Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem.

Exemplo de uso: Envia uma ordem de compra stop 10 pontos acima do preço atual.

If Not HasPosition Then

BuyStop(Close + 10, 100); // Ordem de Compra Stop 10 pontos acima.

//

14.7 Função BuyToCoverAtMarket

A função BuyToCoverAtMarket() tem como funcionalidade realizar uma ordem de compra a mercado para cobrir (encerrar) uma posição vendida (short).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se a posição for vendida e a média móvel curta cruzar a longa para baixo, cobrir a posição.

If IsSold And Cross(MA(Close, 9), MA(Close, 20)) Then

BuyToCoverAtMarket; // Compra a mercado para cobrir a posição.

//

14.8 Função BuyToCoverLimit

A função BuyToCoverLimit() tem como funcionalidade realizar uma ordem de compra com limite (limit order) para cobrir (encerrar) uma posição vendida (short). Executada apenas quando o preço atinge ou cai abaixo do valor especificado.

Parâmetros: Price: Float; Determina o preço limite para a ordem de compra. Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem.

Exemplo de uso: Se a posição for vendida e o preço atual for maior que a média de 20, enviar uma ordem de cobertura limite na média.

If IsSold And Close > MA(Close, 20) Then

BuyToCoverLimit(MA(Close, 20)); // Ordem de Compra Limitada para cobrir a posição.

//

14.9 Função BuyToCoverStop

A função BuyToCoverStop() tem como funcionalidade realizar uma ordem de compra com preço de stop (stop order) para cobrir (encerrar) uma posição vendida (short). Executada apenas quando o preço atinge ou ultrapassa o valor especificado.

Parâmetros: Price: Float; Determina o preço stop para a ordem de compra. Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem.

Exemplo de uso: Se a posição for vendida e o preço cair abaixo do stop de segurança (Low[1]).

If IsSold And Low < Low[1] Then

BuyToCoverStop(Low[1]); // Ordem Stop para cobrir a posição na mínima anterior.

//

14.10 Função CancelPendingOrders

A função CancelPendingOrders() tem como funcionalidade cancelar todas as ordens pendentes (limit e stop) enviadas anteriormente para o ativo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Cancelar todas as ordens pendentes ao fechar o dia de negociação.

If Time = 1700 Then

CancelPendingOrders; // Cancela todas as ordens.

//

14.11 Função ClosePosition

A função ClosePosition() tem como funcionalidade encerrar (zerar) qualquer posição aberta (comprada ou vendida) no ativo atual, executando uma ordem a mercado. É um comando essencial para gestão de risco.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Encerrar a posição se a condição de saída de risco for atingida (perda superior a 2%).

If IsBought And OpenResult < -0.02 Then

ClosePosition; // Fecha a posição para limitar a perda.

//

14.12 Função DailyResult

A função DailyResult() retorna o resultado financeiro (lucro ou prejuízo) da operação do dia no ativo atual. O valor é resetado no início de cada novo dia de negociação.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se o resultado diário for positivo, permitir novas entradas; caso contrário, parar de operar.

If DailyResult > 0 And Time < 1500 Then

BuyAtMarket; // Continuar operando se o dia estiver lucrativo.

//

14.13 Função HasPendingOrders

A função HasPendingOrders() retorna TRUE se houver ordens pendentes (limit, stop) no ativo atual; caso contrário, retorna FALSE.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Evita o envio de novas ordens de entrada se ordens pendentes existirem.

If Not HasPendingOrders Then

BuyLimit(Low - 5);

//

14.14 Função HasPosition

A função HasPosition() retorna TRUE se houver uma posição aberta (comprada ou vendida) no ativo; caso contrário, retorna FALSE.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Entrar em uma operação somente se nenhuma posição estiver aberta.

If Not HasPosition And ConditionIsMet Then

BuyAtMarket; // Compra se não houver posição.

//

14.15 Função IsBought

A função IsBought() retorna TRUE se a posição atual for comprada (long); caso contrário, retorna FALSE.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Executar código específico apenas para posições compradas.

If IsBought Then

SellStop(High[1]);

//

14.16 Função IsSold

A função IsSold() retorna TRUE se a posição atual for vendida (short); caso contrário, retorna FALSE.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Executar código específico apenas para posições vendidas.

If IsSold Then

BuyToCoverStop(Low[1]);

//

14.17 Função MyPrice

A função MyPrice() retorna o preço médio da posição aberta no ativo atual. Sinônimo de PositionPrice.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usar o preço médio para determinar o alvo de take profit.

TakeProfit := MyPrice + 10;

//

14.18 Função Position

A função Position() retorna o tamanho da posição aberta (positivo para compra, negativo para venda e zero se estiver zerado).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usar o valor da posição para escalonamento.

If Position > 0 Then

SellLimit(Close, Position / 2);

//

14.19 Função PositionQty

A função PositionQty() retorna o tamanho (quantidade de contratos/lotes) da posição aberta no momento. O valor retornado é sempre positivo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usar a quantidade da posição para escalonar saídas.

If PositionQty > 100 Then

SellLimit(Close + 5, PositionQty / 2);

//

14.20 Função Price

A função Price() retorna o preço atual do ativo (o último preço do candle fechado). Sinônimo de Close.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência básica de preço.

If Price > High[1] Then

BuyAtMarket;

//

14.21 Função ReversePosition

A função ReversePosition() inverte a posição atual, ou seja, se estiver comprado, vende o dobro; se estiver vendido, compra o dobro.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Reverte a posição se o sinal oposto for forte.

If SellSignalIsStrong Then

ReversePosition;

//

14.22 Função SellPosition

A função SellPosition() realiza uma ordem de venda a mercado no tamanho da posição aberta (usada para zerar ou reverter uma posição comprada).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Reverter de comprado para vendido.

If IsBought Then

SellPosition;

//

14.23 Função SellPositionQty

A função SellPositionQty() realiza uma ordem de venda a mercado, adicionando a quantidade especificada à posição já aberta.

Parâmetros: Quantity: Float [Opcional]; Determina a quantidade a ser adicionada à ordem de venda.

Exemplo de uso: Adicionar 50 contratos à posição de venda atual.

SellPositionQty(50);

//

14.24 Função SellPrice

A função SellPrice() retorna o preço médio de venda da posição atualmente aberta.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para calcular o alvo de lucro em posições vendidas.

Target := SellPrice * 0.98;

//

14.25 Função SellShortAtMarket

A função SellShortAtMarket() tem como funcionalidade realizar uma ordem de venda a mercado para iniciar uma posição vendida (short).

Parâmetros: Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem de venda.

Exemplo de uso: Se houver um sinal de venda, iniciar a posição short.

If SellCondition Then

SellShortAtMarket(100);

//

14.26 Função SellShortLimit

A função SellShortLimit() realiza uma ordem de venda com limite (limit order) para iniciar uma posição vendida.

Parâmetros: Price: Float; Determina o preço limite para a ordem de venda. Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem.

Exemplo de uso: Enviar ordem de venda limite no topo do canal de preços.

SellShortLimit(High[1], 100);

//

14.27 Função SellShortStop

A função SellShortStop() realiza uma ordem de venda com stop (stop order) para iniciar uma posição vendida.

Parâmetros: Price: Float; Determina o preço stop para a ordem de venda. Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem.

Exemplo de uso: Enviar uma ordem de venda stop no rompimento da mínima anterior.

SellShortStop(Low[1], 100);

//

14.28 Função SellToCoverAtMarket

A função SellToCoverAtMarket() realiza uma ordem de compra a mercado para cobrir (encerrar) uma posição vendida (short). Sinônimo de ClosePosition.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Zera a posição short a mercado no final do dia.

If Time = 1750 Then

SellToCoverAtMarket;

//

14.29 Função SellToCoverLimit

A função SellToCoverLimit() realiza uma ordem de compra com limite (limit order) para cobrir uma posição vendida.

Parâmetros: Price: Float; Determina o preço limite para cobrir a posição. Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem.

Exemplo de uso: Enviar ordem limite para cobrir a posição no preço de suporte.

BuyToCoverLimit(SupportPrice);

//

14.30 Função SellToCoverStop

A função SellToCoverStop() realiza uma ordem de compra com stop (stop order) para cobrir uma posição vendida (stop-loss).

Parâmetros: Price: Float; Determina o preço stop para cobrir a posição. Quantity: Float [Opcional]; Determina a quantidade a ser executada na ordem.

Exemplo de uso: Enviar ordem stop para limitar o prejuízo.

BuyToCoverStop(ResistancePrice);

//

14.31 Função SendOrder

A função SendOrder() permite o envio de ordens complexas e personalizadas (limit, stop, market) com parâmetros específicos como preço e validade.

Parâmetros: Tipo: String, Preço: Float, Qtd: Float, Validade: String.

Exemplo de uso: Enviar uma ordem de compra limite com validade específica.

SendOrder('BUY_LIMIT', 10.50, 100, 'DAY');

//

14.32 Função OpenResult

A função OpenResult() retorna o resultado financeiro (lucro ou prejuízo) da posição aberta no momento.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Fechar a posição se o lucro atingir R$ 500.

If OpenResult > 500 Then

ClosePosition;

//

14.33 Função XRay

A função XRay() é uma função de debug/diagnóstico utilizada para inspecionar o estado interno da estratégia ou do ambiente de execução (ex: preço, posição, saldo).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Exibe informações de diagnóstico em tempo real.

XRay;

//

14.34 Função NumberOfPendingOrders

A função NumberOfPendingOrders() retorna o número total de ordens pendentes (limit e stop) enviadas para o ativo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Limita o número de ordens pendentes.

If NumberOfPendingOrders < 2 Then

BuyLimit(Low - 10);

//

15.1 Função BarAnnualization

A função BarAnnualization() retorna um fator que pode ser usado para anualizar cálculos baseados na duração da barra.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para normalizar a volatilidade (StdDev) para um período anual.

AnnualVol := StdDev(Close, 20) * Sqrt(BarAnnualization);

//

15.2 Função BarDuration

A função BarDuration() retorna a duração do intervalo de tempo (timeframe) da barra atual em minutos.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Verificar se o timeframe é de 60 minutos.

If BarDuration = 60 Then

Print("Timeframe Horário");

//

15.3 Função BarDurationF

A função BarDurationF() retorna a duração do intervalo de tempo da barra atual em formato de float. Útil para cálculos precisos.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para cálculos de rate-of-change normalizados.

Rate := (Close - Open) / BarDurationF;

//

15.4 Função BarType

A função BarType() retorna o tipo de periodicidade da barra atual. (Ex: 'T' para tempo, 'R' para Renko, 'P' para Pontos).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Aplicar uma lógica diferente se o gráfico for de Renko.

If BarType = 'R' Then

UseRenkoLogic;

//

15.5 Função CalcDate

A função CalcDate() retorna a data de cálculo mais recente.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usada em funções que dependem da data do último cálculo.

LastCalcDate := CalcDate;

//

15.6 Função CalcTime

A função CalcTime() retorna o horário de cálculo mais recente.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usada em funções que dependem do horário do último cálculo.

LastCalcTime := CalcTime;

//

15.7 Função CloseD

A função CloseD() retorna o preço de fechamento do dia anterior (Daily Close).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência para pivots ou níveis de suporte/resistência.

Pivot := (HighD + LowD + CloseD) / 3;

//

15.8 Função CloseM

A função CloseM() retorna o preço de fechamento do mês anterior (Monthly Close).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para comparar o preço atual com o fechamento do mês passado.

If Close > CloseM Then

Print("Acima do Fechamento Mensal");

//

15.9 Função CloseW

A função CloseW() retorna o preço de fechamento da semana anterior (Weekly Close).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como um filtro de tendência de longo prazo.

If Close > CloseW Then

TrendUp := True;

//

15.10 Função CloseY

A função CloseY() retorna o preço de fechamento do ano anterior (Yearly Close).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como um grande nível de suporte/resistência anual.

If Close < CloseY Then

Alert("Abaixo do Fechamento Anual");

//

15.11 Função CurrentAssetDate

A função CurrentAssetDate() retorna a data do ativo atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em contextos de portfólio para checar a data do ativo específico.

AssetDate := CurrentAssetDate;

//

15.12 Função CurrentDate

A função CurrentDate() retorna a data atual do dia de negociação. Sinônimo de Date.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para funções de time-series.

CurrentDate;

//

15.13 Função CurrentTime

A função CurrentTime() retorna o horário atual do dia de negociação. Sinônimo de Time.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para encerrar operações em horários específicos.

If CurrentTime >= 1700 Then

ClosePosition;

//

15.14 Função Date

A função Date() retorna a data atual do candle.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para checar a data do candle (útil em gráficos não temporais).

If Date <> Date[1] Then

NewDay := True;

//

15.15 Função DayOfMonth

A função DayOfMonth() retorna o dia do mês (1 a 31) da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Executar uma lógica específica no último dia útil do mês.

If DayOfMonth = LastDayOfMonth Then

ProcessEndOfMonth;

//

15.16 Função DayOfWeek

A função DayOfWeek() retorna o dia da semana (1=domingo, 2=segunda... 7=sábado).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Evitar negociações às sextas-feiras.

If DayOfWeek = 6 Then

EndTrading;

//

15.17 Função DaysToExpiration

A função DaysToExpiration() retorna o número de dias restantes até o vencimento do contrato (opção ou futuro).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Fechar a posição se o vencimento estiver próximo.

If DaysToExpiration < 5 Then

ClosePosition;

//

15.18 Função ELDate

A função ELDate() retorna a data da barra usando o formato de data do EasyLanguage.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Compatibilidade com indicadores e estratégias portadas do EasyLanguage.

EasyDate := ELDate;

//

15.19 Função ELDate_Consol

A função ELDate_Consol() retorna a data da barra consolidada usando o formato de data do EasyLanguage.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em análises de períodos de consolidação.

ConsolDate := ELDate_Consol;

//

15.20 Função FindBar

A função FindBar() retorna o índice da barra que corresponde a uma data e/ou hora específica.

Parâmetros: Date: Integer, Time: Integer.

Exemplo de uso: Encontrar o índice da barra inicial para um período de cálculo.

StartBar := FindBar(20251201, 1000);

//

15.21 Função Friday

A função Friday() retorna o preço da barra mais recente de sexta-feira.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Comparar o preço atual com o fechamento da última sexta-feira.

If Close > Friday Then

Bias := 'Positive';

//

15.22 Função HighD

A função HighD() retorna o preço máximo do dia anterior (Daily High).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como nível de resistência imediata.

If Close > HighD Then

Alert("Rompeu Máxima Diária");

//

15.23 Função HighM

A função HighM() retorna o preço máximo do mês anterior (Monthly High).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como resistência de longo prazo.

If Close > HighM Then

LongTermBreakout;

//

15.24 Função HighW

A função HighW() retorna o preço máximo da semana anterior (Weekly High).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como nível de resistência semanal.

If Close > HighW Then

WeeklyBreakout;

//

15.25 Função HighY

A função HighY() retorna o preço máximo do ano anterior (Yearly High).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como resistência histórica.

If Close > HighY Then

AllTimeHighAlert;

//

15.26 Função LastCalcDate

A função LastCalcDate() retorna a data do último cálculo da estratégia.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para controlar a frequência de cálculo.

If CurrentDate > LastCalcDate Then

NewCalculation;

//

15.27 Função LastCalcTime

A função LastCalcTime() retorna o horário do último cálculo da estratégia.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para garantir que a estratégia só seja calculada uma vez por minuto.

If CurrentTime > LastCalcTime + 100 Then

Recalculate;

//

15.28 Função LastDayOfMonth

A função LastDayOfMonth() retorna o último dia do mês para o mês atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para planejar rebalanceamentos de portfólio.

If DayOfMonth = LastDayOfMonth Then

Rebalance;

//

15.29 Função LowD

A função LowD() retorna o preço mínimo do dia anterior (Daily Low).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como nível de suporte imediato.

If Close < LowD Then

Alert("Rompeu Mínima Diária");

//

15.30 Função LowM

A função LowM() retorna o preço mínimo do mês anterior (Monthly Low).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como suporte de longo prazo.

If Close < LowM Then

LongTermBreakdown;

//

15.31 Função LowW

A função LowW() retorna o preço mínimo da semana anterior (Weekly Low).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como nível de suporte semanal.

If Close < LowW Then

WeeklyBreakdown;

//

15.32 Função LowY

A função LowY() retorna o preço mínimo do ano anterior (Yearly Low).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como suporte histórico.

If Close < LowY Then

AllTimeLowAlert;

//

15.33 Função Month

A função Month() retorna o mês (1 a 12) da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Executar uma lógica sazonal (ex: "Efeito Janeiro").

If Month = 1 Then

JanuaryEffect;

//

15.34 Função MonthName

A função MonthName() retorna o nome do mês da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Para exibição de resultados ou logging.

Print("Mês Atual: " + MonthName);

//

15.35 Função NextBarDown

A função NextBarDown() retorna o preço de fechamento da próxima barra de queda (ou a próxima barra se a atual for de queda).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em lógicas de reversão para identificar o próximo ponto de entrada após uma queda.

If Close < Open Then

NextDownPrice := NextBarDown;

//

15.36 Função NextBarUp

A função NextBarUp() retorna o preço de fechamento da próxima barra de alta (ou a próxima barra se a atual for de alta).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em lógicas de continuação para identificar o próximo alvo após uma alta.

If Close > Open Then

NextUpPrice := NextBarUp;

//

15.37 Função OpenD

A função OpenD() retorna o preço de abertura do dia anterior (Daily Open).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para calcular a diferença (gap) entre o fechamento de ontem e a abertura de hoje.

Gap := Open - CloseD;

//

15.38 Função OpenM

A função OpenM() retorna o preço de abertura do mês anterior (Monthly Open).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência para a abertura do mês.

If Close > OpenM Then

MonthUp := True;

//

15.39 Função OpenW

A função OpenW() retorna o preço de abertura da semana anterior (Weekly Open).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência para a abertura da semana.

If Close > OpenW Then

WeekUp := True;

//

15.40 Função OpenY

A função OpenY() retorna o preço de abertura do ano anterior (Yearly Open).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência para a abertura do ano.

If Close > OpenY Then

YearUp := True;

//

15.41 Função OpenTime

A função OpenTime() retorna o horário de abertura da posição atual (para funções de gestão de posição, ver Seção 14) ou o horário de abertura do candle (para funções de barra). Neste contexto, refere-se ao horário de abertura do candle.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para checar o horário de início da barra.

If OpenTime = 900 Then

IsStartBar := True;

//

15.42 Função Time

A função Time() retorna o horário de fechamento da barra atual no formato inteiro (ex: 1700 para 17:00).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Executar uma ação faltando 10 minutos para o fechamento.

If Time = 1750 Then

ClosePosition;

//

15.43 Função TimeFrame

A função TimeFrame() retorna o nome do intervalo de tempo (timeframe) atual em string (ex: "60" para 60 minutos, "D" para Diário).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para validar a estratégia para um timeframe específico.

If TimeFrame = "D" Then

UseDailyLogic;

//

15.44 Função TradeDate

A função TradeDate() retorna a data do último trade realizado.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para controlar o tempo entre trades.

If CurrentDate > TradeDate + 5 Then

AllowNewTrade;

//

15.45 Função TradeDay

A função TradeDay() retorna o número do dia de negociação no período (dias úteis), começando em 1.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Executar uma lógica no 3º dia útil do mês.

If TradeDay = 3 Then

DoThirdDayAction;

//

15.46 Função VolumeD

A função VolumeD() retorna o volume total negociado no dia anterior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Comparar o volume atual com o volume do dia anterior.

If Volume > VolumeD Then

VolumeAcelerado := True;

//

15.47 Função VolumeM

A função VolumeM() retorna o volume total negociado no mês anterior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para análise de volume mensal.

AvgMonthlyVol := Average(VolumeM, 6);

//

15.48 Função VolumeW

A função VolumeW() retorna o volume total negociado na semana anterior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para análise de volume semanal.

AvgWeeklyVol := Average(VolumeW, 4);

//

15.49 Função VolumeY

A função VolumeY() retorna o volume total negociado no ano anterior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para análise de volume anual.

AnnualVolChange := Volume - VolumeY;

//

15.50 Função Week

A função Week() retorna o número da semana no ano (1 a 53) da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em análises sazonais semanais.

If Week = 52 Then

EndOfYearAdjustment;

//

15.51 Função Year

A função Year() retorna o ano da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para controle de backtesting por ano.

If Year = 2025 Then

RunBacktest;

//

15.52 Função SessionType

A função SessionType() retorna o tipo de sessão de negociação (ex: "REGULAR", "AFTER\_MARKET").

Parâmetros: Não requer parâmetros.

Exemplo de uso: Aplicar regras diferentes dependendo do horário de negociação.

If SessionType = "AFTER\_MARKET" Then

CloseAll;

//

15.53 Função TradeTime

A função TradeTime() retorna o horário do último trade realizado.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para medir a latência entre trades.

If CurrentTime - TradeTime > 5 Then

LatencyHigh;

//

15.54 Função TradeDateHour

A função TradeDateHour() retorna a data e hora do último trade realizado, no formato YYYYMMDDHHMM.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para logging preciso de trades.

LogTrade(TradeDateHour);

//

15.55 Função LastTradeDate

A função LastTradeDate() retorna a data do último trade realizado. Sinônimo de TradeDate.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para análise de frequência de trades.

LastTradeDate;

//

15.56 Função Yesterday

A função Yesterday() retorna a data do dia de negociação anterior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para referência de data.

If Date = Yesterday Then

ErrorDate := True;

//

16.1 Função C_3WhSolds_3BlkCrows

A função C_3WhSolds_3BlkCrows() retorna TRUE se o padrão de Candlestick "Três Soldados Brancos" (3 White Soldiers) ou "Três Corvos Negros" (3 Black Crows) for identificado. Estes padrões são fortes indicadores de reversão.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Entrar no mercado se houver uma forte indicação de reversão.

If C_3WhSolds_3BlkCrows Then

BuyAtMarket;

//

16.2 Função C_ClosingMarubozu

A função C_ClosingMarubozu() retorna TRUE se o Candlestick for um Marubozu de Fechamento (também conhecido como "Fechamento Forte"). Este padrão indica que o preço fechou muito perto da máxima (alta) ou da mínima (baixa), sugerindo forte convicção do lado vencedor.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usar como filtro de força para entradas.

If C_ClosingMarubozu And Close > MA(Close, 20) Then

BuyAtMarket;

//

16.3 Função C_Doji

A função C_Doji() retorna TRUE se o Candlestick for um Doji, onde os preços de abertura e fechamento são iguais ou quase iguais, sugerindo indecisão no mercado.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usar como alerta de indecisão, frequentemente visto em topos e fundos.

If C_Doji Then

Alert("Indecisão no Mercado");

//

16.4 Função C_Engulfing

A função C_Engulfing() retorna TRUE se o Candlestick for um padrão de Engolfo (Engulfing), onde o corpo do candle atual envolve o corpo do candle anterior, sinalizando uma forte reversão ou continuação.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Entrar em uma reversão se o Engolfo for de alta.

If C_Engulfing And Close > Open[1] Then

BuyAtMarket;

//

16.5 Função C_Hammer

A função C_Hammer() retorna TRUE se o Candlestick for um Martelo (Hammer), um padrão de reversão de alta tipicamente encontrado em fundos, caracterizado por um corpo pequeno na parte superior e uma longa sombra inferior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Buscar uma entrada de compra após a identificação de um fundo.

If C_Hammer Then

BuyLimit(Low);

//

16.6 Função C_InvertedHammer

A função C_InvertedHammer() retorna TRUE se o Candlestick for um Martelo Invertido (Inverted Hammer), um padrão de reversão de alta, caracterizado por um corpo pequeno na parte inferior e uma longa sombra superior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Confirmar uma possível mudança de tendência.

If C_InvertedHammer Then

LookForConfirmation;

//

16.7 Função C_Marubozu

A função C_Marubozu() retorna TRUE se o Candlestick for um Marubozu (corpo longo sem sombras ou com sombras muito pequenas), indicando pressão de compra ou venda sustentada durante todo o período.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usar como indicador de forte momentum direcional.

If C_Marubozu Then

FollowTrend;

//

16.8 Função C_ShootingStar

A função C_ShootingStar() retorna TRUE se o Candlestick for uma Estrela Cadente (Shooting Star), um padrão de reversão de baixa tipicamente encontrado em topos, caracterizado por um corpo pequeno na parte inferior e uma longa sombra superior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Buscar uma entrada de venda após a identificação de um topo.

If C_ShootingStar Then

SellShortAtMarket;

//

17.1 Função DiMaisDiMenos

A função DiMaisDiMenos() é utilizada em estratégias que dependem da análise do fluxo de ordens (tape reading), retornando o Volume Financeiro Agressor de Compra (DiMais) ou Venda (DiMenos) em um determinado período.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Identificar a pressão predominante do mercado.

If DiMaisDiMenos > 0 Then

Pressao := 'Compradora';

Else If DiMaisDiMenos < 0 Then

Pressao := 'Vendedora';

//

17.2 Função LastBar

A função LastBar() retorna o índice da última barra calculada no gráfico. É útil para controlar loops e assegurar que cálculos baseados em tempo sejam feitos apenas uma vez por barra.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para checar se a estratégia está sendo executada na barra mais recente.

If CurrentBar = LastBar Then

ExecuteFinalLogic;

//

17.3 Função PaintVar

A função PaintVar() é uma função utilitária que permite plotar ou exibir o valor de uma variável ou indicador diretamente no gráfico ou em um painel auxiliar (debug). É essencial para visualização e depuração da estratégia.

Parâmetros: Value: Float; O valor a ser plotado.

Exemplo de uso: Exibir o valor de uma média móvel.

PaintVar(MA(Close, 20)); // Plota a Média Móvel de 20 períodos

//

18.1 Função AvgPrice

A função AvgPrice() retorna o preço médio da barra, calculado como a média entre a Máxima (High) e a Mínima (Low) da barra: $(High + Low) / 2$. Sinônimo de MedPrice.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como um ponto de referência central para a barra.

If Close > AvgPrice Then

PressaoCompradora := True;

//

18.2 Função Close

A função Close() retorna o preço de fechamento da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para verificar a condição de fechamento.

If Close > Close[1] Then

BarraPositiva := True;

//

18.3 Função CloseN

A função CloseN() retorna o preço de fechamento da barra N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores (N=1 é a barra anterior).

Exemplo de uso: Fechamento de 10 barras atrás.

Close10BarsAgo := CloseN(10);

//

18.4 Função Highest

A função Highest() retorna o valor mais alto de uma série de dados (Preço, Volume, Indicador) no número de barras especificado.

Parâmetros: Serie: Float (Série de dados), N: Integer (Número de barras).

Exemplo de uso: Máximo fechamento das últimas 20 barras.

HighestClose20 := Highest(Close, 20);

//

18.5 Função HighestBars

A função HighestBars() retorna o número de barras que se passaram desde que o valor mais alto (Highest) ocorreu na série de dados especificada.

Parâmetros: Serie: Float (Série de dados), N: Integer (Número de barras para busca).

Exemplo de uso: Quantas barras atrás ocorreu o preço máximo dos últimos 50 dias.

BarsSinceHigh50 := HighestBars(High, 50);

//

18.6 Função HighestSince

A função HighestSince() retorna o valor mais alto de uma série de dados desde que uma condição booleana se tornou verdadeira.

Parâmetros: Serie: Float (Série de dados), Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Máximo preço desde o último cruzamento da média móvel.

HighSinceCross := HighestSince(High, Cross(MA(Close, 9), MA(Close, 20)));

//

18.7 Função High

A função High() retorna o preço máximo da barra atual (o topo da barra).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para definir o nível de stop-loss ou breakout.

StopLoss := High + 1;

//

18.8 Função HighN

A função HighN() retorna o preço máximo (High) da barra N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores.

Exemplo de uso: Máxima da barra anterior.

PreviousHigh := HighN(1);

//

18.9 Função HighSince

A função HighSince() retorna o preço máximo da série (High) desde que uma condição booleana se tornou verdadeira.

Parâmetros: Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Máximo preço desde o último sinal de reversão.

HighSinceReversal := HighSince(ReversalSignal);

//

18.10 Função Low

A função Low() retorna o preço mínimo da barra atual (o fundo da barra).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para definir o nível de stop-loss ou suporte.

Support := Low - 1;

//

18.11 Função LowN

A função LowN() retorna o preço mínimo (Low) da barra N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores.

Exemplo de uso: Mínima de 5 barras atrás.

Low5BarsAgo := LowN(5);

//

18.12 Função Lowest

A função Lowest() retorna o valor mais baixo de uma série de dados no número de barras especificado.

Parâmetros: Serie: Float (Série de dados), N: Integer (Número de barras).

Exemplo de uso: Mínima do indicador IFR das últimas 14 barras.

LowestRSI14 := Lowest(RSI(14), 14);

//

18.13 Função LowestBars

A função LowestBars() retorna o número de barras que se passaram desde que o valor mais baixo (Lowest) ocorreu na série de dados especificada.

Parâmetros: Serie: Float (Série de dados), N: Integer (Número de barras para busca).

Exemplo de uso: Quantas barras atrás ocorreu o preço mínimo dos últimos 100 dias.

BarsSinceLow100 := LowestBars(Low, 100);

//

18.14 Função LowestSince

A função LowestSince() retorna o valor mais baixo de uma série de dados desde que uma condição booleana se tornou verdadeira.

Parâmetros: Serie: Float (Série de dados), Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Mínimo preço desde o rompimento do suporte.

LowSinceBreakdown := LowestSince(Low, SupportBreak);

//

18.15 Função MedPrice

A função MedPrice() retorna o preço mediano da barra, calculado como a média entre a Máxima (High) e a Mínima (Low) da barra: $(High + Low) / 2$. Sinônimo de AvgPrice.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para comparação com o preço de fechamento.

If Close > MedPrice Then

TendenciaCurtaAlta := True;

//

18.16 Função Open

A função Open() retorna o preço de abertura da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para calcular o tamanho do corpo do candle.

BodySize := Abs(Close - Open);

//

18.17 Função OpenN

A função OpenN() retorna o preço de abertura (Open) da barra N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores.

Exemplo de uso: Abertura da barra anterior.

PreviousOpen := OpenN(1);

//

18.18 Função OpenSince

A função OpenSince() retorna o preço de abertura da série (Open) desde que uma condição booleana se tornou verdadeira.

Parâmetros: Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Preço de abertura desde o início da tendência.

OpenSinceTrend := OpenSince(TrendStart);

//

18.19 Função Price

A função Price() retorna o preço atual do ativo (o último preço do candle fechado). Sinônimo de Close.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência básica de preço para cálculos.

TargetPrice := Price * 1.01;

//

18.20 Função PriceN

A função PriceN() retorna o preço atual (Price/Close) da barra N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores.

Exemplo de uso: Preço de 2 barras atrás.

Price2BarsAgo := PriceN(2);

//

18.21 Função PriceSince

A função PriceSince() retorna o preço atual (Price/Close) desde que uma condição booleana se tornou verdadeira.

Parâmetros: Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Preço de fechamento desde o sinal de entrada.

CloseSinceEntry := PriceSince(EntrySignal);

//

18.22 Função TrueRange

A função TrueRange() retorna o Range Verdadeiro (True Range - TR) da barra atual. O TR é o maior valor entre:

1. (High - Low)

2. (High - Close[1])

3. (Low - Close[1])

Parâmetros: Não requer parâmetros.

Exemplo de uso: É a base para o cálculo do ATR.

CurrentTrueRange := TrueRange;

//

18.23 Função Volume

A função Volume() retorna o volume total negociado na barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para confirmar a validade de um rompimento.

If Close > High[1] And Volume > Average(Volume, 20) Then

ValidBreakout := True;

//

18.24 Função VolumeN

A função VolumeN() retorna o volume negociado na barra N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores.

Exemplo de uso: Volume de 3 barras atrás.

Volume3BarsAgo := VolumeN(3);

//

18.25 Função VolumeSince

A função VolumeSince() retorna o volume negociado desde que uma condição booleana se tornou verdadeira.

Parâmetros: Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Volume acumulado desde o último toque no suporte.

AccumulatedVolSinceSupport := VolumeSince(TouchSupport);

//

18.26 Função WeightedClose

A função WeightedClose() retorna o Preço de Fechamento Ponderado, calculado como a média ponderada do preço: $(High + Low + 2 * Close) / 4$.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Dá maior peso ao fechamento.

WtdClose := WeightedClose;

//

18.27 Função LastCalc

A função LastCalc() retorna o último valor calculado de uma série, geralmente o preço de fechamento. Sinônimo de Close.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para garantir a referência ao preço mais atual.

If LastCalc > MA(LastCalc, 5) Then

BuyAtMarket;

//

18.28 Função LastCalcN

A função LastCalcN() retorna o último valor calculado (LastCalc/Close) da barra N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores.

Exemplo de uso: Último preço calculado 4 barras atrás.

LastCalc4BarsAgo := LastCalcN(4);

//

18.29 Função LastCalcSince

A função LastCalcSince() retorna o último valor calculado (LastCalc/Close) desde que uma condição booleana se tornou verdadeira.

Parâmetros: Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Último preço desde o início do dia.

CloseSinceOpen := LastCalcSince(DayStart);

//

18.30 Função LastCalcTime

A função LastCalcTime() retorna o horário do último cálculo da estratégia. (Ver Seção 15 para outras funções de tempo).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para logging ou controle de tempo.

LogTime(LastCalcTime);

//

18.31 Função LastCalcTimeN

A função LastCalcTimeN() retorna o horário do último cálculo da estratégia N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores.

Exemplo de uso: Horário do cálculo de 10 barras atrás.

Time10BarsAgo := LastCalcTimeN(10);

//

18.32 Função LastCalcTimeSince

A função LastCalcTimeSince() retorna o horário do último cálculo da estratégia desde que uma condição booleana se tornou verdadeira.

Parâmetros: Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Horário do cálculo desde o último pico de volume.

TimeSinceVolPeak := LastCalcTimeSince(VolumePeak);

//

18.33 Função LastCalcDate

A função LastCalcDate() retorna a data do último cálculo da estratégia. (Ver Seção 15 para outras funções de data).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para controle de backtesting.

CheckDate(LastCalcDate);

//

18.34 Função LastCalcDateN

A função LastCalcDateN() retorna a data do último cálculo da estratégia N barras atrás.

Parâmetros: N: Integer; Número de barras anteriores.

Exemplo de uso: Data do cálculo de 20 barras atrás.

Date20BarsAgo := LastCalcDateN(20);

//

18.35 Função LastCalcDateSince

A função LastCalcDateSince() retorna a data do último cálculo da estratégia desde que uma condição booleana se tornou verdadeira.

Parâmetros: Condition: Boolean (Condição de início da contagem).

Exemplo de uso: Data do cálculo desde o início do mês.

DateSinceMonthStart := LastCalcDateSince(MonthStart);

//

18.36 Função LastCalcDateTime

A função LastCalcDateTime() retorna a data e hora do último cálculo da estratégia, em um formato consolidado.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para auditoria temporal precisa.

AuditDateTime := LastCalcDateTime;

//

18.37 Função Volume

A função Volume() retorna o volume total negociado na barra atual. (Função repetida no sumário, sinônimo de 18.23).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para análise de liquidez.

If Volume < 1000 Then

BaixaLiquidez := True;

//

19.1 Função TWOMVVOLATILITY

A função TWOMVVOLATILITY() calcula a volatilidade usando a diferença percentual entre duas médias móveis. É utilizada para medir a incerteza do mercado ou a intensidade da mudança de preço.

Parâmetros: Period1: Integer (Período da primeira Média Móvel), Period2: Integer (Período da segunda Média Móvel).

Exemplo de uso: Calcular a volatilidade entre uma média de 10 e outra de 50.

Vol := TWOMVVOLATILITY(10, 50);

//

19.2 Função ACF

A função ACF() calcula a Função de Autocorrelação (Autocorrelation Function) de uma série de preços ou indicadores. É usada para determinar se existe um padrão na série que se repete em intervalos de tempo específicos (lags).

Parâmetros: Serie: Float (Série de dados), Lag: Integer (O período para a autocorrelação).

Exemplo de uso: Verificar a autocorrelação do preço de fechamento com 5 barras de atraso.

ACF_5 := ACF(Close, 5);

//

19.3 Função AccumulationDistribution

A função AccumulationDistribution() calcula o indicador de Acumulação/Distribuição, que relaciona a variação de preço da barra com o volume para medir o fluxo de dinheiro que entra ou sai do ativo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se o A/D estiver divergindo do preço, alerta.

If AccumulationDistribution < AccumulationDistribution[1] And Close > Close[1] Then

AlertaDivergencia := True;

//

19.4 Função ADX

A função ADX() calcula o Índice de Movimento Direcional Médio (Average Directional Index). Este indicador mede a força da tendência, e não a sua direção. Valores altos indicam uma tendência forte.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Entrar em um trade apenas se a tendência for forte (ADX > 25).

If ADX(14) > 25 Then

AllowEntry := True;

//

19.5 Função ADXR

A função ADXR() calcula o Índice de Movimento Direcional Médio Ponderado (Average Directional Index Rating). É uma versão suavizada do ADX, calculada como a média entre o ADX atual e o ADX de um período anterior.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado como um filtro de tendência ainda mais suavizado.

If ADXR(14) > 20 Then

ConfirmTrend := True;

//

19.6 Função Alligator

A função Alligator() é um indicador de análise técnica baseado em Chaos Theory, composto por três Linhas de Equilíbrio (Jaw, Teeth, Lips - Médias Móveis suavizadas). Indica a presença ou ausência de tendência e sua direção.

Parâmetros: JawsPeriod: Integer, TeethPeriod: Integer, LipsPeriod: Integer (Períodos das três médias móveis).

Exemplo de uso: Se as linhas estiverem entrelaçadas (dormindo), evitar trades.

If Alligator(13, 8, 5) Then

TradingRange := True;

//

19.7 Função AmazingOscillator

A função AmazingOscillator() calcula o Amazing Oscillator (AO), que é o nome alternativo para o Awesome Oscillator. Ele é a diferença entre uma Média Móvel Simples (SMA) de 5 períodos e uma SMA de 34 períodos, aplicadas ao Preço Médio $((High + Low) / 2)$.

Parâmetros: Não requer parâmetros (usa períodos fixos 5 e 34).

Exemplo de uso: Usado para identificar picos e vales de momentum.

If AmazingOscillator > 0 Then

MomentumCompra := True;

//

19.8 Função Aroon

A função Aroon() retorna o indicador Aroon, que mede a força da tendência e a probabilidade de sua continuação. É composto por duas linhas, Aroon Up e Aroon Down, indicando o tempo desde a última máxima/mínima.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se Aroon Up estiver acima de Aroon Down, tendência de alta.

If Aroon(25) > AroonDown(25) Then

ConfirmacaoAlta := True;

//

19.9 Função AroonOscillator

A função AroonOscillator() retorna o Oscilador Aroon, que é a diferença entre o Aroon Up e o Aroon Down. Ele oscila entre -100 e +100, indicando a força e direção da tendência.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Entrar em compra se o oscilador cruzar acima de zero.

If AroonOscillator(25) > 0 Then

BuyAtMarket;

//

19.10 Função ATR

A função ATR() calcula o Average True Range (ATR). É uma medida de volatilidade baseada no True Range, indicando o intervalo médio de preço de um ativo durante um período. É crucial para dimensionamento de posição e stop-loss.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Definir um stop-loss de 3 vezes o ATR.

StopPrice := Close - 3 * ATR(14);

//

19.11 Função AvgTrueRange

A função AvgTrueRange() calcula o Average True Range (ATR). É um sinônimo da função ATR().

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Medir a volatilidade média das últimas 20 barras.

VolatilidadeMedia := AvgTrueRange(20);

//

19.12 Função AwesomeOscillator

A função AwesomeOscillator() calcula o Awesome Oscillator (AO). Ele mede o momentum do mercado e é a diferença entre uma Média Móvel Simples (SMA) de 5 períodos e uma SMA de 34 períodos, aplicadas ao preço médio.

Parâmetros: Não requer parâmetros (usa períodos fixos 5 e 34).

Exemplo de uso: Identificar divergências entre o AO e o preço para reversões.

If AwesomeOscillator < AwesomeOscillator[1] And Close > Close[1] Then

DivergenciaBaixa := True;

//

19.13 Função BalanceOfPower

A função BalanceOfPower() calcula o Balance of Power (BOP). Este indicador mede a força com que os compradores ou vendedores levaram o preço de uma barra do aberto para o fechado. Ele oscila em torno de zero.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para confirmar a força direcional do mercado.

If BalanceOfPower > 0 Then

BuyAtMarket;

//

19.14 Função BidAskSpread

A função BidAskSpread() retorna a diferença entre o preço de compra (Ask) e o preço de venda (Bid). Este spread é uma medida de liquidez e custo de transação.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Evitar negociar se o spread for muito grande.

If BidAskSpread > MaxSpread Then

StopTrading := True;

//

19.15 Função BollingerBands

A função BollingerBands() retorna o valor de uma das três linhas das Bandas de Bollinger: a Média Móvel Central (Middle Band), a Banda Superior (Upper Band), ou a Banda Inferior (Lower Band).

Parâmetros: Period: Integer (Período da Média Móvel), StdDevFactor: Float (Fator de Desvio Padrão), BandType: Integer (1=Upper, 2=Middle, 3=Lower).

Exemplo de uso: Se o preço fechar acima da banda superior, sinal de sobrecompra.

UpperBand := BollingerBands(20, 2, 1);

If Close > UpperBand Then

SellAtMarket;

//

19.16 Função BuySellVolume

A função BuySellVolume() retorna a diferença líquida entre o Volume de Compra e o Volume de Venda (Venda Agressora) em uma barra, indicando o fluxo de ordem predominante.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Confirma se o rompimento foi acompanhado por volume de compra significativo.

If Close > High[1] And BuySellVolume > 0 Then

BuyAtMarket;

//

19.17 Função Chaikin

A função Chaikin() retorna o Oscilador de Chaikin, que mede o momentum do Volume de Acumulação/Distribuição (A/D). É calculado como a diferença entre uma Média Móvel Exponencial (EMA) rápida e uma lenta do A/D.

Parâmetros: FastPeriod: Integer (Período da EMA Rápida), SlowPeriod: Integer (Período da EMA Lenta).

Exemplo de uso: Se o Oscilador de Chaikin cruzar acima de zero, momentum de acumulação.

If Chaikin(3, 10) > 0 Then

Acumulacao := True;

//

19.18 Função ChaikinMoneyFlow

A função ChaikinMoneyFlow() calcula o Chaikin Money Flow (CMF). Este indicador mede o fluxo de dinheiro acumulado ao longo de um período, relacionando o preço de fechamento de cada barra com seu volume.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o CMF estiver acima de 0.10, forte pressão de compra.

If ChaikinMoneyFlow(20) > 0.10 Then

BuyAtMarket;

//

19.19 Função ChaikinVolatility

A função ChaikinVolatility() calcula a Volatilidade de Chaikin, que mede a diferença entre a máxima e a mínima de um período em relação ao período anterior.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se a volatilidade subir, pode indicar topo ou fundo.

If ChaikinVolatility(10) > ChaikinVolatility(10)[1] Then

AlertaVolatilidade := True;

//

19.20 Função CMO

A função CMO() calcula o Oscilador de Momentum de Chande (Chande Momentum Oscillator). Ele mede o momentum ao comparar a soma das mudanças de preço positivas e negativas ao longo de um período.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o CMO estiver acima de 50, sobrecompra.

If CMO(14) > 50 Then

SellAtMarket;

//

19.21 Função CommodityChannelIndex

A função CommodityChannelIndex() calcula o Índice do Canal de Commodities (CCI). Este oscilador mede a variação de preço de um ativo em relação à sua média estatística. Valores extremos indicam sobrecompra/sobrevenda.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o CCI cair abaixo de -100, sinal de sobrevenda.

If CommodityChannelIndex(20) < -100 Then

BuyAtMarket;

//

19.22 Função CoppockCurve

A função CoppockCurve() calcula a Curva de Coppock, que mede o momentum de longo prazo usando as Taxas de Mudança (Rate of Change) e uma Média Móvel Ponderada (WMA). É tipicamente usada em gráficos semanais ou mensais.

Parâmetros: LongROC: Integer, ShortROC: Integer, WMA_Period: Integer (Períodos de cálculo).

Exemplo de uso: Um cruzamento acima de zero é um sinal de compra de longo prazo.

If CoppockCurve(14, 11, 10) > 0 Then

LongTermBuy := True;

//

19.23 Função Correlation

A função Correlation() calcula a Correlação entre duas séries de dados (preços, indicadores) em um período.

Parâmetros: Serie1: Float, Serie2: Float (Séries de dados), Period: Integer (Período de cálculo).

Exemplo de uso: Calcular a correlação entre o ativo A e o ativo B nas últimas 50 barras.

CorrAB := Correlation(AssetA.Close, AssetB.Close, 50);

//

19.24 Função DEMA

A função DEMA() calcula a Média Móvel Exponencial Dupla (Double Exponential Moving Average). Ela tenta reduzir o atraso (lag) inerente às médias móveis, tornando-a mais responsiva ao preço.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usar DEMA para seguir o preço de forma mais rápida.

If Close > DEMA(20) Then

BuyAtMarket;

//

19.25 Função DetrendedPriceOscillator

A função DetrendedPriceOscillator() calcula o Oscilador de Preço sem Tendência (DPO). Este indicador remove o componente de tendência do preço, permitindo focar nos ciclos de preço de curto prazo.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Identificar picos e vales de ciclo com o DPO.

If DetrendedPriceOscillator(20) > 0 Then

FaseDeAltaCiclica := True;

//

19.26 Função DM

A função DM() retorna o Movimento Direcional (Directional Movement). É a base para o DMI e o ADX, medindo o movimento positivo ($+DM$) ou negativo ($-DM$) em uma barra.

Parâmetros: Type: Integer (1=Positivo (+DM), 2=Negativo (-DM)).

Exemplo de uso: Verificar o movimento direcional positivo.

PosDM := DM(1);

//

19.27 Função DMPlus

A função DMPlus() retorna o Movimento Direcional Positivo (+DM) em um período suavizado.

Parâmetros: Period: Integer (Período de suavização).

Exemplo de uso: Se +DM for maior, a força de alta predomina.

If DMPlus(14) > DMMinus(14) Then

BullishForce := True;

//

19.28 Função DMMinus

A função DMMinus() retorna o Movimento Direcional Negativo (-DM) em um período suavizado.

Parâmetros: Period: Integer (Período de suavização).

Exemplo de uso: Se -DM for maior, a força de baixa predomina.

If DMMinus(14) > DMPlus(14) Then

BearishForce := True;

//

19.29 Função DMI

A função DMI() retorna o Índice de Movimento Direcional (Directional Movement Index), que é o conjunto das linhas +DI e -DI.

Parâmetros: Period: Integer (Período de cálculo), Type: Integer (1=+DI, 2=-DI).

Exemplo de uso: Se +DI cruzar -DI para cima, sinal de compra.

If DMI(14, 1) > DMI(14, 2) Then

BuyAtMarket;

//

19.30 Função DonchianChannel

A função DonchianChannel() calcula o Canal de Donchian, um indicador de volatilidade e tendência que exibe a máxima (Upper Band), mínima (Lower Band) e média (Middle Band) de um período.

Parâmetros: Period: Integer (Período de cálculo), BandType: Integer (1=Upper, 2=Middle, 3=Lower).

Exemplo de uso: Um rompimento do Canal Superior de Donchian é um sinal clássico de entrada.

UpperDonchian := DonchianChannel(20, 1);

If Close > UpperDonchian Then

BuyAtMarket;

//

19.31 Função DoubleSmoothedStochastic

A função DoubleSmoothedStochastic() calcula o Estocástico Duplamente Suavizado, uma variação do Estocástico que aplica duas rodadas de suavização para reduzir o ruído.

Parâmetros: K_Period: Integer, D_Period: Integer (Períodos de cálculo).

Exemplo de uso: Usado para identificar condições de sobrecompra/sobrevenda com menos sinais falsos.

If DoubleSmoothedStochastic(14, 3) < 20 Then

Sobrevenda := True;

//

19.32 Função DTrend

A função DTrend() é um indicador que tenta determinar a direção da tendência de forma dinâmica e com pouco atraso.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se DTrend for positivo, tendência de alta.

If DTrend > 0 Then

BuyAtMarket;

//

19.33 Função DTOscillator

A função DTOscillator() retorna o Detrended Oscillator (DTO). É um oscilador que tenta remover a tendência, permitindo a identificação de ciclos de curto prazo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para detectar exaustão em movimentos de curto prazo.

If DTOscillator < -0.8 Then

ExaustaoVenda := True;

//

19.34 Função EMA

A função EMA() calcula a Média Móvel Exponencial (Exponential Moving Average). Ela dá maior peso aos dados de preço mais recentes, tornando-a mais responsiva que a Média Móvel Simples (SMA).

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usar a EMA de 20 períodos como suporte dinâmico.

If Close > EMA(20) Then

BuyAtMarket;

//

19.35 Função ElderRay

A função ElderRay() retorna os componentes Bull Power ou Bear Power do indicador. Estes componentes medem a força dos compradores e vendedores em relação a uma EMA central.

Parâmetros: Period: Integer (Período da EMA), Type: Integer (1=Bull Power, 2=Bear Power).

Exemplo de uso: Se Bull Power for positivo, compradores no controle.

BullPwr := ElderRay(13, 1);

//

19.36 Função Envelopes

A função Envelopes() retorna as bandas superior e inferior do indicador Envelopes, que são traçadas em torno de uma Média Móvel a uma distância percentual fixa.

Parâmetros: Period: Integer (Período da Média Móvel), Deviation: Float (Desvio percentual), Type: Integer (1=Upper, 2=Lower).

Exemplo de uso: Vender no toque da banda superior.

UpperEnvelope := Envelopes(20, 0.02, 1); // Desvio de 2%

If Close >= UpperEnvelope Then

SellAtMarket;

//

19.37 Função ExponentialSmoothing

A função ExponentialSmoothing() retorna o valor de uma série de dados após ser submetida ao processo de Suavização Exponencial, que reduz o ruído da série. Sinônimo de EMA.

Parâmetros: Period: Integer (Período de suavização).

Exemplo de uso: Suavizar o preço de fechamento.

SmoothClose := ExponentialSmoothing(Close, 10);

//

19.38 Função FisherTransform

A função FisherTransform() aplica a Transformação de Fisher ao preço. Esta função normaliza os preços, criando um oscilador que inverte tendências para picos e vales acentuados, indicando pontos de reversão.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o Fisher cruzar sua linha de sinal, entrada.

If FisherTransform(10) > FisherTransform(10)[1] Then

BuyAtMarket;

//

19.39 Função ForceIndex

A função ForceIndex() calcula o Índice de Força (Force Index), que mede a força dos movimentos de preço combinando preço e volume. É tipicamente suavizado com uma EMA.

Parâmetros: Period: Integer (Período da EMA de suavização).

Exemplo de uso: Um Force Index positivo e crescente indica força de alta.

If ForceIndex(13) > 0 Then

ConfirmacaoAlta := True;

//

19.40 Função Guppy

A função Guppy() calcula as linhas do Guppy Multiple Moving Average (GMMA). Este indicador usa dois grupos de EMAs (curto e longo prazo) para medir o sentimento e a força da tendência.

Parâmetros: Type: Integer (Especifica qual das muitas linhas do Guppy retornar).

Exemplo de uso: Se as médias curtas estiverem acima das longas, tendência de alta.

If Guppy(ShortAverageType) > Guppy(LongAverageType) Then

BuyAtMarket;

//

19.41 Função HistoricalVolatility

A função HistoricalVolatility() calcula a Volatilidade Histórica (HV), geralmente usando o desvio padrão dos retornos logarítmicos em um período.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se a HV for baixa, pode indicar um movimento futuro (contração antes da expansão).

If HistoricalVolatility(20) < 0.01 Then

AlertaBaixaVolatilidade := True;

//

19.42 Função HullMovingAverage

A função HullMovingAverage() calcula a Média Móvel de Hull (HMA). É uma média móvel ultrassuavizada e responsiva que quase elimina o atraso (lag) e é eficaz para seguir tendências.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usar a HMA para determinar a direção do trend de forma rápida.

If Close > HullMovingAverage(16) Then

BuyAtMarket;

//

19.43 Função Ichimoku

A função Ichimoku() calcula as cinco linhas do Ichimoku Kinko Hyo (Gráfico de Equilíbrio com um Relance): Tenkan-Sen, Kijun-Sen, Senkou Span A, Senkou Span B e Chikou Span.

Parâmetros: Type: Integer (1 a 5, para especificar qual linha retornar).

Exemplo de uso: Se o preço estiver acima da Nuvem (Kumo), tendência de alta.

If Close > Ichimoku(SenkouSpanA) And Close > Ichimoku(SenkouSpanB) Then

BuyAtMarket;

//

19.44 Função Inertia

A função Inertia() calcula a Inércia, um indicador que mede a taxa de mudança do momentum. É semelhante a um oscilador de taxa de mudança, mas usa técnicas de suavização.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para identificar se o momentum está acelerando ou desacelerando.

If Inertia(10) > 0 Then

MomentumCrescendo := True;

//

19.45 Função KeltnerChannel

A função KeltnerChannel() calcula as bandas superior, inferior e central do Canal de Keltner. O canal usa o Average True Range (ATR) para definir as distâncias das bandas em relação à Média Móvel Central.

Parâmetros: Period: Integer (Período da Média Móvel), ATR_Factor: Float (Fator multiplicador do ATR), BandType: Integer (1=Upper, 2=Middle, 3=Lower).

Exemplo de uso: Se o preço fechar fora do canal superior, força de tendência.

If Close > KeltnerChannel(20, 1.5, 1) Then

StrongMomentum := True;

//

19.46 Função KlingerOscillator

A função KlingerOscillator() calcula o Oscilador de Volume Klinger (KVO). Este indicador combina preço e volume para medir a pressão de longo prazo do fluxo de dinheiro.

Parâmetros: FastPeriod: Integer, SlowPeriod: Integer, SignalPeriod: Integer (Períodos das médias móveis e sinal).

Exemplo de uso: Um cruzamento acima da linha de sinal é um sinal de compra.

If KlingerOscillator(34, 13, 10) > KlingerOscillator(34, 13, 10)[1] Then

BuyAtMarket;

//

19.47 Função LinearRegression

A função LinearRegression() retorna o valor da Linha de Regressão Linear para o período especificado.

Parâmetros: Serie: Float (Série de dados), Period: Integer (Período de cálculo).

Exemplo de uso: Usado como uma Média Móvel dinâmica que ajusta o preço.

If Close > LinearRegression(Close, 20) Then

BuyAtMarket;

//

19.48 Função LinearRegressionAngle

A função LinearRegressionAngle() retorna o Ângulo da Linha de Regressão Linear. O ângulo é uma medida da inclinação (slope) da linha, indicando a direção e a velocidade da tendência.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o ângulo for positivo e íngreme, forte tendência de alta.

If LinearRegressionAngle(50) > 45 Then

StrongTrend := True;

//

19.49 Função LinearRegressionIntercept

A função LinearRegressionIntercept() retorna o Intercepto (ponto de corte) da Linha de Regressão Linear com o eixo Y.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para calcular o valor futuro da linha.

FutureValue := LinearRegressionSlope(20) * (CurrentBar + 5) + LinearRegressionIntercept(20);

//

19.50 Função LinearRegressionSlope

A função LinearRegressionSlope() retorna a Inclinação (Slope) da Linha de Regressão Linear. É uma medida do momentum ou da taxa de mudança do preço.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o slope for maior que zero, tendência de alta.

If LinearRegressionSlope(10) > 0 Then

BuyAtMarket;

//

19.51 Função LogReturn

A função LogReturn() calcula o Retorno Logarítmico do preço atual em relação ao preço anterior: $LN(Close / Close[1])$.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em cálculos estatísticos de volatilidade e risco.

DailyReturn := LogReturn;

//

19.52 Função MACD

A função MACD() calcula a Média Móvel Convergência Divergência (MACD) LInha MACD. É a diferença entre uma Média Móvel Exponencial (EMA) rápida e uma lenta.

Parâmetros: FastPeriod: Integer, SlowPeriod: Integer (Períodos das EMAs).

Exemplo de uso: Usado em conjunto com a linha de sinal para cruzamentos.

If MACD(12, 26) > MACDSignal(12, 26, 9) Then

BuyAtMarket;

//

19.53 Função MACDHistogram

A função MACDHistogram() calcula o Histrograma MACD, que é a diferença entre a Linha MACD e a Linha de Sinal.

Parâmetros: FastPeriod: Integer, SlowPeriod: Integer, SignalPeriod: Integer (Períodos de cálculo).

Exemplo de uso: Um histograma crescendo indica momentum acelerando.

If MACDHistogram(12, 26, 9) > MACDHistogram(12, 26, 9)[1] Then

MomentumAccelera := True;

//

19.54 Função MACDSignal

A função MACDSignal() calcula a Linha de Sinal MACD, que é uma EMA do próprio MACD (Linha MACD).

Parâmetros: FastPeriod: Integer, SlowPeriod: Integer, SignalPeriod: Integer (Períodos de cálculo).

Exemplo de uso: O principal sinal de negociação é o cruzamento da Linha MACD com a Linha de Sinal.

If Cross(MACD(12, 26), MACDSignal(12, 26, 9)) Then

BuyAtMarket;

//

19.55 Função MAMA

A função MAMA() calcula a Média Móvel Adaptativa (MAMA - MESA Adaptive Moving Average). Esta média móvel adapta seu período de suavização com base na Taxa de Mudança de Fase de Preço.

Parâmetros: FastLimit: Float, SlowLimit: Float (Fatores de suavização).

Exemplo de uso: Usado para obter médias móveis com pouquíssimo atraso (lag).

If Close > MAMA(0.5, 0.05) Then

BuyAtMarket;

//

19.56 Função MassIndex

A função MassIndex() calcula o Índice de Massa, que se baseia na faixa High-Low das barras (True Range). Ele é usado para prever reversões de tendência baseadas na expansão do range.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o Mass Index ultrapassar 27, é um alerta para reversão futura.

If MassIndex(25) > 27 Then

AlertaReversao := True;

//

19.57 Função MedianPrice

A função MedianPrice() retorna o Preço Mediano da barra, calculado como $(High + Low) / 2$. É idêntico a AvgPrice e MedPrice.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como o preço de entrada para alguns indicadores.

Indicator := RSI(MedianPrice, 14);

//

19.58 Função Momentum

A função Momentum() calcula o Momentum como a razão ou diferença entre o preço atual e o preço de N períodos atrás.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Momentum positivo indica que o preço atual é maior que N períodos atrás.

If Momentum(14) > 0 Then

BuyAtMarket;

//

19.59 Função MovingAverage

A função MovingAverage() calcula a Média Móvel (MA) Simples (SMA). É a média aritmética dos preços de fechamento ao longo de um período.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usar a MA de 200 como referência de longo prazo.

If Close > MovingAverage(200) Then

LongTermBullish := True;

//

19.60 Função MovingAverageRibbon

A função MovingAverageRibbon() retorna o valor de uma das médias móveis de uma Fita de Médias Móveis (MA Ribbon). O Ribbon usa várias MAs de diferentes períodos para visualizar a força e a transição da tendência.

Parâmetros: Type: Integer (Especifica qual MA dentro da fita retornar).

Exemplo de uso: Se a Fita estiver se expandindo, tendência forte.

RibbonValue := MovingAverageRibbon(3);

//

19.61 Função NTLIndex

A função NTLIndex() calcula o Non-Trend Line Index (NTL Index). Este indicador é projetado para medir o grau de inércia do mercado, ajudando a identificar se o mercado está em fase de tendência ou de range (lateral).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se NTLIndex for alto, tendência forte; se baixo, mercado lateral.

If NTLIndex > 0.5 Then

TrendConfirmed := True;

//

19.62 Função OnBalanceVolume

A função OnBalanceVolume() calcula o Volume no Saldo (OBV - On Balance Volume). Este indicador acumula o volume total do ativo, adicionando o volume em dias de alta e subtraindo em dias de baixa.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Divergência entre OBV e preço indica um enfraquecimento da tendência.

If OBV < OBV[1] And Close > Close[1] Then

AlertaDivergenciaVenda := True;

//

19.63 Função ParabolicSAR

A função ParabolicSAR() calcula o Parabolic Stop and Reverse (Parabolic SAR). É usado para definir pontos de stop-loss e reverter a posição quando o preço o cruza.

Parâmetros: Step: Float (Fator de Aceleração), MaxStep: Float (Fator Máximo de Aceleração).

Exemplo de uso: Se o preço cruzar o SAR para cima, sinal de compra.

SARValue := ParabolicSAR(0.02, 0.20);

If Close > SARValue Then

BuyAtMarket;

//

19.64 Função PearsonCorrelationCoefficient

A função PearsonCorrelationCoefficient() calcula o Coeficiente de Correlação de Pearson entre duas séries de dados. É um sinônimo da função Correlation().

Parâmetros: Serie1: Float, Serie2: Float (Séries de dados), Period: Integer (Período de cálculo).

Exemplo de uso: Medir a correlação linear entre dois ativos.

CorrelationIndex := PearsonCorrelationCoefficient(AssetX.Close, AssetY.Close, 100);

//

19.65 Função PivotPoints

A função PivotPoints() calcula os níveis de Pontos de Pivô (Pivot Points) e seus respectivos níveis de Suporte e Resistência, com base nos dados High, Low e Close da barra anterior.

Parâmetros: Type: Integer (Especifica qual nível (P, S1, S2, R1, R2, etc.) retornar).

Exemplo de uso: Usar o Pivô como referência central do dia.

Pivot := PivotPoints(PivotLevel);

If Close > Pivot Then

BiasAlta := True;

//

19.66 Função PriceOscillator

A função PriceOscillator() calcula o Oscilador de Preço (Price Oscillator), que é a diferença entre uma Média Móvel (MA) rápida e uma lenta. Sinônimo da Linha MACD se usar EMAs.

Parâmetros: FastPeriod: Integer, SlowPeriod: Integer (Períodos das MAs).

Exemplo de uso: Se o oscilador cruzar acima de zero, sinal de compra.

If PriceOscillator(12, 26) > 0 Then

BuyAtMarket;

//

19.67 Função PriceRateOfChange

A função PriceRateOfChange() calcula a Taxa de Mudança do Preço (Price Rate of Change - ROC). É o momentum expresso em porcentagem.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o ROC for positivo, momentum de alta.

If PriceRateOfChange(10) > 0 Then

MomentumAlta := True;

//

19.68 Função PriceVolumeTrend

A função PriceVolumeTrend() calcula o Preço Volume Tendência (PVT). Este indicador é semelhante ao OBV, mas soma apenas uma fração do volume, baseada na variação percentual do preço.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para confirmar a força da tendência pelo volume.

If PriceVolumeTrend > PriceVolumeTrend[1] Then

VolumeConfirmandoAlta := True;

//

19.69 Função QQE

A função QQE() calcula o Estimador de Qualidade Quantitativa (Quantitative Qualitative Estimator). É um oscilador baseado em RSI com técnicas avançadas de suavização para reduzir o ruído.

Parâmetros: RSI_Period: Integer, SmoothFactor: Float (Período do RSI e fator de suavização).

Exemplo de uso: Um cruzamento acima da linha de sinal do QQE é um sinal de compra.

If QQE(14, 4.236) > QQE(14, 4.236)[1] Then

BuyAtMarket;

//

19.70 Função RangeAverage

A função RangeAverage() calcula a Média do Range (a média da diferença entre High e Low) ao longo de um período.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para normalizar indicadores ou calcular o range médio de negociação.

AvgRange := RangeAverage(20);

//

19.71 Função RelativeStrengthIndex

A função RelativeStrengthIndex() calcula o Índice de Força Relativa (RSI). Este oscilador mede a velocidade e a magnitude das mudanças de preço, indicando sobrecompra (acima de 70) e sobrevenda (abaixo de 30).

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o RSI cair abaixo de 30, sinal de sobrecompra.

If RelativeStrengthIndex(14) < 30 Then

BuyAtMarket;

//

19.72 Função SmoothedMovingAverage

A função SmoothedMovingAverage() calcula a Média Móvel Suavizada (SMMA), que dá peso a todos os dados disponíveis e se move mais lentamente que uma EMA.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para tendências de longo prazo ou como base para outros indicadores (como o RSI).

SMMA20 := SmoothedMovingAverage(20);

//

19.73 Função StochasticOscillator

A função StochasticOscillator() calcula o Oscilador Estocástico. Ele mede o nível de fechamento de um preço em relação à sua faixa de High/Low durante um período.

Parâmetros: K_Period: Integer, D_Period: Integer (Períodos de cálculo).

Exemplo de uso: Se a linha %K cruzar a linha %D acima da zona de 80, sinal de venda.

If StochasticOscillator(14, 3) > 80 Then

SellAtMarket;

//

19.74 Função StochasticRSI

A função StochasticRSI() calcula o Estocástico do RSI. Ele aplica a fórmula do Estocástico ao valor do RSI, aumentando a sensibilidade para encontrar condições de sobrecompra/sobrevenda em movimentos de curto prazo.

Parâmetros: Period: Integer (Período do RSI e do Estocástico).

Exemplo de uso: Mais sensível que o RSI tradicional.

If StochasticRSI(14) < 20 Then

BuyAtMarket;

//

19.75 Função TEMA

A função TEMA() calcula a Média Móvel Exponencial Tripla (Triple Exponential Moving Average). Ela usa múltiplas suavizações para reduzir o atraso (lag) quase totalmente.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado como uma linha de tendência muito rápida.

If Close > TEMA(20) Then

BuyAtMarket;

//

19.76 Função TRIX

A função TRIX() calcula o Triple Exponential Average Oscillator (TRIX). É a taxa de mudança percentual de uma EMA suavizada três vezes.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para identificar cruzamentos acima de zero para sinalizar tendência.

If TRIX(15) > 0 Then

BuyAtMarket;

//

19.77 Função TimeSeriesForecast

A função TimeSeriesForecast() retorna a Previsão de Série Temporal (TSF). É uma projeção do valor futuro baseada na Regressão Linear.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para projetar o preço das próximas barras.

ForecastPrice := TimeSeriesForecast(14);

//

19.78 Função UltimateOscillator

A função UltimateOscillator() calcula o Oscilador Definitivo (Ultimate Oscillator). Este oscilador combina três diferentes períodos de tempo (curto, médio, longo) para evitar o problema de ajuste excessivo.

Parâmetros: ShortPeriod: Integer, MidPeriod: Integer, LongPeriod: Integer (Períodos de cálculo).

Exemplo de uso: Uma divergência de alta no UO é um forte sinal de compra.

If UltimateOscillator(7, 14, 28) < 30 Then

Sobrevenda := True;

//

19.79 Função VerticalHorizontalFilter

A função VerticalHorizontalFilter() calcula o Filtro Vertical Horizontal (VHF). Este indicador mede o grau de tendência (vertical) ou de range (horizontal) do mercado.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o VHF for baixo, evitar estratégias de tendência.

If VerticalHorizontalFilter(28) < 0.2 Then

RangeMarket := True;

//

19.80 Função VolumeAccumulation

A função VolumeAccumulation() calcula o Acúmulo de Volume. É um indicador que mede a pressão de compra/venda pelo volume e a posição do fechamento dentro do range.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para confirmar a acumulação de posições.

If VolumeAccumulation > VolumeAccumulation[1] Then

AcumulacaoCrescendo := True;

//

19.81 Função VolumeRateOfChange

A função VolumeRateOfChange() calcula a Taxa de Mudança do Volume (Volume ROC). Mede o quão rápido o volume está mudando em relação ao volume de N períodos atrás.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Picos no Volume ROC alertam para alta atividade.

If VolumeRateOfChange(10) > 100 Then

AlertaPicoVolume := True;

//

19.82 Função VolumeWeightedMovingAverage

A função VolumeWeightedMovingAverage() calcula a Média Móvel Ponderada por Volume (VWMA). Ela dá mais peso às barras com maior volume.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usar a VWMA como uma média móvel mais relevante ao volume.

If Close > VolumeWeightedMovingAverage(20) Then

BuyAtMarket;

//

19.83 Função WellesWilderAverage

A função WellesWilderAverage() calcula a Média de Welles Wilder. É uma média suavizada usada como componente principal no cálculo do RSI e do ATR.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado como base para indicadores de volatilidade.

WilderAvg := WellesWilderAverage(14);

//

19.84 Função WilliamsAccumulationDistribution

A função WilliamsAccumulationDistribution() calcula a Acumulação/Distribuição de Williams (WAD). É um indicador de volume que não está diretamente relacionado ao OBV, mas também mede o fluxo de dinheiro.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para identificar divergências de acumulação.

If WilliamsAccumulationDistribution < WilliamsAccumulationDistribution[1] Then

VendaPredominante := True;

//

19.85 Função WilliamsPercentR

A função WilliamsPercentR() calcula o Williams %R. É um oscilador de momentum que mede o nível de fechamento em relação à faixa High-Low durante um período. É o inverso do Estocástico.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o %R estiver abaixo de -80, sobrecompra (na escala de 0 a -100).

If WilliamsPercentR(14) < -80 Then

SellAtMarket;

//

19.86 Função WilliamsR

A função WilliamsR() calcula o Williams %R. Sinônimo de WilliamsPercentR().

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para identificar reversões de curto prazo.

If WilliamsR(5) > -20 Then

SobrecompraCurta := True;

//

19.87 Função ZigZag

A função ZigZag() identifica as principais reversões de preço e conecta os pontos, filtrando o ruído.

Parâmetros: Deviation: Float (Desvio percentual para reversão).

Exemplo de uso: Usado para identificar topos e fundos significativos.

If ZigZag(3.0) Then

TopOrBottom := True;

//

19.88 Função Fisher

A função Fisher() aplica a Transformação de Fisher ao preço. Sinônimo de FisherTransform().

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para normalizar o preço.

If Fisher(9) > 0 Then

BuyAtMarket;

//

19.89 Função AverageDirectionalMovement

A função AverageDirectionalMovement() calcula o Movimento Direcional Médio (ADM). É um componente do ADX e DMI.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado como base para o cálculo de outros indicadores de tendência.

ADMValue := AverageDirectionalMovement(14);

//

19.90 Função AverageDirectionalMovementIndex

A função AverageDirectionalMovementIndex() calcula o Índice de Movimento Direcional Médio (ADX). Sinônimo de ADX().

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Mede a força da tendência.

If AverageDirectionalMovementIndex(14) > 25 Then

TrendForte := True;

//

19.91 Função ChandeMomentumOscillator

A função ChandeMomentumOscillator() calcula o Oscilador de Momentum de Chande (CMO). Sinônimo de CMO().

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para medir o momentum relativo.

If ChandeMomentumOscillator(20) < 0 Then

MomentumBaixa := True;

//

19.92 Função ComparativeRelativeStrength

A função ComparativeRelativeStrength() calcula a Força Relativa Comparativa. Mede o desempenho de um ativo em relação a um índice de referência ou outro ativo.

Parâmetros: ReferenceAsset: String (Símbolo do ativo de referência).

Exemplo de uso: Se a Força Relativa for crescente, o ativo está superando o índice.

If ComparativeRelativeStrength('^IBOV') > ComparativeRelativeStrength('^IBOV')[1] Then

Outperform := True;

//

19.93 Função DetrendedOscillator

A função DetrendedOscillator() retorna o Oscilador sem Tendência (DTO). Sinônimo de DTOscillator().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para identificar ciclos.

If DetrendedOscillator > 0 Then

CicloDeAlta := True;

//

19.94 Função DMICurrent

A função DMICurrent() retorna o Índice de Movimento Direcional (DMI) para a barra atual.

Parâmetros: Period: Integer (Período de cálculo), Type: Integer (1=+DI, 2=-DI).

Exemplo de uso: Usado para entrada em tendências.

If DMICurrent(14, 1) > DMICurrent(14, 2) Then

BuyAtMarket;

//

19.95 Função DirectionalMovementIndex

A função DirectionalMovementIndex() calcula o Índice de Movimento Direcional (DMI), retornando +DI, -DI ou o ADX.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para avaliar a direção e a força da tendência.

DMI_Plus := DirectionalMovementIndex(14);

//

19.96 Função DynamicMomentumIndex

A função DynamicMomentumIndex() calcula o Índice de Momentum Dinâmico (DMI). É uma variação do RSI, mas com período de cálculo adaptativo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Oscilador responsivo para identificar sobrecompra/sobrevenda.

If DynamicMomentumIndex < 30 Then

BuyAtMarket;

//

19.97 Função FastStochastic

A função FastStochastic() retorna o Estocástico Rápido. É o componente %K do Estocástico.

Parâmetros: K_Period: Integer (Período de cálculo).

Exemplo de uso: Usado para identificar cruzamentos.

If FastStochastic(14) > 80 Then

SellAtMarket;

//

19.98 Função HilbertTransform

A função HilbertTransform() calcula a Transformada de Hilbert, que é usada para identificar o ciclo dominante do mercado e sua Taxa de Mudança de Fase.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em indicadores avançados de ciclo.

If HilbertTransform > 0 Then

FaseDeAltaCiclica := True;

//

19.99 Função IntradayMomentumIndex

A função IntradayMomentumIndex() calcula o Índice de Momentum Intradiário (IMI). É semelhante ao RSI, mas usa a abertura do dia como referência de preço em vez do fechamento anterior.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Mede o momentum dentro do dia de negociação.

If IntradayMomentumIndex(14) > 70 Then

SobrecompraIntradiaria := True;

//

19.100 Função MovingAverageConvergenceDivergence

A função MovingAverageConvergenceDivergence() calcula a Média Móvel Convergência Divergência (MACD). Sinônimo de MACD().

Parâmetros: FastPeriod: Integer, SlowPeriod: Integer (Períodos das EMAs).

Exemplo de uso: Usado para medir o momentum.

If MovingAverageConvergenceDivergence(12, 26) > 0 Then

BuyAtMarket;

//

19.101 Função NormalizedAverageTrueRange

A função NormalizedAverageTrueRange() calcula o ATR Normalizado (NATR). É o ATR expresso em porcentagem do preço, permitindo comparações entre ativos diferentes.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Comparar a volatilidade de diferentes ações.

If NormalizedAverageTrueRange(14) > 0.05 Then

AltaVolatilidadeRelativa := True;

//

19.102 Função PositiveDirectionalIndicator

A função PositiveDirectionalIndicator() retorna o Indicador Direcional Positivo (+DI). Sinônimo de DMI(Period, 1).

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Força de alta.

If PositiveDirectionalIndicator(14) > 25 Then

AltaForcaCompra := True;

//

19.103 Função PrettyGoodOscillator

A função PrettyGoodOscillator() calcula o Pretty Good Oscillator (PGO). Ele mede o quão longe o preço atual está de sua média móvel em termos de ATR.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o PGO for alto, preço esticado.

If PrettyGoodOscillator(20) > 3 Then

PrecoEsticado := True;

//

19.104 Função QStick

A função QStick() é um oscilador baseado em volume que é calculado como uma Média Móvel de uma diferença entre o Fechamento e a Abertura.

Parâmetros: Period: Integer (Período da Média Móvel).

Exemplo de uso: Se o QStick for positivo, tendência de alta.

If QStick(14) > 0 Then

BuyAtMarket;

//

19.105 Função RandomWalkIndex

A função RandomWalkIndex() calcula o Índice de Caminhada Aleatória (RWI). Ele tenta determinar se o mercado está em uma tendência forte ou se está se movendo de forma aleatória.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: RWI alto indica tendência.

If RandomWalkIndex(14) > 1 Then

TrendConfirmado := True;

//

19.106 Função Ratio

A função Ratio() calcula a Razão (Ratio) entre duas séries de dados (Serie1 / Serie2).

Parâmetros: Serie1: Float, Serie2: Float (Séries de dados).

Exemplo de uso: Medir a força relativa de um ativo em relação a outro.

If Ratio(Close, AssetB.Close) > Ratio(Close, AssetB.Close)[1] Then

Outperformance := True;

//

19.107 Função RelativeVigorIndex

A função RelativeVigorIndex() calcula o Índice de Vigor Relativo (RVI). É um oscilador que mede a força de uma tendência comparando o fechamento com o range da barra.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se a linha RVI cruzar acima da linha de sinal, compra.

If RelativeVigorIndex(10) > RelativeVigorIndex(10)[1] Then

BuyAtMarket;

//

19.108 Função SmoothedTrix

A função SmoothedTrix() retorna o TRIX após ser submetido a um processo de suavização adicional.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para reduzir ainda mais o ruído do TRIX.

If SmoothedTrix(15) > 0 Then

BuyAtMarket;

//

19.109 Função StandardDeviation

A função StandardDeviation() calcula o Desvio Padrão (StdDev) de uma série de dados, que é uma medida de volatilidade. É a base das Bandas de Bollinger.

Parâmetros: Serie: Float (Série de dados), Period: Integer (Período de cálculo).

Exemplo de uso: Calcular o desvio padrão dos preços de fechamento.

Volatilidade := StandardDeviation(Close, 20);

//

19.110 Função StochasticMomentumIndex

A função StochasticMomentumIndex() calcula o Índice de Momentum Estocástico (SMI). É uma versão mais suave do Estocástico.

Parâmetros: K_Period: Integer, D_Period: Integer (Períodos de cálculo).

Exemplo de uso: Usado para identificar sobrecompra/sobrevenda de forma mais clara.

If StochasticMomentumIndex(10, 3) > 40 Then

Sobrecompra := True;

//

19.111 Função SwingIndex

A função SwingIndex() calcula o Índice de Swing. Ele tenta medir a força do movimento do preço em relação ao movimento anterior.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para identificar a exaustão do swing.

If SwingIndex(5) < SwingIndex(5)[1] Then

ExaustaoSwing := True;

//

19.112 Função TEMA

A função TEMA() calcula a Média Móvel Exponencial Tripla. Sinônimo de TEMA().

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Média móvel de baixo lag.

If Close > TEMA(9) Then

BuyAtMarket;

//

19.113 Função Trendline

A função Trendline() é uma função utilitária que retorna o valor de uma Linha de Tendência traçada entre dois pontos.

Parâmetros: X1: Integer, Y1: Float, X2: Integer, Y2: Float (Coordenadas da linha).

Exemplo de uso: Projetar o valor da linha de tendência no ponto atual.

TrendValue := Trendline(Bar[10], Close[10], CurrentBar, Close);

//

19.114 Função VolatilityRatio

A função VolatilityRatio() calcula a Razão de Volatilidade. Mede a volatilidade atual em relação à volatilidade passada.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se a razão for alta, a volatilidade está aumentando.

If VolatilityRatio(20) > 1.5 Then

AlertaAumentoVol := True;

//

19.115 Função VStop

A função VStop() calcula o Vortex Stop, um indicador de trailing stop que usa o Vortex Indicator para definir a distância do stop.

Parâmetros: Period: Integer (Período do Vortex Indicator).

Exemplo de uso: Usado como um stop móvel sensível.

If Close < VStop(14) Then

ClosePosition;

//

19.116 Função WildersSmoothing

A função WildersSmoothing() calcula a Suavização de Wilder. É um método de suavização que dá peso igual aos dados históricos, usado no cálculo do ATR e RSI. Sinônimo de WellesWilderAverage.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Base para indicadores de força relativa.

WilderSmooth := WildersSmoothing(14);

//

19.117 Função ZigZagPercent

A função ZigZagPercent() calcula o ZigZag baseado em um percentual de desvio. Sinônimo de ZigZag().

Parâmetros: Deviation: Float (Desvio percentual para reversão).

Exemplo de uso: Identificar grandes swings de preço.

If ZigZagPercent(5.0) Then

BigSwing := True;

//

19.118 Função ZLEMA

A função ZLEMA() calcula a Média Móvel Exponencial de Zero Lag (Zero Lag Exponential Moving Average). Ela tenta eliminar o atraso da EMA tradicional.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Média móvel extremamente rápida para entradas.

If Close > ZLEMA(20) Then

BuyAtMarket;

//

19.119 Função AdaptiveMovingAverage

A função AdaptiveMovingAverage() calcula a Média Móvel Adaptativa (AMA), que ajusta seu período de suavização com base na volatilidade do mercado.

Parâmetros: Period: Integer (Período base).

Exemplo de uso: Usada em mercados com diferentes regimes de volatilidade.

If Close > AdaptiveMovingAverage(10) Then

BuyAtMarket;

//

19.120 Função AdaptivePriceChannel

A função AdaptivePriceChannel() calcula as bandas superior, inferior e central do Canal de Preço Adaptativo. As bandas ajustam sua largura com base na volatilidade, como o ATR.

Parâmetros: Period: Integer (Período de cálculo), Factor: Float (Fator de multiplicação).

Exemplo de uso: Usado para entradas de breakout em canais dinâmicos.

UpperChannel := AdaptivePriceChannel(20, 2.0, UpperBand);

//

19.121 Função AverageVolume

A função AverageVolume() retorna a Média do Volume negociado em um período. Sinônimo de MovingAverage(Volume, Period).

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Comparar o volume atual com a média.

If Volume > AverageVolume(50) Then

AcimaDaMediaVol := True;

//

19.122 Função Beta

A função Beta() calcula o Beta de um ativo em relação a um índice de referência. É uma medida de risco sistêmico e volatilidade relativa.

Parâmetros: ReferenceAsset: String (Símbolo do índice), Period: Integer (Período de cálculo).

Exemplo de uso: Ativos com Beta > 1 são mais voláteis que o mercado.

AssetBeta := Beta('^IBOV', 252);

//

19.123 Função Bias

A função Bias() calcula o Bias (Viés) como a diferença percentual entre o preço atual e uma Média Móvel, indicando o quão "esticado" o preço está.

Parâmetros: Period: Integer (Período da Média Móvel).

Exemplo de uso: Bias alto indica sobrecompra.

If Bias(50) > 0.05 Then

SobrecompraEsticada := True;

//

19.124 Função Candlestick

A função Candlestick() retorna o valor de um componente do Candlestick (ex: corpo real, sombra superior, sombra inferior).

Parâmetros: Type: Integer (1=Corpo Real, 2=Sombra Superior, etc.).

Exemplo de uso: Analisar o tamanho da sombra.

UpperShadow := Candlestick(2);

//

19.125 Função CommodityIndex

A função CommodityIndex() calcula um Índice de Commodities específico. (A funcionalidade exata depende da plataforma, mas geralmente é uma média ou cesta).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência para estratégias de commodities.

If CommodityIndex > CommodityIndex[1] Then

CommoditiesAlta := True;

//

19.126 Função CyclePeriod

A função CyclePeriod() retorna a Duração do Ciclo dominante do mercado, geralmente calculada usando a Transformada de Hilbert.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para definir períodos ideais para outros indicadores.

IdealPeriod := CyclePeriod;

//

19.127 Função DetrendedPrice

A função DetrendedPrice() retorna o preço após a remoção do componente de tendência.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para analisar a força dos movimentos de preço de curto prazo.

If DetrendedPrice(20) > 0 Then

ShortTermStrength := True;

//

19.128 Função ElderForceIndex

A função ElderForceIndex() calcula o Índice de Força de Elder. Sinônimo de ForceIndex().

Parâmetros: Period: Integer (Período da EMA de suavização).

Exemplo de uso: Combina preço e volume para medir a força.

If ElderForceIndex(2) > 0 Then

BuyAtMarket;

//

19.129 Função Envelope

A função Envelope() calcula as bandas superior e inferior do indicador Envelopes. Sinônimo de Envelopes().

Parâmetros: Period: Integer, Deviation: Float, Type: Integer.

Exemplo de uso: Usado para identificar limites de negociação.

LowerEnvelope := Envelope(50, 0.05, 2);

//

19.130 Função ForecastOscillator

A função ForecastOscillator() calcula o Oscilador de Previsão. É um oscilador baseado na diferença entre o preço atual e a Previsão de Série Temporal (TSF).

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o oscilador cruzar acima de zero, o preço está superando a previsão.

If ForecastOscillator(14) > 0 Then

BuyAtMarket;

//

19.131 Função Fractal

A função Fractal() identifica os Fractais (topos e fundos) nos gráficos, conforme definido pela Análise de Chaos Theory.

Parâmetros: Type: Integer (1=Fractal de Alta, 2=Fractal de Baixa).

Exemplo de uso: O rompimento de um Fractal de Alta é um sinal de entrada.

If Close > Fractal(1) Then

BuyAtMarket;

//

19.132 Função HighLowBands

A função HighLowBands() calcula as bandas superior, inferior e central das Bandas High-Low, que usam as máximas e mínimas passadas. Sinônimo de DonchianChannel.

Parâmetros: Period: Integer (Período de cálculo), BandType: Integer.

Exemplo de uso: Usado para entradas de rompimento.

UpperBandHL := HighLowBands(20, 1);

//

19.133 Função HistoricalHigh

A função HistoricalHigh() retorna a Máxima Histórica da série de dados no período especificado.

Parâmetros: Serie: Float (Série de dados), Period: Integer (Período de cálculo).

Exemplo de uso: Usado para encontrar o preço mais alto das últimas 100 barras.

Max100Bars := HistoricalHigh(High, 100);

//

19.134 Função HistoricalLow

A função HistoricalLow() retorna a Mínima Histórica da série de dados no período especificado.

Parâmetros: Serie: Float (Série de dados), Period: Integer (Período de cálculo).

Exemplo de uso: Usado para encontrar o preço mais baixo das últimas 100 barras.

Min100Bars := HistoricalLow(Low, 100);

//

19.135 Função InsideBar

A função InsideBar() retorna TRUE se o Candlestick atual for um Inside Bar, onde o High é menor que o High anterior e o Low é maior que o Low anterior, indicando consolidação.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Alerta para um possível rompimento de consolidação.

If InsideBar Then

Consolidacao := True;

//

19.136 Função KaufmanAdaptiveMovingAverage

A função KaufmanAdaptiveMovingAverage() calcula a Média Móvel Adaptativa de Kaufman (KAMA). Esta média móvel adapta sua velocidade de rastreamento com base na Eficiência do Mercado (relação entre ruído e movimento direcional).

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Usado para seguir tendências em mercados ruidosos.

If Close > KaufmanAdaptiveMovingAverage(20) Then

BuyAtMarket;

//

19.137 Função LatestClose

A função LatestClose() retorna o Último Fechamento conhecido da série. Sinônimo de Close.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência de preço.

LatestPrice := LatestClose;

//

19.138 Função LinearRegressionChannel

A função LinearRegressionChannel() retorna as bandas superior, inferior e central do Canal de Regressão Linear.

Parâmetros: Period: Integer (Período de cálculo), Deviation: Float (Desvio Padrão), BandType: Integer (1=Upper, 2=Middle, 3=Lower).

Exemplo de uso: Negociar nos limites do canal.

UpperLRChannel := LinearRegressionChannel(50, 2.0, 1);

//

19.139 Função MarketProfile

A função MarketProfile() é uma função de utilidade que retorna o valor de um nível específico (ex: Valor Area High, Ponto de Controle) do Perfil de Mercado.

Parâmetros: Type: Integer (Especifica o componente do Perfil de Mercado).

Exemplo de uso: Usado para identificar níveis importantes de volume/preço.

PointOfControl := MarketProfile(POC);

//

19.140 Função MoneyFlowIndex

A função MoneyFlowIndex() calcula o Índice de Fluxo de Dinheiro (MFI). É um oscilador baseado em volume semelhante ao RSI, mas que incorpora o volume para medir a força do fluxo de dinheiro.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Se o MFI for superior a 80, sobrecompra.

If MoneyFlowIndex(14) > 80 Then

SellAtMarket;

//

19.141 Função NegativeDirectionalIndicator

A função NegativeDirectionalIndicator() retorna o Indicador Direcional Negativo (-DI). Sinônimo de DMI(Period, 2).

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Força de baixa.

If NegativeDirectionalIndicator(14) > 25 Then

AltaForcaVenda := True;

//

19.142 Função NormalizedVolume

A função NormalizedVolume() retorna o Volume Normalizado, que é o volume da barra atual dividido pelo volume médio, permitindo comparações de volume ao longo do tempo.

Parâmetros: Period: Integer (Período da Média Móvel).

Exemplo de uso: Se o volume atual for 2x a média.

If NormalizedVolume(20) > 2.0 Then

PicoDeVolume := True;

//

19.143 Função OpenHighLowClose

A função OpenHighLowClose() retorna o preço (Open, High, Low ou Close) da barra.

Parâmetros: Type: Integer (1=Open, 2=High, 3=Low, 4=Close).

Exemplo de uso: Acesso genérico aos preços.

PriceHigh := OpenHighLowClose(2);

//

19.144 Função OutsideBar

A função OutsideBar() retorna TRUE se o Candlestick atual for um Outside Bar, onde o High é maior que o High anterior e o Low é menor que o Low anterior, indicando aumento de volatilidade.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Indica potencial reversão ou continuação volátil.

If OutsideBar Then

AlertaVolatil := True;

//

19.145 Função Performance

A função Performance() calcula a Performance de um ativo em relação ao seu preço inicial no período, expressa em porcentagem.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Performance do ativo nas últimas 50 barras.

If Performance(50) > 0.10 Then

Ganho10Porcento := True;

//

19.146 Função PriceChannel

A função PriceChannel() calcula o Canal de Preço, que usa as máximas e mínimas passadas. Sinônimo de DonchianChannel.

Parâmetros: Period: Integer (Período de cálculo), BandType: Integer.

Exemplo de uso: Usado para definir limites de negociação.

LowerPriceChannel := PriceChannel(20, 3);

//

19.147 Função PriceRelative

A função PriceRelative() calcula a Força Relativa do Preço de um ativo em relação a outro. Sinônimo de Ratio.

Parâmetros: ReferenceAsset: String (Símbolo do ativo de referência).

Exemplo de uso: Usado em estratégias de pares.

RelativeStrength := PriceRelative('PETR4');

//

19.148 Função PsychologicalLine

A função PsychologicalLine() calcula a Linha Psicológica, que é a porcentagem de barras de alta em um determinado período, indicando o sentimento geral do mercado.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Acima de 75% indica otimismo excessivo.

If PsychologicalLine(12) > 75 Then

AlertaOtimismo := True;

//

19.149 Função QFormula

A função QFormula() retorna o valor de um indicador de análise de ciclo baseado no conceito de Q-Formula.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em análise de ciclo.

If QFormula > 0 Then

FaseDeAltaCiclica := True;

//

19.150 Função QRatio

A função QRatio() calcula a Razão Q, que mede a diferença entre a máxima e a mínima de um período em relação ao volume.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Alto QRatio indica alta volatilidade por unidade de volume.

If QRatio(10) > 1.0 Then

AltaVolatilidadeRelativaVolume := True;

//

19.151 Função RScore

A função RScore() calcula o R-Score (Coeficiente de Determinação R²), que mede o quão bem a Regressão Linear se ajusta aos dados. É um indicador da força da tendência.

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: R-Score próximo de 1 indica tendência forte.

If RScore(50) > 0.8 Then

TendenciaForteLinear := True;

//

19.152 Função Range

A função Range() retorna o Range (Amplitude) da barra, que é a diferença entre a Máxima (High) e a Mínima (Low): (High - Low).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para medir a volatilidade intradiária.

DailyRange := Range;

//

19.153 Função RateOfChange

A função RateOfChange() calcula a Taxa de Mudança (ROC). Sinônimo de PriceRateOfChange().

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Mede o momentum.

If RateOfChange(14) > 0 Then

BuyAtMarket;

//

19.154 Função Resistance

A função Resistance() retorna o nível de Resistência calculado com base em métodos de Pivô ou Fraqueza Histórica.

Parâmetros: Type: Integer (1=R1, 2=R2, etc.).

Exemplo de uso: Vender no nível de resistência.

If Close >= Resistance(1) Then

SellLimit(Resistance(1));

//

19.155 Função SmoothedAverage

A função SmoothedAverage() calcula a Média Suavizada. Sinônimo de SmoothedMovingAverage().

Parâmetros: Period: Integer (Período de cálculo).

Exemplo de uso: Média de longo prazo.

If Close > SmoothedAverage(50) Then

LongTermBuy := True;

//

19.156 Função SmoothedStochastic

A função SmoothedStochastic() retorna o Estocástico Suavizado (geralmente a linha %D).

Parâmetros: K_Period: Integer, D_Period: Integer (Períodos de cálculo).

Exemplo de uso: Usado para entradas de cruzamento.

If SmoothedStochastic(14, 3) < 20 Then

BuyAtMarket;

//

19.157 Função Support

A função Support() retorna o nível de Suporte calculado com base em métodos de Pivô ou Força Histórica.

Parâmetros: Type: Integer (1=S1, 2=S2, etc.).

Exemplo de uso: Comprar no nível de suporte.

If Close <= Support(1) Then

BuyLimit(Support(1));

//

19.158 Função SwingHigh

A função SwingHigh() retorna o valor do Swing High (máxima significativa) mais recente, tipicamente usado para trailing stops.

Parâmetros: Period: Integer (Período de definição do Swing).

Exemplo de uso: Trailing Stop abaixo do Swing High.

StopLoss := SwingHigh(5);

//

19.159 Função Williams

A função Williams() é uma função genérica para retornar indicadores criados por Bill Williams (ex: Alligator, Awesome Oscillator, Fractals). A funcionalidade exata depende do parâmetro 'Type'.

Parâmetros: Type: Integer (Especifica qual indicador de Williams retornar).

Exemplo de uso: Usado para acessar o Alligator.

AlligatorValue := Williams(AlligatorType);

//

20.1 Função Bid

A função Bid() retorna o melhor preço de compra (Bid) disponível no book de ofertas.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para definir o preço de entrada em uma ordem limitada de compra.

LimitPrice := Bid;

BuyLimit(LimitPrice);

//

20.2 Função BidN

A função BidN() retorna o preço de compra (Bid) no nível N do book de ofertas (Nível 1, Nível 2, etc.).

Parâmetros: N: Integer (Nível do book, começando em 1).

Exemplo de uso: Acessar o preço do 5º nível do book de compra.

BidLevel5 := BidN(5);

//

20.3 Função BidSize

A função BidSize() retorna o volume de compra (tamanho) disponível no melhor preço (Nível 1) do book de ofertas.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se o volume de compra for grande, pode indicar suporte imediato.

If BidSize > 1000 Then

SupportLevel := True;

//

20.4 Função BidSizeN

A função BidSizeN() retorna o volume de compra (tamanho) no nível N do book de ofertas.

Parâmetros: N: Integer (Nível do book, começando em 1).

Exemplo de uso: Acessar o volume do 3º nível do book de compra.

BidVolume3 := BidSizeN(3);

//

20.5 Função TotalBidSize

A função TotalBidSize() retorna o volume total acumulado de compra em todos os níveis do book de ofertas.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Medir a força total da demanda.

TotalDemand := TotalBidSize;

//

20.6 Função Ask

A função Ask() retorna o melhor preço de venda (Ask) disponível no book de ofertas.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para definir o preço de entrada em uma ordem limitada de venda.

LimitPrice := Ask;

SellLimit(LimitPrice);

//

20.7 Função AskN

A função AskN() retorna o preço de venda (Ask) no nível N do book de ofertas (Nível 1, Nível 2, etc.).

Parâmetros: N: Integer (Nível do book, começando em 1).

Exemplo de uso: Acessar o preço do 5º nível do book de venda.

AskLevel5 := AskN(5);

//

20.8 Função AskSize

A função AskSize() retorna o volume de venda (tamanho) disponível no melhor preço (Nível 1) do book de ofertas.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se o volume de venda for grande, pode indicar resistência imediata.

If AskSize > 1000 Then

ResistanceLevel := True;

//

20.9 Função AskSizeN

A função AskSizeN() retorna o volume de venda (tamanho) no nível N do book de ofertas.

Parâmetros: N: Integer (Nível do book, começando em 1).

Exemplo de uso: Acessar o volume do 3º nível do book de venda.

AskVolume3 := AskSizeN(3);

//

20.10 Função TotalAskSize

A função TotalAskSize() retorna o volume total acumulado de venda em todos os níveis do book de ofertas.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Medir a força total da oferta.

TotalSupply := TotalAskSize;

//

20.11 Função BidCount

A função BidCount() retorna o número de ordens de compra no melhor preço (Nível 1).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para avaliar a pulverização das ordens.

If BidCount > 10 Then

ManyBuyers := True;

//

20.12 Função BidCountN

A função BidCountN() retorna o número de ordens de compra no nível N do book de ofertas.

Parâmetros: N: Integer (Nível do book, começando em 1).

Exemplo de uso: Número de ordens no 2º nível de compra.

BidOrders2 := BidCountN(2);

//

20.13 Função AskCount

A função AskCount() retorna o número de ordens de venda no melhor preço (Nível 1).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para avaliar a concentração das ordens de venda.

If AskCount > 10 Then

ManySellers := True;

//

20.14 Função AskCountN

A função AskCountN() retorna o número de ordens de venda no nível N do book de ofertas.

Parâmetros: N: Integer (Nível do book, começando em 1).

Exemplo de uso: Número de ordens no 2º nível de venda.

AskOrders2 := AskCountN(2);

//

20.15 Função Spread

A função Spread() retorna a diferença entre o melhor preço de venda e o melhor preço de compra: Ask - Bid.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para checar a liquidez e o custo de execução.

If Spread > MaxAllowedSpread Then

AvoidTrade := True;

//

20.16 Função TotalBidPrice

A função TotalBidPrice() retorna o preço médio ponderado pelo volume de compra em todos os níveis do book de ofertas.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Referência de preço ponderada pelo lado da compra.

VWAP_Bid := TotalBidPrice;

//

20.17 Função TotalAskPrice

A função TotalAskPrice() retorna o preço médio ponderado pelo volume de venda em todos os níveis do book de ofertas.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Referência de preço ponderada pelo lado da venda.

VWAP_Ask := TotalAskPrice;

//

20.18 Função MarketDepth

A função MarketDepth() retorna a profundidade do mercado (o número de níveis visíveis do book).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para iterar pelos níveis do book.

For N := 1 To MarketDepth Do

ProcessBookLevel(N);

//

20.19 Função TotalBidSizeVisible

A função TotalBidSizeVisible() retorna o volume total acumulado de compra apenas nos níveis visíveis do book.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Medir a demanda visível no mercado.

VisibleDemand := TotalBidSizeVisible;

//

20.20 Função TotalAskSizeVisible

A função TotalAskSizeVisible() retorna o volume total acumulado de venda apenas nos níveis visíveis do book.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Medir a oferta visível no mercado.

VisibleSupply := TotalAskSizeVisible;

//

20.21 Função DeltaVolume

A função DeltaVolume() retorna a diferença entre o Volume Agressor de Compra e o Volume Agressor de Venda (Delta Acumulado) desde o início do período da barra.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se o Delta for positivo, pressão de compra no período.

If DeltaVolume > 0 Then

BuyAtMarket;

//

20.22 Função DeltaVolumeN

A função DeltaVolumeN() retorna o Delta Volume acumulado na barra N barras atrás.

Parâmetros: N: Integer (Número de barras anteriores).

Exemplo de uso: Delta da barra anterior.

PreviousDelta := DeltaVolumeN(1);

//

20.23 Função MaxDelta

A função MaxDelta() retorna o Delta Volume Máximo atingido durante o período da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para identificar o pico de agressão de compra.

If DeltaVolume = MaxDelta Then

MaxAggressionBuy := True;

//

20.24 Função MinDelta

A função MinDelta() retorna o Delta Volume Mínimo (mais negativo) atingido durante o período da barra atual.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para identificar o pico de agressão de venda.

If DeltaVolume = MinDelta Then

MaxAggressionSell := True;

//

20.25 Função Imbalance

A função Imbalance() calcula o Desequilíbrio (Imbalance) do book de ofertas, geralmente comparando o volume Bid no Nível X com o volume Ask no Nível Y.

Parâmetros: NivelBid: Integer, NivelAsk: Integer (Níveis de comparação).

Exemplo de uso: Se o desequilíbrio for forte, entrada no mercado.

If Imbalance(1, 1) > 2.0 Then

StrongImbalance := True;

//

21.1 Função PortfolioCurrentValue

A função PortfolioCurrentValue() retorna o valor total atual do portfólio, somando o valor de todos os ativos e o caixa (cash).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para monitorar o capital total da estratégia.

CurrentCapital := PortfolioCurrentValue;

//

21.2 Função PortfolioTotalProfit

A função PortfolioTotalProfit() retorna o Lucro ou Prejuízo Total (P/L) acumulado do portfólio desde o início da simulação ou operação.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Checar o resultado líquido.

If PortfolioTotalProfit > 0 Then

EstrategiaLucrativa := True;

//

21.3 Função PortfolioTotalReturn

A função PortfolioTotalReturn() retorna o Retorno Total (em porcentagem) acumulado do portfólio.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Avaliar o desempenho percentual.

If PortfolioTotalReturn > 0.10 Then

RetornoAlto := True;

//

21.4 Função AssetAllocation

A função AssetAllocation() retorna a Alocação Percentual de um ativo específico dentro do portfólio.

Parâmetros: AssetSymbol: String (Símbolo do ativo).

Exemplo de uso: Verificar a alocação do ativo 'PETR4'.

If AssetAllocation('PETR4') < 0.20 Then

ComprarMaisPetrobras := True;

//

21.5 Função AssetCurrentValue

A função AssetCurrentValue() retorna o valor de mercado atual de um ativo específico detido no portfólio.

Parâmetros: AssetSymbol: String (Símbolo do ativo).

Exemplo de uso: Monitorar o valor de um ativo.

ValuePETR4 := AssetCurrentValue('PETR4');

//

21.6 Função AssetProfit

A função AssetProfit() retorna o Lucro ou Prejuízo (P/L) de um ativo específico detido no portfólio.

Parâmetros: AssetSymbol: String (Símbolo do ativo).

Exemplo de uso: Se o ativo estiver em prejuízo, considerar o stop.

If AssetProfit('VALE3') < 0 Then

AlertaPrejuizoVale := True;

//

21.7 Função AssetReturn

A função AssetReturn() retorna o Retorno (em porcentagem) de um ativo específico detido no portfólio.

Parâmetros: AssetSymbol: String (Símbolo do ativo).

Exemplo de uso: Comparar o retorno de diferentes ativos.

ReturnAsset := AssetReturn('ITSA4');

//

21.8 Função AssetWeight

A função AssetWeight() retorna o Peso (em porcentagem) de um ativo no portfólio. Sinônimo de AssetAllocation().

Parâmetros: AssetSymbol: String (Símbolo do ativo).

Exemplo de uso: Usado para rebalanceamento.

If AssetWeight('BBAS3') > TargetWeight Then

VenderBB := True;

//

21.9 Função TotalAssets

A função TotalAssets() retorna o número total de ativos diferentes (não a quantidade de contratos) que estão sendo rastreados ou mantidos no portfólio.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para controlar a diversificação.

If TotalAssets < 10 Then

BuscarMaisAtivos := True;

//

21.10 Função MaxDrawdown

A função MaxDrawdown() retorna o Drawdown Máximo (perda máxima de um pico para um vale) histórico ou no período de cálculo do portfólio. É uma métrica crucial de risco.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se o Drawdown Máximo exceder o limite aceitável.

If MaxDrawdown > MaxRiskLimit Then

StopStrategy := True;

//

21.11 Função SharpeRatio

A função SharpeRatio() calcula o Índice de Sharpe do portfólio. Esta métrica mede o retorno ajustado ao risco, comparando o excesso de retorno do portfólio com o desvio padrão.

Parâmetros: RiskFreeRate: Float (Taxa livre de risco, ex: Selic).

Exemplo de uso: Avaliar a eficiência do portfólio.

If SharpeRatio(0.10) > 1.5 Then

PortfólioEficiente := True;

//

22.1 Função AssetSymbol

A função AssetSymbol() retorna o símbolo (ticker) do ativo que a estratégia está executando ou analisando atualmente.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado em mensagens de log ou alertas para identificação do ativo.

Alert("Estrategia executada em " + AssetSymbol());

//

22.2 Função ChartInterval

A função ChartInterval() retorna o intervalo de tempo (timeframe) do gráfico (por exemplo, 5 para 5 minutos, 60 para 1 hora, D para diário).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para adaptar parâmetros de indicadores ao timeframe.

If ChartInterval = 60 Then

UseLongPeriod := True;

//

22.3 Função GetMaxBars

A função GetMaxBars() retorna o número máximo de barras disponíveis no histórico carregado para o ativo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para controle de loops ou para saber o tamanho total da série.

If CurrentBar = GetMaxBars Then

EndProcessing := True;

//

22.4 Função GetPosition

A função GetPosition() retorna a posição atual (em quantidade de contratos ou ações) que a estratégia possui no ativo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Se a posição for maior que zero, a estratégia está comprada.

If GetPosition > 0 Then

EstrategiaComprada := True;

//

22.5 Função GetPositionCost

A função GetPositionCost() retorna o custo médio da posição atual no ativo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para calcular o P/L em tempo real.

ProfitLoss := Close - GetPositionCost;

//

22.6 Função IsMarketOpen

A função IsMarketOpen() retorna `TRUE` se o mercado estiver aberto e `FALSE` caso contrário.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Evitar a execução de ordens fora do horário de negociação.

If IsMarketOpen Then

ExecuteOrders;

//

22.7 Função IsPaperTrading

A função IsPaperTrading() retorna `TRUE` se a estratégia estiver sendo executada em simulação (Paper Trading) e `FALSE` se estiver em conta real.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para logs de segurança.

If IsPaperTrading Then

LogType := "SIMULACAO";

//

22.8 Função MinTick

A função MinTick() retorna o valor mínimo de variação de preço (tick size) para o ativo.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para arredondar preços corretamente.

StopPrice := Round(Close - 0.5 * ATR(14), MinTick);

//

22.9 Função PointValue

A função PointValue() retorna o valor monetário por ponto/tick do ativo (por exemplo, R$ 0,20 por tick no mini-índice).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para calcular o valor de movimentos de preço.

If Close > High[1] Then

GainValue := (Close - High[1]) GetPosition PointValue;

//

22.10 Função StrategyName

A função StrategyName() retorna o nome da estratégia em execução.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para identificação em sistemas de gerenciamento.

LogEntry("Inicio da Estrategia: " + StrategyName());

//

22.11 Função TradingCommission

A função TradingCommission() retorna o valor de comissão incorrido por trade, conforme configurado.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado no cálculo preciso do lucro líquido.

NetProfit := GrossProfit - TradingCommission;

//

22.12 Função TradingTax

A função TradingTax() retorna o valor de impostos/taxas incorridos por trade (ex: emolumentos, ISS).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Contabilidade das taxas de negociação.

TotalFees := TradingCommission + TradingTax;

//

22.13 Função GetInitialCapital

A função GetInitialCapital() retorna o capital inicial alocado para a estratégia.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como base para calcular o retorno percentual.

ReturnPercentage := (PortfolioCurrentValue - GetInitialCapital) / GetInitialCapital;

//

23.1 Função CurrentDate

A função CurrentDate() retorna a data da barra atual no formato YYYYMMDD (ou formato de data da plataforma).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para verificar se a data mudou.

If CurrentDate <> CurrentDate[1] Then

NewDayStart := True;

//

23.2 Função CurrentTime

A função CurrentTime() retorna o horário da barra atual no formato HHMMSS (ou formato de hora da plataforma).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Executar uma ação apenas em um horário específico.

If CurrentTime >= 100000 And CurrentTime <= 100500 Then

ExecuteEntryLogic;

//

23.3 Função DateToString

A função DateToString() converte uma data (no formato YYYYMMDD) em uma string formatada.

Parâmetros: DateValue: Integer (Data), Format: String (Formato de saída desejado, ex: "DD/MM/YYYY").

Exemplo de uso: Exibir a data de forma legível.

Alert(DateToString(CurrentDate, "DD/MM/YYYY"));

//

23.4 Função TimeToString

A função TimeToString() converte um horário (no formato HHMMSS) em uma string formatada.

Parâmetros: TimeValue: Integer (Horário), Format: String (Formato de saída desejado, ex: "HH:MM:SS").

Exemplo de uso: Exibir o horário de forma legível.

Alert(TimeToString(CurrentTime, "HH:MM:SS"));

//

23.5 Função DayOfWeek

A função DayOfWeek() retorna o dia da semana da barra atual (1=Domingo, 2=Segunda, ..., 7=Sábado).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Evitar negociar às sextas-feiras.

If DayOfWeek = 6 Then

NoTrading := True;

//

23.6 Função DayOfMonth

A função DayOfMonth() retorna o dia do mês da barra atual (1 a 31).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Executar uma lógica específica no último dia do mês.

If DayOfMonth = LastDayOfMonth Then

ExecuteEndOfMonthLogic;

//

23.7 Função DayOfYear

A função DayOfYear() retorna o dia do ano da barra atual (1 a 366).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para cálculos de ciclo anuais.

AnnualCycleDay := DayOfYear;

//

23.8 Função Month

A função Month() retorna o mês da barra atual (1=Janeiro a 12=Dezembro).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Evitar negociar em Dezembro.

If Month = 12 Then

TakeBreak := True;

//

23.9 Função Year

A função Year() retorna o ano da barra atual (ex: 2025).

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para controle de backtesting em anos específicos.

If Year = 2024 Then

TestPerformance;

//

23.10 Função IsDate

A função IsDate() verifica se um valor numérico representa uma data válida no formato YYYYMMDD.

Parâmetros: Value: Integer (O valor a ser verificado).

Exemplo de uso: Validação de entradas do usuário.

If IsDate(InputDate) Then

ProcessDate(InputDate);

//

23.11 Função IsTime

A função IsTime() verifica se um valor numérico representa um horário válido no formato HHMMSS.

Parâmetros: Value: Integer (O valor a ser verificado).

Exemplo de uso: Validação de horários de início e fim.

If IsTime(StartTime) Then

SetSchedule(StartTime);

//

23.12 Função DateDiff

A função DateDiff() calcula a diferença em dias entre duas datas.

Parâmetros: Date1: Integer, Date2: Integer (Datas no formato YYYYMMDD).

Exemplo de uso: Calcular quantos dias se passaram desde a última entrada.

DaysPassed := DateDiff(CurrentDate, LastEntryDate);

//

23.13 Função TimeDiff

A função TimeDiff() calcula a diferença em segundos entre dois horários.

Parâmetros: Time1: Integer, Time2: Integer (Horários no formato HHMMSS).

Exemplo de uso: Calcular a duração de um período de negociação.

DurationSeconds := TimeDiff(EndTime, StartTime);

//

23.14 Função LastTradeTime

A função LastTradeTime() retorna o horário do último trade (execução de ordem) ocorrido na barra atual ou anterior.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para evitar múltiplas execuções em um curto intervalo de tempo.

If CurrentTime - LastTradeTime < 60 Then

WaitNextMinute := True;

//

23.15 Função Today

A função Today() retorna a data atual do sistema operacional/servidor onde a estratégia está sendo executada.

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para referência de data fora do contexto da barra do gráfico.

If CurrentDate <> Today Then

SystemDateMismatch := True;

//

24.1 Função ClosePrice

A função ClosePrice() retorna o preço de fechamento da barra atual. Sinônimo de Close() e Price().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para cálculos básicos baseados no fechamento.

If ClosePrice > MA(ClosePrice, 20) Then

BuyAtMarket;

//

24.2 Função HighPrice

A função HighPrice() retorna o preço máximo da barra atual. Sinônimo de High().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para definir stops ou níveis de resistência.

Resistance := HighPrice + 1;

//

24.3 Função LowPrice

A função LowPrice() retorna o preço mínimo da barra atual. Sinônimo de Low().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para definir suportes ou pontos de compra.

Support := LowPrice - 1;

//

24.4 Função OpenPrice

A função OpenPrice() retorna o preço de abertura da barra atual. Sinônimo de Open().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado para calcular o tamanho do corpo da vela.

If ClosePrice > OpenPrice Then

BarraPositiva := True;

//

24.5 Função AveragePrice

A função AveragePrice() retorna o preço médio da barra: $(High + Low) / 2$. Sinônimo de AvgPrice() e MedPrice().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como referência de preço central da barra.

If ClosePrice > AveragePrice Then

ForcaCompradora := True;

//

24.6 Função RangePrice

A função RangePrice() retorna o Range (Amplitude) da barra: $(High - Low)$. Sinônimo de Range().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Medir a volatilidade intradiária.

If RangePrice > ATR(14) Then

VolatilidadeAlta := True;

//

24.7 Função Variance

A função Variance() calcula a Variância de uma série de dados (a média dos quadrados das diferenças em relação à média). É o quadrado do Desvio Padrão.

Parâmetros: Serie: Float (Série de dados), Period: Integer (Período de cálculo).

Exemplo de uso: Usado como uma métrica de dispersão dos preços.

PriceVariance := Variance(ClosePrice, 20);

//

24.8 Função MedianPrice

A função MedianPrice() retorna o Preço Mediano da barra: $(High + Low) / 2$. Sinônimo de AveragePrice().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Usado como um preço de referência robusto.

If ClosePrice < MedianPrice Then

BiasBaixa := True;

//

24.9 Função WeightedPrice

A função WeightedPrice() retorna o Preço Ponderado, geralmente o Fechamento Ponderado: $(High + Low + 2 * Close) / 4$. Sinônimo de WeightedClose().

Parâmetros: Não requer parâmetros.

Exemplo de uso: Dá mais peso ao fechamento para análise de força.

If WeightedPrice > WeightedPrice[1] Then

PrecoPonderadoCrescente := True;

//

24.10 Função HighestPrice

A função HighestPrice() retorna o preço mais alto de uma série de dados no número de barras especificado. Sinônimo de Highest().

Parâmetros: Serie: Float (Série de dados), N: Integer (Número de barras).

Exemplo de uso: Determinar o preço máximo das últimas 10 barras.

MaxPrice10 := HighestPrice(ClosePrice, 10);