---
title: Overbasic – Funzioni ‘Analysis Tool’
description: "La categoria **My.Analysistool** contiene tutte le funzioni built-in di analisi disponibili in Overbasic. ## **BarSince** Calcola da quante barre l'espressione booleana passata come argomento è TRUE. Il calcolo avviene all'indietro (dalla barra corrente alla prima barra della serie storica) e…"
url: "https://www.overcharts.com/it/helpcenter/docs/overbasic-funzioni-analysis-tool/"
updated: "2023-06-09"
category: "Overbasic / Funzioni Built-In"
---

# Overbasic – Funzioni ‘Analysis Tool’

La categoria **My.Analysistool** contiene tutte le funzioni built-in di analisi disponibili in Overbasic.

## **BarSince**

Calcola da quante barre l'espressione booleana passata come argomento è TRUE. Il calcolo avviene all'indietro (dalla barra corrente alla prima barra della serie storica) e si interrompe quanto l'espressione booleana è FALSE restituendo il conteggio totale delle barre fino a quel momento elaborate.

**Tipo di risultato**: numerico

**Argomenti**:

- **BOOLEAN EXPRESSION**: una qualsiasi espressione booleana.

```
Dim i As Numeric = My.Analysistool.Barsince(Close > Open)
```

## **CandlePattern**

Restituisce TRUE se in una determinata barra esiste il pattern / candela indicato nell'argomento PATTERNNAME.

**Tipo di risultato**: booleano

**Argomenti**:

- **PATTERNNAME**: nome del pattern da individuare (selezionalo tra quelli disponibili nell'elenco che appare direttamente nell'editor).
- **TREND PERIODS**: numero di periodi (barre) da utilizzare per calcolare la direzione del trend. Alcune candele / pattern assumono un significato diverso a seconda del trend in cui si trovano (es. Hammer / Hanging-Man). Quindi, se TREND-PERIODS è uguale a 20, il trend della barra in esame viene calcolato in base alla direzione delle 20 barre precedenti.
- **PERIOD**: (*facoltativo*) indice della barra dove cercare il pattern. Se omesso, l'indice è quello della barra corrente.

```
Dim b As Boolean = My.Analysistool.Candlepattern("(bullish) engulfing bullish", 20)
```

## **Cross**

Restituisce l'indice della barra dove DATA ARRAY 1 incrocia DATA ARRAY 2 per la prima volta nell'intervallo di barre specificato. Restituisce "0" (zero) se l'intersezione non si verifica.

**Tipo di risultato**: numerico

**Argomenti**:

- **DATA ARRAY 1**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **DATA ARRAY 2**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **PERIOD**: (*facoltativo*) numero di barre da esplorare precedenti la barra corrente. Se FROM e TO sono valorizzate hanno la precedenza su PERIOD. Se PERIOD, FROM e TO sono omessi, l'esplorazione va dalla prima all'ultima barra.
- **FROM**: (*facoltativo*): indice della prima barra da esplorare.
- **TO**: (*facoltativo*): indice dell'ultima barra da esplorare.

```
'Cross restituisce l'indice della barra (o zero) dove Close incrocia la sua Media Mobile semplice a 20 periodi nelle ultime 30 barre.
Dim i As Numeric = My.Analysistool.Cross(Close, Mov(Close, 20, "S"), 30)
```

## **CrossAbove**

Restituisce TRUE se DATA ARRAY 1 incrocia DATA ARRAY 2 verso l'alto nella barra corrente o in quella specificata da PERIOD.

**Tipo di risultato**: booleano

**Argomenti**:

- **DATA ARRAY 1**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **DATA ARRAY 2**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **PERIOD**: (*facoltativo*) indice della barra da elaborare. Se omesso viene elaborata la barra corrente.

```
'Nell'esempio, CrossAbove restituisce TRUE se nella barra corrente Close incrocia verso l'alto la sua Media Mobile semplice a 20 periodi.
Dim b As Boolean = My.Analysistool.CrossAbove(Close, Mov(Close, 20, "S"))
```

## **CrossBelow**

Restituisce TRUE se DATA ARRAY 1 incrocia DATA ARRAY 2 verso il basso nella barra corrente o in quella specificata da PERIOD.

**Tipo di risultato**: booleano

**Argomenti**:

- **DATA ARRAY 1**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **DATA ARRAY 2**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **PERIOD**: (*facoltativo*) indice della barra da elaborare. Se omesso viene elaborata la barra corrente.

