@barchart/portfolio-api-common 1.2.51 → 1.2.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -12,6 +12,7 @@ module.exports = (() => {
12
12
  * @param {String} code
13
13
  * @param {String} description
14
14
  * @param {String} display
15
+ * @param {Number} sequence
15
16
  * @param {Boolean} purchase
16
17
  * @param {Boolean} sale
17
18
  * @param {Boolean} income
@@ -21,13 +22,14 @@ module.exports = (() => {
21
22
  * @param {Boolean} corporateAction
22
23
  * @param {Boolean} initial
23
24
  * @param {Boolean} significant
24
- * @param {Boolean} forceZero
25
+ * @param {Boolean} eod
25
26
  */
26
27
  class TransactionType extends Enum {
27
- constructor(code, description, display, purchase, sale, income, opening, closing, fee, corporateAction, initial, significant, forceZero) {
28
+ constructor(code, description, display, sequence, purchase, sale, income, opening, closing, fee, corporateAction, initial, significant) {
28
29
  super(code, description);
29
30
 
30
31
  assert.argumentIsRequired(display, 'display', String);
32
+ assert.argumentIsRequired(sequence, 'sequence', Number);
31
33
  assert.argumentIsRequired(purchase, 'purchase', Boolean);
32
34
  assert.argumentIsRequired(sale, 'sale', Boolean);
33
35
  assert.argumentIsRequired(income, 'income', Boolean);
@@ -37,9 +39,9 @@ module.exports = (() => {
37
39
  assert.argumentIsRequired(corporateAction, 'corporateAction', Boolean);
38
40
  assert.argumentIsRequired(initial, 'initial', Boolean);
39
41
  assert.argumentIsRequired(significant, 'significant', Boolean);
40
- assert.argumentIsRequired(forceZero, 'forceZero', Boolean);
41
42
 
42
43
  this._display = display;
44
+ this._sequence = sequence;
43
45
  this._purchase = purchase;
44
46
  this._sale = sale;
45
47
  this._income = income;
@@ -49,7 +51,6 @@ module.exports = (() => {
49
51
  this._corporateAction = corporateAction;
50
52
  this._initial = initial;
51
53
  this._significant = significant;
52
- this._forceZero = forceZero;
53
54
  }
54
55
 
55
56
  /**
@@ -62,6 +63,17 @@ module.exports = (() => {
62
63
  return this._display;
63
64
  }
64
65
 
66
+ /**
67
+ * Specifies ordering when multiple transactions occur on the same day, for
68
+ * the same position.
69
+ *
70
+ * @public
71
+ * @returns {Number}
72
+ */
73
+ get sequence() {
74
+ return this._sequence;
75
+ }
76
+
65
77
  /**
66
78
  * Indicates if the transaction was a trade.
67
79
  *
@@ -165,17 +177,6 @@ module.exports = (() => {
165
177
  return this._significant;
166
178
  }
167
179
 
168
- /**
169
- * Indicates if closing transaction quantities should be adjusted to zero out
170
- * the position, when they reach a threshold that approximates zero.
171
- *
172
- * @public
173
- * @returns {Boolean}
174
- */
175
- get forceZero() {
176
- return this._forceZero;
177
- }
178
-
179
180
  /**
180
181
  * A purchase.
181
182
  *
@@ -390,28 +391,28 @@ module.exports = (() => {
390
391
  }
391
392
  }
392
393
 
393
- const buy = new TransactionType('B', 'Buy', 'Buy', true, false, false, true, false, false, false, true, true, false);
394
- const sell = new TransactionType('S', 'Sell', 'Sell', false, true, false, false, true, false, false, false, true, true);
395
- const buyShort = new TransactionType('BS', 'Buy To Cover', 'Buy To Cover', true, false, false, false, true, false, false, false, true, true);
396
- const sellShort = new TransactionType('SS', 'Sell Short', 'Sell Short', false, true, false, true, false, false, false, true, true, false);
397
- const dividend = new TransactionType('DV', 'Dividend', 'Dividend', false, false, true, false, false, false, true, false, false, false);
398
- const dividendReinvest = new TransactionType('DX', 'Dividend (Reinvested)', 'Dividend Reinvest', false, false, false, true, false, false, true, false, false, false);
399
- const dividendStock = new TransactionType('DS', 'Dividend (Stock)', 'Dividend Stock', false, false, false, true, false, false, true, false, false, false);
400
- const split = new TransactionType('SP', 'Split', 'Split', false, false, false, true, false, false, true, false, false, false);
401
- const fee = new TransactionType('F', 'Fee', 'Fee', false, false, false, false, false, true, false, false, false, false);
402
- const feeUnits = new TransactionType('FU', 'Fee Units', 'Fee', false, false, false, false, true, false, false, false, false, false);
403
-
404
- const distributionCash = new TransactionType('DC', 'Distribution (Cash)', 'Cash Distribution', false, false, true, false, false, false, true, false, false, false);
405
- const distributionReinvest = new TransactionType('DY', 'Distribution (Reinvested)', 'Distribution Reinvest', false, false, false, true, false, false, true, false, false, false);
406
- const distributionFund = new TransactionType('DF', 'Distribution (Units)', 'Unit Distribution', false, false, false, true, false, false, true, false, false, false);
407
-
408
- const deposit = new TransactionType('D', 'Deposit', 'Deposit', false, false, false, false, false, false, false, true, true, true);
409
- const withdrawal = new TransactionType('W', 'Withdrawal', 'Withdrawal', false, false, false, false, false, false, false, true, true, true);
410
- const debit = new TransactionType('DR', 'Debit', 'Debit', false, false, false, false, false, false, false, true, true, false);
411
- const credit = new TransactionType('CR', 'Credit', 'Credit', false, false, false, false, false, false, false, true, true, false);
412
-
413
- const valuation = new TransactionType('V', 'Valuation', 'Valuation', false, false, false, false, false, false, false, false, false, false);
414
- const income = new TransactionType('I', 'Income', 'Income', false, false, true, false, false, false, false, false, false, false);
394
+ const buy = new TransactionType('B', 'Buy', 'Buy', 0, true, false, false, true, false, false, false, true, true);
395
+ const sell = new TransactionType('S', 'Sell', 'Sell', 0, false, true, false, false, true, false, false, false, true);
396
+ const buyShort = new TransactionType('BS', 'Buy To Cover', 'Buy To Cover', 0, true, false, false, false, true, false, false, false, true);
397
+ const sellShort = new TransactionType('SS', 'Sell Short', 'Sell Short', 0, false, true, false, true, false, false, false, true, true);
398
+ const dividend = new TransactionType('DV', 'Dividend', 'Dividend', 0, false, false, true, false, false, false, true, false, false);
399
+ const dividendReinvest = new TransactionType('DX', 'Dividend (Reinvested)', 'Dividend Reinvest', 1, false, false, false, true, false, false, true, false, false);
400
+ const dividendStock = new TransactionType('DS', 'Dividend (Stock)', 'Dividend Stock', 1, false, false, false, true, false, false, true, false, false);
401
+ const split = new TransactionType('SP', 'Split', 'Split', 2, false, false, false, true, false, false, true, false, false);
402
+ const fee = new TransactionType('F', 'Fee', 'Fee', 0, false, false, false, false, false, true, false, false, false);
403
+ const feeUnits = new TransactionType('FU', 'Fee Units', 'Fee', 0, false, false, false, false, true, false, false, false, false);
404
+
405
+ const distributionCash = new TransactionType('DC', 'Distribution (Cash)', 'Cash Distribution', 1, false, false, true, false, false, false, true, false, false);
406
+ const distributionReinvest = new TransactionType('DY', 'Distribution (Reinvested)', 'Distribution Reinvest', 1, false, false, false, true, false, false, true, false, false);
407
+ const distributionFund = new TransactionType('DF', 'Distribution (Units)', 'Unit Distribution', 1, false, false, false, true, false, false, true, false, false);
408
+
409
+ const deposit = new TransactionType('D', 'Deposit', 'Deposit', 0, false, false, false, false, false, false, false, true, true);
410
+ const withdrawal = new TransactionType('W', 'Withdrawal', 'Withdrawal', 0, false, false, false, false, false, false, false, true, true);
411
+ const debit = new TransactionType('DR', 'Debit', 'Debit', 0, false, false, false, false, false, false, false, true, true);
412
+ const credit = new TransactionType('CR', 'Credit', 'Credit', 0, false, false, false, false, false, false, false, true, true);
413
+
414
+ const valuation = new TransactionType('V', 'Valuation', 'Valuation', 0, false, false, false, false, false, false, false, false, false);
415
+ const income = new TransactionType('I', 'Income', 'Income', 0, false, false, true, false, false, false, false, false, false);
415
416
 
416
417
  return TransactionType;
417
418
  })();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@barchart/portfolio-api-common",
3
- "version": "1.2.51",
3
+ "version": "1.2.52",
4
4
  "description": "Common classes used by the Portfolio system",
5
5
  "author": {
6
6
  "name": "Bryan Ingle",
@@ -635,6 +635,7 @@ module.exports = (() => {
635
635
  * @param {String} code
636
636
  * @param {String} description
637
637
  * @param {String} display
638
+ * @param {Number} sequence
638
639
  * @param {Boolean} purchase
639
640
  * @param {Boolean} sale
640
641
  * @param {Boolean} income
@@ -644,13 +645,14 @@ module.exports = (() => {
644
645
  * @param {Boolean} corporateAction
645
646
  * @param {Boolean} initial
646
647
  * @param {Boolean} significant
647
- * @param {Boolean} forceZero
648
+ * @param {Boolean} eod
648
649
  */
649
650
  class TransactionType extends Enum {
650
- constructor(code, description, display, purchase, sale, income, opening, closing, fee, corporateAction, initial, significant, forceZero) {
651
+ constructor(code, description, display, sequence, purchase, sale, income, opening, closing, fee, corporateAction, initial, significant) {
651
652
  super(code, description);
652
653
 
653
654
  assert.argumentIsRequired(display, 'display', String);
655
+ assert.argumentIsRequired(sequence, 'sequence', Number);
654
656
  assert.argumentIsRequired(purchase, 'purchase', Boolean);
655
657
  assert.argumentIsRequired(sale, 'sale', Boolean);
656
658
  assert.argumentIsRequired(income, 'income', Boolean);
@@ -660,9 +662,9 @@ module.exports = (() => {
660
662
  assert.argumentIsRequired(corporateAction, 'corporateAction', Boolean);
661
663
  assert.argumentIsRequired(initial, 'initial', Boolean);
662
664
  assert.argumentIsRequired(significant, 'significant', Boolean);
663
- assert.argumentIsRequired(forceZero, 'forceZero', Boolean);
664
665
 
665
666
  this._display = display;
667
+ this._sequence = sequence;
666
668
  this._purchase = purchase;
667
669
  this._sale = sale;
668
670
  this._income = income;
@@ -672,7 +674,6 @@ module.exports = (() => {
672
674
  this._corporateAction = corporateAction;
673
675
  this._initial = initial;
674
676
  this._significant = significant;
675
- this._forceZero = forceZero;
676
677
  }
677
678
 
678
679
  /**
@@ -685,6 +686,17 @@ module.exports = (() => {
685
686
  return this._display;
686
687
  }
687
688
 
689
+ /**
690
+ * Specifies ordering when multiple transactions occur on the same day, for
691
+ * the same position.
692
+ *
693
+ * @public
694
+ * @returns {Number}
695
+ */
696
+ get sequence() {
697
+ return this._sequence;
698
+ }
699
+
688
700
  /**
689
701
  * Indicates if the transaction was a trade.
690
702
  *
@@ -788,17 +800,6 @@ module.exports = (() => {
788
800
  return this._significant;
789
801
  }
790
802
 
791
- /**
792
- * Indicates if closing transaction quantities should be adjusted to zero out
793
- * the position, when they reach a threshold that approximates zero.
794
- *
795
- * @public
796
- * @returns {Boolean}
797
- */
798
- get forceZero() {
799
- return this._forceZero;
800
- }
801
-
802
803
  /**
803
804
  * A purchase.
804
805
  *
@@ -1013,28 +1014,28 @@ module.exports = (() => {
1013
1014
  }
1014
1015
  }
1015
1016
 
1016
- const buy = new TransactionType('B', 'Buy', 'Buy', true, false, false, true, false, false, false, true, true, false);
1017
- const sell = new TransactionType('S', 'Sell', 'Sell', false, true, false, false, true, false, false, false, true, true);
1018
- const buyShort = new TransactionType('BS', 'Buy To Cover', 'Buy To Cover', true, false, false, false, true, false, false, false, true, true);
1019
- const sellShort = new TransactionType('SS', 'Sell Short', 'Sell Short', false, true, false, true, false, false, false, true, true, false);
1020
- const dividend = new TransactionType('DV', 'Dividend', 'Dividend', false, false, true, false, false, false, true, false, false, false);
1021
- const dividendReinvest = new TransactionType('DX', 'Dividend (Reinvested)', 'Dividend Reinvest', false, false, false, true, false, false, true, false, false, false);
1022
- const dividendStock = new TransactionType('DS', 'Dividend (Stock)', 'Dividend Stock', false, false, false, true, false, false, true, false, false, false);
1023
- const split = new TransactionType('SP', 'Split', 'Split', false, false, false, true, false, false, true, false, false, false);
1024
- const fee = new TransactionType('F', 'Fee', 'Fee', false, false, false, false, false, true, false, false, false, false);
1025
- const feeUnits = new TransactionType('FU', 'Fee Units', 'Fee', false, false, false, false, true, false, false, false, false, false);
1026
-
1027
- const distributionCash = new TransactionType('DC', 'Distribution (Cash)', 'Cash Distribution', false, false, true, false, false, false, true, false, false, false);
1028
- const distributionReinvest = new TransactionType('DY', 'Distribution (Reinvested)', 'Distribution Reinvest', false, false, false, true, false, false, true, false, false, false);
1029
- const distributionFund = new TransactionType('DF', 'Distribution (Units)', 'Unit Distribution', false, false, false, true, false, false, true, false, false, false);
1030
-
1031
- const deposit = new TransactionType('D', 'Deposit', 'Deposit', false, false, false, false, false, false, false, true, true, true);
1032
- const withdrawal = new TransactionType('W', 'Withdrawal', 'Withdrawal', false, false, false, false, false, false, false, true, true, true);
1033
- const debit = new TransactionType('DR', 'Debit', 'Debit', false, false, false, false, false, false, false, true, true, false);
1034
- const credit = new TransactionType('CR', 'Credit', 'Credit', false, false, false, false, false, false, false, true, true, false);
1035
-
1036
- const valuation = new TransactionType('V', 'Valuation', 'Valuation', false, false, false, false, false, false, false, false, false, false);
1037
- const income = new TransactionType('I', 'Income', 'Income', false, false, true, false, false, false, false, false, false, false);
1017
+ const buy = new TransactionType('B', 'Buy', 'Buy', 0, true, false, false, true, false, false, false, true, true);
1018
+ const sell = new TransactionType('S', 'Sell', 'Sell', 0, false, true, false, false, true, false, false, false, true);
1019
+ const buyShort = new TransactionType('BS', 'Buy To Cover', 'Buy To Cover', 0, true, false, false, false, true, false, false, false, true);
1020
+ const sellShort = new TransactionType('SS', 'Sell Short', 'Sell Short', 0, false, true, false, true, false, false, false, true, true);
1021
+ const dividend = new TransactionType('DV', 'Dividend', 'Dividend', 0, false, false, true, false, false, false, true, false, false);
1022
+ const dividendReinvest = new TransactionType('DX', 'Dividend (Reinvested)', 'Dividend Reinvest', 1, false, false, false, true, false, false, true, false, false);
1023
+ const dividendStock = new TransactionType('DS', 'Dividend (Stock)', 'Dividend Stock', 1, false, false, false, true, false, false, true, false, false);
1024
+ const split = new TransactionType('SP', 'Split', 'Split', 2, false, false, false, true, false, false, true, false, false);
1025
+ const fee = new TransactionType('F', 'Fee', 'Fee', 0, false, false, false, false, false, true, false, false, false);
1026
+ const feeUnits = new TransactionType('FU', 'Fee Units', 'Fee', 0, false, false, false, false, true, false, false, false, false);
1027
+
1028
+ const distributionCash = new TransactionType('DC', 'Distribution (Cash)', 'Cash Distribution', 1, false, false, true, false, false, false, true, false, false);
1029
+ const distributionReinvest = new TransactionType('DY', 'Distribution (Reinvested)', 'Distribution Reinvest', 1, false, false, false, true, false, false, true, false, false);
1030
+ const distributionFund = new TransactionType('DF', 'Distribution (Units)', 'Unit Distribution', 1, false, false, false, true, false, false, true, false, false);
1031
+
1032
+ const deposit = new TransactionType('D', 'Deposit', 'Deposit', 0, false, false, false, false, false, false, false, true, true);
1033
+ const withdrawal = new TransactionType('W', 'Withdrawal', 'Withdrawal', 0, false, false, false, false, false, false, false, true, true);
1034
+ const debit = new TransactionType('DR', 'Debit', 'Debit', 0, false, false, false, false, false, false, false, true, true);
1035
+ const credit = new TransactionType('CR', 'Credit', 'Credit', 0, false, false, false, false, false, false, false, true, true);
1036
+
1037
+ const valuation = new TransactionType('V', 'Valuation', 'Valuation', 0, false, false, false, false, false, false, false, false, false);
1038
+ const income = new TransactionType('I', 'Income', 'Income', 0, false, false, true, false, false, false, false, false, false);
1038
1039
 
1039
1040
  return TransactionType;
1040
1041
  })();