# DATA SOURCE

{% hint style="success" %}
**Ассоциация**

**DATA SOURCE** - это [константа](https://docs.cdzv.com/code-zero-visual-trading_ru/cdzv-toolkit/indikatory/pages/p01hFjHvPMasiIYU8qWr#id-4.-konstanty).
{% endhint %}

Модуль **DATA SOURCE** - это как подготовительный стол для повара, где он может нарезать ингредиенты и смешать их перед приготовлением блюда. Здесь вы можете взять данные из других индикаторов, объединить их или изменить с помощью математических операций, прежде чем использовать их в главном модуле [**CONDITION MANAGER**](/code-zero-visual-trading_ru/cdzv-toolkit/indikatory/condition-manager.md) или любом другом модуле (даже другом **DATA SOURCE**) для создания правил ([**RULE**](https://docs.cdzv.com/code-zero-visual-trading_ru/cdzv-toolkit/indikatory/pages/p01hFjHvPMasiIYU8qWr#id-1.-rule-pravila)) или констант ([**CONSTANT**](https://docs.cdzv.com/code-zero-visual-trading_ru/cdzv-toolkit/indikatory/pages/p01hFjHvPMasiIYU8qWr#id-4.-konstanty)). Этот универсальный модуль **DATA SOURCE** может быть использован как ячейка памяти или стэк.<br>

<figure><img src="/files/bniQkfGIox8rlnxOcQQs" alt="" width="525"><figcaption></figcaption></figure>

### Режим **CONSTANT**  - главный режим работы модуля в котором над разными источниками данных производяться математические операции.

Например, если вам нужно проверить, больше ли объем торгов (*Volume*) среднего значения (*Moving Average, MA*) на *50%* (*1.5 раза*), то сначала вы используете модуль **DATA SOURCE**, чтобы рассчитать *1.5 \* MA(50)*. Затем полученный результат вы используете в [**CONDITION MANAGER**](/code-zero-visual-trading_ru/cdzv-toolkit/indikatory/condition-manager.md) как одно из внешних входных данных в **RULE** для сравнения с объемом торгов. Это помогает вам точно настроить условия для вашей торговой стратегии.

{% hint style="danger" %}
**Внимание**

В каком порядке идут расчеты, и детальное описание полей можно прочитать [**здесь**](https://docs.cdzv.com/code-zero-visual-trading_ru/cdzv-toolkit/indikatory/pages/p01hFjHvPMasiIYU8qWr#id-4.-konstanty).
{% endhint %}

<figure><img src="/files/pvzeG8RMbDXQeXgYkI4z" alt="" width="563"><figcaption></figcaption></figure>

<figure><img src="/files/IJOAwepqWGTA42bwJGkG" alt=""><figcaption></figcaption></figure>

### Режим **MEMORY** - это режим работы по принципу ячейки памяти, в которую можно записывать и считывать значение.

<figure><img src="/files/8SuCnxJMKP03U3pC00UV" alt="" width="563"><figcaption></figcaption></figure>

**REMEBER SIGNAL** - Источник, активирующий запись значения в память текущего расчета **DATA SOURCE.**\
**CLEAR SIGNAL** - Источник, активирующий очистку значения в памяти и сброс его на 0.

### Режим STACK - это очередь, в которую Вы можете класть значения и забирать их обратно. Он работает в режиме «последний положил» - «первый забрал».

<figure><img src="/files/8ewFQhUL4HwYHw6GbfAs" alt="" width="563"><figcaption></figcaption></figure>

**PUT SIGNAL** - Источник, активирующий запись текущего расчета **DATA SOURCE** значения в стек.\
**GET SIGNAL** - Источник, который берет последнее значение из стека, возвращает его на выход и удаляет из стека.\
**CLEAR SIGNAL** - Источник, который возвращает последнее значение из стека и очищает весь стек.\
S**end values until the next signal** - Возвращать последнее значение из стека на всех барах до следующего сигнала (true) или только на том баре, где был сигнал (false)?

Модуль **DATA SOURCE** имеет **три выхода**, которые возвращает результат его работы для каждого из режимов работы.

<figure><img src="/files/lKGBvWuXZR2Xbhrbylhn" alt="" width="554"><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cdzv.com/code-zero-visual-trading_ru/cdzv-toolkit/indikatory/data-source.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