```
'Nell'esempio, CrossBelow restituisce TRUE se nella barra corrente Close incrocia verso il basso la sua Media Mobile semplice a 20 periodi.
Dim b As Boolean = My.Analysistool.CrossBelow(Close, Mov(Close, 20, "S"))
```

## **GapDown**

Restituisce True se la barra corrente (o quella indicata in PERIOD) è in "Gap Down" con la barra precedente.

**Tipo di risultato**: booleano

**Argomenti**:

- **PERIOD**: (*facoltativo*) indice della barra da elaborare. Se omesso viene elaborata la barra corrente.
- **ONLY REAL BODY**: (*facoltativo*) se TRUE, viene considerato solo il corpo della barra / candela (il range Open/Close) escludendo i valori di massimo e minimo.

```
Dim b As Boolean = My.Analysistool.Gapdown()
```

## **GapUp**

Restituisce True se la barra corrente (o quella indicata in PERIOD) è in "Gap Up" con la barra precedente.

**Tipo di risultato**: booleano

**Argomenti**:

- **PERIOD**: (*facoltativo*) indice della barra da elaborare. Se omesso viene elaborata la barra corrente.
- **ONLY REAL BODY**: (*facoltativo*) se TRUE, viene considerato solo il corpo della barra / candela (il range Open/Close) escludendo i valori di massimo e minimo.

```
Dim b As Boolean = My.Analysistool.Gapup()
```

## **InPrev**

Restituisce True se la barra corrente (o quella indicata in PERIOD) è contenuta in quella precedente.

**Tipo di risultato**: booleano

**Argomenti**:

- **PERIOD**: (*facoltativo*) indice della barra da elaborare. Se omesso viene elaborata la barra corrente.
- **ONLY REAL BODY**: (*facoltativo*) se TRUE, viene considerato solo il corpo della barra / candela (il range Open/Close) escludendo i valori di massimo e minimo.

```
Dim b As Boolean = My.Analysistool.Inprev()
```

## **Max**

Calcola il valore massimo di DATA ARRAY nell'intervallo di barre in elaborazione (PERIOD + SINCE).

**Tipo di risultato**: numerico

**Argomenti**:

- **DATA ARRAY**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **PERIOD**: (*facoltativo*) numero di barre precedenti la barra corrente coinvolte nel calcolo. Se omesso, saranno considerate tutte le barre a partire dalla prima in accordo con l'espressione 'SINCE'.
- **SINCE**: (*facoltativo*) espressione booleana indicante la barra dove iniziare il calcolo. In altre parole, il calcolo del valore massimo inizierà dalla barra in cui SINCE sarà TRUE per la prima volta.

```
'Nell'esempio, Max restituisce il valore massimo di Close calcolato nelle ultimo 30 barre.
Dim d As Numeric = My.Analysistool.Max(Close, 30)
```

## **MaxEx**

Calcola il valore massimo di DATA ARRAY nell'intervallo di tempo specificato in TIME INTERVAL.

**Tipo di risultato**: numerico

**Argomenti**:

- **DATA ARRAY**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **TIME INTERVAL**: intervallo di tempo dove calcolare il massimo. Valori possibili:
  - **MIN**: minuto corrente (o quello corrispondente a DATE / TIME)
  - **H**: ora corrente (o quella corrispondente a DATE / TIME)
  - **D**: giorno corrente (o quello corrispondente a DATE / TIME)
  - **W**: settimana corrente (o quella corrispondente a DATE / TIME)
  - **M**: mese corrente (o quello corrispondente a DATE / TIME)
  - **Y**: anno corrente (o quello corrispondente a DATE / TIME)
- **DATE**: (*facoltativo*) specifica la data di riferimento per il calcolo. Se omessa, la data è quella della barra corrente.
- **TIME**: (*facoltativo*) specifica l'ora di riferimento per il calcolo. Se omessa, l'ora è quella della barra corrente.

```
'Nell'esempio, Maxex restituisce il valore massimo di Close calcolato nel minuto corrente.
Dim d As Numeric = My.Analysistool.Maxex(Close, "MIN")
```

## **Min**

Calcola il valore minimo di DATA ARRAY nell'intervallo di barre in elaborazione (PERIOD + SINCE).

**Tipo di risultato**: numerico

**Argomenti**:

