rxjs-trading-signals
Version:
The user - defined operator helps users quickly output index values. base trading-signals library
27 lines • 1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.BollingerBandsWidth = void 0;
const rxjs_1 = require("rxjs");
const BollingerBands_1 = require("../BBANDS/BollingerBands");
const BollingerBandsWidth = (interval, deviationMultiplier = 2) => {
return (observable) => new rxjs_1.Observable((subscriber) => {
const subscription = observable
.pipe((0, BollingerBands_1.BollingerBands)(interval, deviationMultiplier), (0, rxjs_1.map)(({ upper, middle, lower }) => upper.minus(lower).div(middle)))
.subscribe({
next(x) {
subscriber.next(x);
},
error(err) {
subscriber.error(err);
},
complete() {
subscriber.complete();
},
});
return () => {
subscription.unsubscribe();
};
});
};
exports.BollingerBandsWidth = BollingerBandsWidth;
//# sourceMappingURL=BollingerBandsWidth.js.map