-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmail_alert_last_buy_price
49 lines (43 loc) · 3.58 KB
/
mail_alert_last_buy_price
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
function mail_alert_last_buy_price()
{
// Выбираем файл таблицы по id
var ss = SpreadsheetApp.openById('13dnNr05Ix7zDU8eY3Fbra0R9w1Ht7HkGSsfP4DAsZ9w');
// Выбираем лист на котором будем производить действия
var sheet = ss.getSheetByName("LastBuyPrice");
// Определяем массив с которого считаем данные
var row = 4; // Начальная строка
var column = 2; // Начальная колонка
var numRows = sheet.getLastRow(); // Количество строк в массиве. sheet.getLastRow() Позволяет определять последнюю заполненную строку как конец массива
var numColumns= sheet.getLastColumn(); //Количество колонок в массиве. sheet.getLastColumn() Позволяет определять последний заполненный столбец как конец массива
var dataRange = sheet.getRange(row, column, numRows, numColumns) // getRange(row, column, numRows, numColumns)
// Fetch values for each row in the Range / Получаем данные с этих ячеек
var data = dataRange.getValues();
// Little loop / Начало цикла который проходиться по строкам
for (var i = 0; i < numRows; ++i)
{
var cell = data[i];
//---------------------------------------------------------------------------------------------------------------
// Целевое отклонение на определенный процент. Во времена волатильности можно увеличить чтобы не засыпало письмами
var targetPercent = 5.00
//---------------------------------------------------------------------------------------------------------------
// Email адрес на который отправляем письмо
var email = "[email protected]";
// Тема письма о росте или падении инструмента
var subject1 = cell[0] + " на " + cell[4] + "% " + " стал больше цены последней сделки. ";
var subject2 = cell[0] + " на " + cell[4] + "% " + " стал меньше цены последней сделки. ";
// Текст письма о росте или падении инструмента
var message1 = "Текущая цена: " + cell[3] + " руб.\n" + "Цена последней сделки: " + cell[1] + " руб. ";
var message2 = "Текущая цена: " + cell[3] + " руб.\n" + "Цена последней сделки: " + cell[1] + " руб. ";
// Отправляем письмо если значения целевой цены больше или равно на значение спреда.
if(cell[4] >= targetPercent * 7)
{
MailApp.sendEmail(email, subject1, message1);
}
// Отправляем письмо если значения целевой цены меньше или равно на значение спреда.
if(cell[4] <= -targetPercent)
{
MailApp.sendEmail(email, subject2, message2);
}
}
}
// Не забываем подключить тригер иначе не будет все работать когда таблица закрыта и скрипт не запускается вручную.