Python, Power BI, XAUUSD
Виталий Фартушнов

© Виталий Фартушнов, 2025

ISBN 978-5-0068-7703-0

Создано в интеллектуальной издательской системе Ridero

Python, PowerBI, XAUUSD

Here is a summary of information related to Python, PowerBI, and XAUUSD (gold priced in USD):

Python and XAUUSD:

– XAUUSD is the symbol for gold priced against the US dollar in Forex trading.

– Python can be used to build tools such as trend trackers for XAUUSD by extracting, transforming, and loading market data from APIs (e.g., TwelveData forex API).

– Python-based machine learning models like LSTM neural networks are used to predict trends in XAUUSD.

– Trading bots in Python can be created to trade XAUUSD, using strategies such as entering trades on strong candle formations with defined risk management parameters (take profit and stop loss).

– Open source projects and code snippets are available for real-time XAUUSD price tracking and simple trend predictions using Python.

PowerBI and XAUUSD:

– While there is no direct mention of PowerBI integration in the search results, PowerBI can typically be used to visualize and analyze XAUUSD market data by importing cleaned and transformed datasets from Python or APIs.

– PowerBI can offer interactive dashboards for monitoring XAUUSD price trends, technical indicators, or trading signals when combined with Python scripts or data exports.

XAUUSD Market Concepts:

– XAUUSD shows how many USD are needed to buy one ounce of gold.

– Market factors influencing XAUUSD include US dollar strength, inflation, interest rates, geopolitical tensions, and central bank policies.

– XAUUSD trading is highly liquid, with notable volatility during overlapping London/New York market hours.

– Recent forecasts anticipate XAUUSD price moves influenced by Fed policies, geopolitical developments, and global economic conditions.

If you want, I can help provide example Python code for XAUUSD data analysis or show ways to integrate XAUUSD data into PowerBI dashboards. Let me know your specific goal or use case related to Python, PowerBI, and XAUUSD.

This synthesis includes insights from the following sources: a Python trend tracker project for XAUUSD, trading bot examples, market explanations, and technical forecasts [1] [2] [3] [4] [5] [6].

⁂

Написать подробно, как вызвать Python в PowerBI. необходтмо передать котировки XAUUSD в DAX

Чтобы подробно передать котировки XAUUSD из Python в Power BI и затем использовать их с DAX, выполните следующие шаги:

1. Установка необходимых компонентов
– Убедитесь, что у вас установлен Python (лучше официальный дистрибутив).
– Установите библиотеки pandas и matplotlib (через командную строку):
pip install pandas
pip install matplotlib

В Power BI поддерживается только импорт pandas DataFrame [12].

2. Включение поддержки Python в Power BI

– Откройте Power BI Desktop.

– Перейдите в: Файл → Параметры и настройки → Параметры → Python.

– Укажите путь к вашей установленной версии Python.

– Нажмите ОК [12].

3. Получение данных XAUUSD из Python

Например, используем бесплатный API TwelveData:

import requests

import pandas as pd

api_key = «ВАШ_API_КЛЮЧ»

url = f»https://api.twelvedata.com/time_series?symbol=XAU/USD&interval=5min&apikey={api_key}"

response = requests.get (url).json ()

df = pd. DataFrame (response [’values’])

df [’close’] = df['close'].astype (float)

Проверьте, что DataFrame называется df – именно его Power BI увидит и предложит загрузить [12] [13].

4. Передача данных в Power BI

– В Power BI выберите: Главная → Получить данные → Другой → Скрипт Python → Подключить.

– В появившемся окне вставьте свой Python-скрипт.

– После успешного выполнения появится окно выбора таблицы – выберите ваш DataFrame (обычно df) и нажмите Загрузить.

– Данные попадут в модель Power BI, где с ними можно работать через DAX [13].

5. Обновление данных

– По кнопке Обновить в Power BI Desktop Power BI снова выполнит Python-скрипт и подтянет актуальные котировки [12].

6. Использование с DAX

– После импорта ваши котировки XAUUSD (или другие нужные поля) уже присутствуют в модели Power BI.

– Теперь можно работать с ними в формулах DAX для расчетов, создания мер, визуализации и построения аналитики.

Важные нюансы

– Скрипт Python должен возвращать DataFrame pandas.

– Длительные скрипты (> 30 минут) приведут к ошибке.

– В Power BI нельзя делать интерактивный ввод – только автоматическое выполнение скрипта [12].

– Для расписания обновлений в облаке потребуется настроить отдельный шлюз.

Таким образом, котировки XAUUSD можно загрузить из интернета посредством Python, передать их напрямую в Power BI и использовать в формулах/визуализациях DAX без промежуточных CSV или ручных манипуляций [12] [13].

