Рассчитать промежуточную сумму с условием в R - PullRequest
0 голосов
/ 04 ноября 2018

Я хочу рассчитать текущую сумму в столбце вложенных денег .... Мое условие: если buy_indicator == BUY и sell_indicator == HOLD, тогда стоимость моих вложенных денег должна быть отрицательной по отношению к close_price * 100, где 100 - это объем акций который является постоянным ..... иначе, если buy_indicator == HOLD и sell_indicator == SELL, тогда мои вложенные денежные средства должны быть положительными по отношению к close_price * 100 ...... else buy_indicator == HOLD и sell_indicator == HOLD, тогда это должно содержит предыдущее значение строки ....

мой набор данных выглядит так

введите описание изображения здесь

1 Ответ

0 голосов
/ 04 ноября 2018

Вы можете использовать ifelse для генерации столбцов с +1 или -1, которые затем можно умножить на 100 * цены закрытия. Пример:

positiveorneg <- ifelse(buy_indicator==BUY&sell_indicator==HOLD, -1, 1)
moneytoinvest <- positiveorneg*100*closeprice

Затем вы можете использовать cumsum, чтобы получить положительно измененную линию ваших денег.

mymoney <- cumsum(moneytoinvest)

Не трать все это в одном месте.

РЕДАКТИРОВАТЬ: если у вас более одного условия, вы можете вставить ifelse операторов:

ifelse(buy_indicator==BUY&sell_indicator==HOLD, -1, ifelse(buy_indicator==HOLD&sell_indicator==SELL, 1, 0))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...