- **DATA ARRAY**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **PERIOD**: (*facoltativo*) numero di barre precedenti la barra corrente coinvolte nel calcolo. Se omesso, saranno considerate tutte le barre a partire dalla prima in accordo con l'espressione 'SINCE'.
- **SINCE**: (*facoltativo*) espressione booleana indicante la barra dove iniziare il calcolo. In altre parole, il calcolo del valore minimo inizierà dalla barra in cui SINCE sarà TRUE per la prima volta.

```
'Nell'esempio, Min restituisce il valore minimo di Close calcolato nelle ultimo 30 barre.
Dim d As Numeric = My.Analysistool.Min(Close, 30)
```

## **MinEx**

Calcola il valore minimo di DATA ARRAY nell'intervallo di tempo specificato in TIME INTERVAL.

**Tipo di risultato**: numerico

**Argomenti**:

- **DATA ARRAY**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **TIME INTERVAL**: intervallo di tempo dove calcolare il minimo. Valori possibili:
  - **MIN**: minuto corrente (o quello corrispondente a DATE / TIME)
  - **H**: ora corrente (o quella corrispondente a DATE / TIME)
  - **D**: giorno corrente (o quello corrispondente a DATE / TIME)
  - **W**: settimana corrente (o quella corrispondente a DATE / TIME)
  - **M**: mese corrente (o quello corrispondente a DATE / TIME)
  - **Y**: anno corrente (o quello corrispondente a DATE / TIME)
- **DATE**: (*facoltativo*) specifica la data di riferimento per il calcolo. Se omessa, la data è quella della barra corrente.
- **TIME**: (*facoltativo*) specifica l'ora di riferimento per il calcolo. Se omessa, l'ora è quella della barra corrente.

```
'Nell'esempio, Minex restituisce il valore minimo di Close calcolato nel minuto corrente.
Dim d As Numeric = My.Analysistool.Minex(Close, "MIN")
```

## **OutPrev**

Restituisce True se la barra corrente (o quella indicata in PERIOD) contiene la barra precedente.

**Tipo di risultato**: booleano

**Argomenti**:

- **PERIOD**: (*facoltativo*) indice della barra da elaborare. Se omesso viene elaborata la barra corrente.
- **ONLY REAL BODY**: (*facoltativo*) se TRUE, viene considerato solo il corpo della barra / candela (il range Open/Close) escludendo i valori di massimo e minimo.

```
Dim b As Boolean = My.Analysistool.Outprev()
```

## **Pivot**

Restituisce il valore del livello pivot specificato in PIVOT TYPE (nella barra corrente o in quella identificata da PERIOD).

**Tipo di risultato**: numerico

**Argomenti**:

- **PIVOT TYPE**: specifica il livello di pivot da ottenere dalla funzione:
  - **R3**: terzo livello di resistenza
  - **R2**: secondo livello di resistenza
  - **R1**: primo livello di resistenza
  - **P**: pivot
  - **S1**: primo livello di supporto
  - **S2**: secondo livello di supporto
  - **S3**: terzo livello di supporto
- **PERIOD**: (*facoltativo*) indice della barra da elaborare. Se omesso viene elaborata la barra corrente.

```
'Nell'esempio, Pivot restituisce il valore del terzo livello di supporto nella barra corrente.
Dim d As Numeric = My.Analysistool.Pivot("S3")
```

## **TrendForce**

Restituisce un valore tra -3 e +3 indicante la forza del trend. Più basso è il valore, maggiormente negativo sarà il trend e viceversa. "0" (zero) identifica un trend senza direzione.

Più precisamente:

- **+3** = identifica un trend **molto **positivo****
- **+2** = identifica un trend ****positivo****
- **+1** = identifica un trend **leggermente positivo**
- **0** = identifica un **trend laterale** (senza una specifica direzione)
- **-1** = identifica un trend **leggermente negativo**
- **-2** = identifica un trend ******negativo******
- **-3** = identifica un trend **molto ****negativo******

**Tipo di risultato**: numerico

**Argomenti**:

- **DATA ARRAY**: una qualsiasi funzione dati (es. Open, High, Low, Close, Volume), indicatore, variabile (o funzione) di tipo array.
- **PERIODS**: numero di barre precedenti la barra corrente coinvolte nel calcolo.

```
'Nell'esempio, Trendforce restituisce la forza del trend dei dati Close nelle 20 barre precedenti la barra corrente.
Dim i As Numeric = My.Analysistool.Trendforce(Close, 20)
```