Если нужен конкретный пример DAX-функций или визов для анализа XAUUSD ― уточните задачи, и я помогу их сформулировать!

[12] [13]

⁂

Паписать скрипт импорта XAUUSD из Yahoo Finance через библиотеку Python и обработку в DAX

Вот подробный рабочий скрипт для импорта котировок XAUUSD из Yahoo Finance через Python, с дальнейшей обработкой данных в Power BI и аналитикой на DAX:

1. Скрипт Python для импорта XAUUSD из Yahoo Finance

Установите yfinance и pandas:

pip install yfinance pandas

Пример кода (вставить в Power BI как Python Script при импорте):

import pandas as pd

import yfinance as yf

# Получаем исторические котировки XAU/USD (тикер Yahoo: «XAUUSD=X»)

data = yf.download («XAUUSD=X», start=«2024-01-01», end=«2025-08-19», interval=«1d’)

data.reset_index (inplace=True)

data = data [[«Date’, «Open’, «High’, «Low’, «Close’, «Volume’]]

data = data.rename (columns= {«Date’: «Дата», «Open’: «Открытие», «High’: «Макс», «Low’: «Мин», «Close’: «Закрытие», «Volume’: «Объем»})

# Power BI импортирует DataFrame «data»

После выполнения в Power BI выберите DataFrame и загрузите таблицу в модель данных [14] [15] [16].

2. Как обработать XAUUSD курс в DAX

После импорта таблицы, используйте стандартные DAX функции для расчетов:
– Пример создания средней цены закрытия:
СреднееЗакрытие = AVERAGE (’data’ [Закрытие])

– Пример рассчёта прироста:
Прирост = DIVIDE (
’data’ [Закрытие] – EARLIER (’data’ [Закрытие]),
EARLIER (’data’ [Закрытие])
)

– Пример расчёта значения на конец месяца:
EndOfMonthClose = CALCULATE (
LASTNONBLANKVALUE (’data’ [Дата], ’data’ [Закрытие]),
ENDOFMONTH (’data’ [Дата])

)

Создавайте любые агрегаты, индикаторы (например, MA), исторические фильтры и прочие расчёты поверх полученного DataFrame с курсом XAUUSD через DAX-выражения [17].

Важно!

– В Power BI Desktop импортировать через «Получить данные → Python script»

– Используйте только pandas DataFrame с нужными столбцами.

– Дальше любые расчёты (аналитика, фильтрация, визуализация) делаются стандартно через DAX в Power BI.

Этот подход обеспечивает автоматическую загрузку и обновление курса золота (XAUUSD), с продвинутой аналитикой прямо в Power BI [14] [15] [18].

⁂

Описать подробно вызов из PowerBI скрипта в Anaconda

Для вызова скрипта Python из Power BI с использованием среды Anaconda нужно выполнить несколько шагов, чтобы связать Power BI с нужной версией Python из Anaconda. Ниже подробная инструкция:

1. Установка Anaconda и подготовка окружения

– Установите Anaconda (если еще не установлен) с официального сайта.

– Создайте или используйте существующее Anaconda-окружение, в котором установлены все необходимые библиотеки, например, pandas, numpy, yfinance и т. д.

conda create -n myenv python=3.10 pandas numpy yfinance

conda activate myenv

2. Определение пути к Python из Anaconda
– В Anaconda Prompt активируйте окружение нужное (myenv).
– Выполните команду:
where python

– Получите абсолютный путь до исполняемого файла Python из этого окружения, например:
C:\Users\ВашеИмя\anaconda3\envs\myenv\python. exe

3. Настройка Power BI для использования Anaconda Python

– Запустите Power BI Desktop.

– Перейдите в Файл → Параметры и настройки → Параметры → Python.

– В поле пути к Python укажите путь из шага 2 (например, C:\Users\ВашеИмя\anaconda3\envs\myenv\python. exe).

– Нажмите ОК.

4. Вызов Python скрипта из Power BI

– В Power BI выберите Главная → Получить данные → Другие → Скрипт Python.

– В открывшемся окне введите ваш Python-скрипт, который вы хотите выполнить в Anaconda окружении, например:

import yfinance as yf

import pandas as pd

data = yf.download («XAUUSD=X», start=«2024-01-01», end=«2025-08-19», interval=«1d’)

data.reset_index (inplace=True)

df = data [[«Date’, «Open’, «High’, «Low’, «Close’, «Volume’]]

– Нажмите OK.

– Power BI выполнит скрипт используя выбранный Python в Anaconda, и предложит выбрать загруженную таблицу (например, df).

– Выберите и загрузите данные.

5. Важные нюансы

– Убедитесь, что используемое Anaconda окружение содержит все требуемые пакеты.

– При переключении между разными версиями Python в Power BI необходимо заново указать путь к интерпретатору.

