Google Sheets запускает запрос тренда, используя данные финансов Yahoo - PullRequest
0 голосов
/ 29 февраля 2020

Может ли кто-нибудь помочь мне написать запрос на одну ячейку, аналогичный приведенному ниже, но с использованием данных финансов Yahoo вместо Google Finance. Эта спарклайн показывает тренд дневной цены за последние 365 дней и окрашивает спарклайн в зеленый или красный цвет в зависимости от того, превышает ли текущая цена первый день из указанного диапазона. В этом случае 1-й день из 365 дней.

Я действительно надеюсь, что это можно сделать, поскольку я не хочу создавать дополнительные таблицы или вкладки для хранения данных, а затем создавать спарклайн.

=sparkline(query(googlefinance(AAPL, "price", today()-365, today()-2), "select Col2 label Col2 ''", 1),{"color",if( INDEX(googlefinance(AAPL,"price",today()-365),2,2) < INDEX(googlefinance(AAPL, "price", today()-2),2,2),"green","red");"linewidth",2})

Вот пример того, как получить последнюю цену, используя финансы Yahoo.

=index(IMPORTXML("https://finance.yahoo.com/quote/AAPL","//*[@id='quote-header-info']//span"),2)

1 Ответ

1 голос
/ 29 февраля 2020

попробовать:

=SPARKLINE(QUERY(IMPORTHTML(
 "https://finance.yahoo.com/quote/AAPL/history?period1="&86400*(
 TODAY()-365)-2209161600&"&period2="&86400*TODAY()-2209161600&
 "&interval=1d&filter=history&frequency=1d",
 "table", 1),
 "select Col5 order by Col1 asc offset 1", 0), {"color", IF(INDEX(SORT(IMPORTHTML(
 "https://finance.yahoo.com/quote/AAPL/history?period1="&86400*(
 TODAY()-365)-2209161600&"&period2="&86400*TODAY()-2209161600&
 "&interval=1d&filter=history&frequency=1d", 
 "table", 1), 1, 1), 1, 5) < INDEX(IMPORTXML(
 "https://finance.yahoo.com/quote/AAPL", 
 "//*[@id='quote-header-info']//span"), 2),
 "green", "red"); "linewidth", 2})

enter image description here

...