– После настройки путь хранится и используется для всех будущих запусков Python-скриптов в Power BI.

– Обновление данных в Power BI через Python-скрипты возможно, но требует доступности Anaconda-окружения и установленных пакетов.

Таким образом, Power BI вызывает Python-скрипты именно через указанный исполняемый файл Python из Anaconda, что позволяет использовать собственное управляемое окружение с нужными библиотеками и версиями Python.

Экспоненцивльное сглаживание – написать скрипт на Python для XAUUSD

Вот пример скрипта на Python для загрузки данных XAUUSD и применения экспоненциального сглаживания (Exponential Moving Average, EMA) с помощью библиотеки pandas:

import yfinance as yf

import pandas as pd

# Загружаем исторические данные XAUUSD (тикер Yahoo: «XAUUSD=X»)

data = yf.download («XAUUSD=X», start=«2024-01-01», end=«2025-08-19», interval=«1d’)

# Сбрасываем индекс для удобства работы с данными

data.reset_index (inplace=True)

# Рассчитываем экспоненциальное сглаживание закрытия (EMA) с периодом 20 дней

data [«EMA_20»] = data [«Close’].ewm (span=20, adjust=False).mean ()

# Опционально: выводим несколько строк для проверки

print (data [[«Date’, «Close’, «EMA_20»]].tail (10))

Объяснение:

– yf.download – импортирует данные по XAUUSD с Yahoo Finance.

– Метод ewm (span=20) создает экспоненциальное взвешивание с окном 20 дней.

– .mean () рассчитывает EMA.

– В итоге в DataFrame появляется столбец EMA_20 с экспоненциальным сглаженным курсом.

Вы можете менять период span для настройки степени сглаживания.

Если нужно, могу помочь сделать загрузку такого скрипта в Power BI или дополнить его другими индикаторами.

MACD – написать скрипт на Python, после экспоненциального сглаживания, данные передать в Power BI и отобразить на графике точки пересечения индикатора

Вот подробный пример Python-скрипта для расчёта MACD на основе экспоненциального сглаживания цен XAUUSD, а затем передачи данных в Power BI для визуализации с точками пересечения индикатора:

1. Python-скрипт для загрузки данных и расчёта MACD

import yfinance as yf
import pandas as pd

# Загружаем исторические данные XAUUSD
data = yf.download («XAUUSD=X», start=«2024-01-01», end=«2025-08-19», interval=«1d’)
data.reset_index (inplace=True)

# Расчёт EMA для MACD: быстрый и медленный периоды
fast_span = 12
slow_span = 26
signal_span = 9

data [«EMA_fast’] = data [«Close’].ewm (span=fast_span, adjust=False).mean ()

data [«EMA_slow’] = data [«Close’].ewm (span=slow_span, adjust=False).mean ()

# MACD линия: разница между быстрым и медленным EMA

data [«MACD»] = data [«EMA_fast’] – data [«EMA_slow’]

# Сигнальная линия: EMA от MACD линии

data [«Signal’] = data [«MACD»].ewm (span=signal_span, adjust=False).mean ()

# Расчёт точек пересечения MACD и сигнальной линии

data [«MACD_Signal_diff’] = data [«MACD»] – data [«Signal’]

data [«Cross’] = 0 #1 – пересечение вверх, -1 – пересечение вниз, 0 – нет

# Определяем пересечения

for i in range (1, len (data)):

if data. loc [i, «MACD_Signal_diff’]> 0 and data. loc [i-1, «MACD_Signal_diff’] <= 0:

data. loc [i, «Cross’] = 1 # Пересечение вверх (сигнал на покупку)

elif data. loc [i, «MACD_Signal_diff’] <0 and data. loc [i-1, «MACD_Signal_diff’]> = 0:

data. loc [i, «Cross’] = -1 # Пересечение вниз (сигнал на продажу)

# Оставляем нужные столбцы для передачи в Power BI

result = data [[«Date’, «Close’, «MACD», «Signal’, «Cross’]]

2. Передача данных в Power BI

– В Power BI выберите Главная → Получить данные → Другие → Скрипт Python.

– Вставьте вышеуказанный скрипт.

– По выполнении выберите таблицу result для загрузки.

3. Визуализация в Power BI

– Создайте график линии для отображения исторических цен (Close), MACD и сигнальной линии.

– Добавьте отдельный слой для точек пересечения, используя поле Cross:

– Фильтруйте по Cross = 1 для точек пересечения вверх (сигнал купить).

– Фильтруйте по Cross = -1 для точек пересечения вниз (сигнал продать).

– Можно использовать цветные маркеры (зелёные для 1, красные для -1) на графике для визуальных сигналов.

Конец ознакомительного фрагмента.

Текст предоставлен ООО «Литрес».

Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.