adaptic-backend 1.0.151 → 1.0.152

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.
Files changed (65) hide show
  1. package/Account.cjs +1029 -0
  2. package/Action.cjs +3460 -0
  3. package/Alert.cjs +3800 -0
  4. package/AlpacaAccount.cjs +2888 -0
  5. package/Asset.cjs +3659 -0
  6. package/Authenticator.cjs +1029 -0
  7. package/Customer.cjs +1029 -0
  8. package/NewsArticle.cjs +892 -0
  9. package/NewsArticleAssetSentiment.cjs +1243 -0
  10. package/Order.cjs +4500 -0
  11. package/Position.cjs +4288 -0
  12. package/Session.cjs +1029 -0
  13. package/StopLoss.cjs +1832 -0
  14. package/TakeProfit.cjs +1832 -0
  15. package/Trade.cjs +5276 -0
  16. package/User.cjs +3103 -0
  17. package/package.json +1 -1
  18. package/server/Account.d.ts.map +1 -1
  19. package/server/Account.js.map +1 -1
  20. package/server/Account.mjs +1029 -0
  21. package/server/Action.d.ts.map +1 -1
  22. package/server/Action.js.map +1 -1
  23. package/server/Action.mjs +3460 -0
  24. package/server/Alert.d.ts.map +1 -1
  25. package/server/Alert.js.map +1 -1
  26. package/server/Alert.mjs +3800 -0
  27. package/server/AlpacaAccount.d.ts.map +1 -1
  28. package/server/AlpacaAccount.js.map +1 -1
  29. package/server/AlpacaAccount.mjs +2888 -0
  30. package/server/Asset.d.ts.map +1 -1
  31. package/server/Asset.js.map +1 -1
  32. package/server/Asset.mjs +3659 -0
  33. package/server/Authenticator.d.ts.map +1 -1
  34. package/server/Authenticator.js.map +1 -1
  35. package/server/Authenticator.mjs +1029 -0
  36. package/server/Customer.d.ts.map +1 -1
  37. package/server/Customer.js.map +1 -1
  38. package/server/Customer.mjs +1029 -0
  39. package/server/NewsArticle.d.ts.map +1 -1
  40. package/server/NewsArticle.js.map +1 -1
  41. package/server/NewsArticle.mjs +892 -0
  42. package/server/NewsArticleAssetSentiment.d.ts.map +1 -1
  43. package/server/NewsArticleAssetSentiment.js.map +1 -1
  44. package/server/NewsArticleAssetSentiment.mjs +1243 -0
  45. package/server/Order.d.ts.map +1 -1
  46. package/server/Order.js.map +1 -1
  47. package/server/Order.mjs +4500 -0
  48. package/server/Position.d.ts.map +1 -1
  49. package/server/Position.js.map +1 -1
  50. package/server/Position.mjs +4288 -0
  51. package/server/Session.d.ts.map +1 -1
  52. package/server/Session.js.map +1 -1
  53. package/server/Session.mjs +1029 -0
  54. package/server/StopLoss.d.ts.map +1 -1
  55. package/server/StopLoss.js.map +1 -1
  56. package/server/StopLoss.mjs +1832 -0
  57. package/server/TakeProfit.d.ts.map +1 -1
  58. package/server/TakeProfit.js.map +1 -1
  59. package/server/TakeProfit.mjs +1832 -0
  60. package/server/Trade.d.ts.map +1 -1
  61. package/server/Trade.js.map +1 -1
  62. package/server/Trade.mjs +5276 -0
  63. package/server/User.d.ts.map +1 -1
  64. package/server/User.js.map +1 -1
  65. package/server/User.mjs +3103 -0
@@ -621,6 +621,88 @@ export const AlpacaAccount = {
621
621
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
622
622
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
623
623
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
624
+ orders: item.asset.orders ?
625
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
626
+ connect: item.asset.orders.map((item) => ({
627
+ id: item.id
628
+ }))
629
+ }
630
+ : { connectOrCreate: item.asset.orders.map((item) => ({
631
+ where: {
632
+ id: item.id !== undefined ? item.id : undefined,
633
+ },
634
+ create: {
635
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
636
+ qty: item.qty !== undefined ? item.qty : undefined,
637
+ notional: item.notional !== undefined ? item.notional : undefined,
638
+ side: item.side !== undefined ? item.side : undefined,
639
+ type: item.type !== undefined ? item.type : undefined,
640
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
641
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
642
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
643
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
644
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
645
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
646
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
647
+ status: item.status !== undefined ? item.status : undefined,
648
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
649
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
650
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
651
+ fee: item.fee !== undefined ? item.fee : undefined,
652
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
653
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
654
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
655
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
656
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
657
+ },
658
+ }))
659
+ } : undefined,
660
+ positions: item.asset.positions ?
661
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
662
+ connect: item.asset.positions.map((item) => ({
663
+ id: item.id
664
+ }))
665
+ }
666
+ : { connectOrCreate: item.asset.positions.map((item) => ({
667
+ where: {
668
+ id: item.id !== undefined ? item.id : undefined,
669
+ },
670
+ create: {
671
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
672
+ qty: item.qty !== undefined ? item.qty : undefined,
673
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
674
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
675
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
676
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
677
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
678
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
679
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
680
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
681
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
682
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
683
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
684
+ },
685
+ }))
686
+ } : undefined,
687
+ newsMentions: item.asset.newsMentions ?
688
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
689
+ connect: item.asset.newsMentions.map((item) => ({
690
+ id: item.id
691
+ }))
692
+ }
693
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
694
+ where: {
695
+ id: item.id !== undefined ? item.id : undefined,
696
+ url: item.url !== undefined ? item.url : undefined,
697
+ },
698
+ create: {
699
+ url: item.url !== undefined ? item.url : undefined,
700
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
701
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
702
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
703
+ },
704
+ }))
705
+ } : undefined,
624
706
  },
625
707
  }
626
708
  } : undefined,
@@ -640,6 +722,42 @@ export const AlpacaAccount = {
640
722
  note: item.note !== undefined ? item.note : undefined,
641
723
  status: item.status !== undefined ? item.status : undefined,
642
724
  fee: item.fee !== undefined ? item.fee : undefined,
725
+ order: item.order ?
726
+ typeof item.order === 'object' && Object.keys(item.order).length === 1 && Object.keys(item.order)[0] === 'id'
727
+ ? { connect: {
728
+ id: item.order.id
729
+ }
730
+ }
731
+ : { connectOrCreate: {
732
+ where: {
733
+ id: item.order.id !== undefined ? item.order.id : undefined,
734
+ },
735
+ create: {
736
+ clientOrderId: item.order.clientOrderId !== undefined ? item.order.clientOrderId : undefined,
737
+ qty: item.order.qty !== undefined ? item.order.qty : undefined,
738
+ notional: item.order.notional !== undefined ? item.order.notional : undefined,
739
+ side: item.order.side !== undefined ? item.order.side : undefined,
740
+ type: item.order.type !== undefined ? item.order.type : undefined,
741
+ orderClass: item.order.orderClass !== undefined ? item.order.orderClass : undefined,
742
+ timeInForce: item.order.timeInForce !== undefined ? item.order.timeInForce : undefined,
743
+ limitPrice: item.order.limitPrice !== undefined ? item.order.limitPrice : undefined,
744
+ stopPrice: item.order.stopPrice !== undefined ? item.order.stopPrice : undefined,
745
+ trailPrice: item.order.trailPrice !== undefined ? item.order.trailPrice : undefined,
746
+ trailPercent: item.order.trailPercent !== undefined ? item.order.trailPercent : undefined,
747
+ extendedHours: item.order.extendedHours !== undefined ? item.order.extendedHours : undefined,
748
+ status: item.order.status !== undefined ? item.order.status : undefined,
749
+ submittedAt: item.order.submittedAt !== undefined ? item.order.submittedAt : undefined,
750
+ filledAt: item.order.filledAt !== undefined ? item.order.filledAt : undefined,
751
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? item.order.filledAvgPrice : undefined,
752
+ fee: item.order.fee !== undefined ? item.order.fee : undefined,
753
+ strikePrice: item.order.strikePrice !== undefined ? item.order.strikePrice : undefined,
754
+ expirationDate: item.order.expirationDate !== undefined ? item.order.expirationDate : undefined,
755
+ optionType: item.order.optionType !== undefined ? item.order.optionType : undefined,
756
+ stopLossId: item.order.stopLossId !== undefined ? item.order.stopLossId : undefined,
757
+ takeProfitId: item.order.takeProfitId !== undefined ? item.order.takeProfitId : undefined,
758
+ },
759
+ }
760
+ } : undefined,
643
761
  },
644
762
  }))
645
763
  } : undefined,
@@ -727,6 +845,31 @@ export const AlpacaAccount = {
727
845
  note: item.action.note !== undefined ? item.action.note : undefined,
728
846
  status: item.action.status !== undefined ? item.action.status : undefined,
729
847
  fee: item.action.fee !== undefined ? item.action.fee : undefined,
848
+ trade: item.action.trade ?
849
+ typeof item.action.trade === 'object' && Object.keys(item.action.trade).length === 1 && Object.keys(item.action.trade)[0] === 'id'
850
+ ? { connect: {
851
+ id: item.action.trade.id
852
+ }
853
+ }
854
+ : { connectOrCreate: {
855
+ where: {
856
+ id: item.action.trade.id !== undefined ? item.action.trade.id : undefined,
857
+ },
858
+ create: {
859
+ qty: item.action.trade.qty !== undefined ? item.action.trade.qty : undefined,
860
+ price: item.action.trade.price !== undefined ? item.action.trade.price : undefined,
861
+ total: item.action.trade.total !== undefined ? item.action.trade.total : undefined,
862
+ optionType: item.action.trade.optionType !== undefined ? item.action.trade.optionType : undefined,
863
+ signal: item.action.trade.signal !== undefined ? item.action.trade.signal : undefined,
864
+ strategy: item.action.trade.strategy !== undefined ? item.action.trade.strategy : undefined,
865
+ analysis: item.action.trade.analysis !== undefined ? item.action.trade.analysis : undefined,
866
+ summary: item.action.trade.summary !== undefined ? item.action.trade.summary : undefined,
867
+ confidence: item.action.trade.confidence !== undefined ? item.action.trade.confidence : undefined,
868
+ timestamp: item.action.trade.timestamp !== undefined ? item.action.trade.timestamp : undefined,
869
+ status: item.action.trade.status !== undefined ? item.action.trade.status : undefined,
870
+ },
871
+ }
872
+ } : undefined,
730
873
  },
731
874
  }
732
875
  } : undefined,
@@ -798,6 +941,77 @@ export const AlpacaAccount = {
798
941
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
799
942
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
800
943
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
944
+ trades: item.asset.trades ?
945
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
946
+ connect: item.asset.trades.map((item) => ({
947
+ id: item.id
948
+ }))
949
+ }
950
+ : { connectOrCreate: item.asset.trades.map((item) => ({
951
+ where: {
952
+ id: item.id !== undefined ? item.id : undefined,
953
+ },
954
+ create: {
955
+ qty: item.qty !== undefined ? item.qty : undefined,
956
+ price: item.price !== undefined ? item.price : undefined,
957
+ total: item.total !== undefined ? item.total : undefined,
958
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
959
+ signal: item.signal !== undefined ? item.signal : undefined,
960
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
961
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
962
+ summary: item.summary !== undefined ? item.summary : undefined,
963
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
964
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
965
+ status: item.status !== undefined ? item.status : undefined,
966
+ },
967
+ }))
968
+ } : undefined,
969
+ positions: item.asset.positions ?
970
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
971
+ connect: item.asset.positions.map((item) => ({
972
+ id: item.id
973
+ }))
974
+ }
975
+ : { connectOrCreate: item.asset.positions.map((item) => ({
976
+ where: {
977
+ id: item.id !== undefined ? item.id : undefined,
978
+ },
979
+ create: {
980
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
981
+ qty: item.qty !== undefined ? item.qty : undefined,
982
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
983
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
984
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
985
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
986
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
987
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
988
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
989
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
990
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
991
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
992
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
993
+ },
994
+ }))
995
+ } : undefined,
996
+ newsMentions: item.asset.newsMentions ?
997
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
998
+ connect: item.asset.newsMentions.map((item) => ({
999
+ id: item.id
1000
+ }))
1001
+ }
1002
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
1003
+ where: {
1004
+ id: item.id !== undefined ? item.id : undefined,
1005
+ url: item.url !== undefined ? item.url : undefined,
1006
+ },
1007
+ create: {
1008
+ url: item.url !== undefined ? item.url : undefined,
1009
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
1010
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
1011
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
1012
+ },
1013
+ }))
1014
+ } : undefined,
801
1015
  },
802
1016
  }
803
1017
  } : undefined,
@@ -896,6 +1110,86 @@ export const AlpacaAccount = {
896
1110
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
897
1111
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
898
1112
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
1113
+ trades: item.asset.trades ?
1114
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1115
+ connect: item.asset.trades.map((item) => ({
1116
+ id: item.id
1117
+ }))
1118
+ }
1119
+ : { connectOrCreate: item.asset.trades.map((item) => ({
1120
+ where: {
1121
+ id: item.id !== undefined ? item.id : undefined,
1122
+ },
1123
+ create: {
1124
+ qty: item.qty !== undefined ? item.qty : undefined,
1125
+ price: item.price !== undefined ? item.price : undefined,
1126
+ total: item.total !== undefined ? item.total : undefined,
1127
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1128
+ signal: item.signal !== undefined ? item.signal : undefined,
1129
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
1130
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
1131
+ summary: item.summary !== undefined ? item.summary : undefined,
1132
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
1133
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
1134
+ status: item.status !== undefined ? item.status : undefined,
1135
+ },
1136
+ }))
1137
+ } : undefined,
1138
+ orders: item.asset.orders ?
1139
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1140
+ connect: item.asset.orders.map((item) => ({
1141
+ id: item.id
1142
+ }))
1143
+ }
1144
+ : { connectOrCreate: item.asset.orders.map((item) => ({
1145
+ where: {
1146
+ id: item.id !== undefined ? item.id : undefined,
1147
+ },
1148
+ create: {
1149
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
1150
+ qty: item.qty !== undefined ? item.qty : undefined,
1151
+ notional: item.notional !== undefined ? item.notional : undefined,
1152
+ side: item.side !== undefined ? item.side : undefined,
1153
+ type: item.type !== undefined ? item.type : undefined,
1154
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
1155
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
1156
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
1157
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
1158
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
1159
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
1160
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
1161
+ status: item.status !== undefined ? item.status : undefined,
1162
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
1163
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
1164
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
1165
+ fee: item.fee !== undefined ? item.fee : undefined,
1166
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
1167
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
1168
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1169
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
1170
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
1171
+ },
1172
+ }))
1173
+ } : undefined,
1174
+ newsMentions: item.asset.newsMentions ?
1175
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
1176
+ connect: item.asset.newsMentions.map((item) => ({
1177
+ id: item.id
1178
+ }))
1179
+ }
1180
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
1181
+ where: {
1182
+ id: item.id !== undefined ? item.id : undefined,
1183
+ url: item.url !== undefined ? item.url : undefined,
1184
+ },
1185
+ create: {
1186
+ url: item.url !== undefined ? item.url : undefined,
1187
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
1188
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
1189
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
1190
+ },
1191
+ }))
1192
+ } : undefined,
899
1193
  },
900
1194
  }
901
1195
  } : undefined,
@@ -1564,6 +1858,205 @@ export const AlpacaAccount = {
1564
1858
  bidPrice: item.asset.bidPrice !== undefined ? {
1565
1859
  set: item.asset.bidPrice
1566
1860
  } : undefined,
1861
+ orders: item.asset.orders ? {
1862
+ upsert: item.asset.orders.map((item) => ({
1863
+ where: {
1864
+ id: item.id !== undefined ? item.id : undefined,
1865
+ },
1866
+ update: {
1867
+ id: item.id !== undefined ? {
1868
+ set: item.id
1869
+ } : undefined,
1870
+ clientOrderId: item.clientOrderId !== undefined ? {
1871
+ set: item.clientOrderId
1872
+ } : undefined,
1873
+ qty: item.qty !== undefined ? {
1874
+ set: item.qty
1875
+ } : undefined,
1876
+ notional: item.notional !== undefined ? {
1877
+ set: item.notional
1878
+ } : undefined,
1879
+ side: item.side !== undefined ? {
1880
+ set: item.side
1881
+ } : undefined,
1882
+ type: item.type !== undefined ? {
1883
+ set: item.type
1884
+ } : undefined,
1885
+ orderClass: item.orderClass !== undefined ? {
1886
+ set: item.orderClass
1887
+ } : undefined,
1888
+ timeInForce: item.timeInForce !== undefined ? {
1889
+ set: item.timeInForce
1890
+ } : undefined,
1891
+ limitPrice: item.limitPrice !== undefined ? {
1892
+ set: item.limitPrice
1893
+ } : undefined,
1894
+ stopPrice: item.stopPrice !== undefined ? {
1895
+ set: item.stopPrice
1896
+ } : undefined,
1897
+ trailPrice: item.trailPrice !== undefined ? {
1898
+ set: item.trailPrice
1899
+ } : undefined,
1900
+ trailPercent: item.trailPercent !== undefined ? {
1901
+ set: item.trailPercent
1902
+ } : undefined,
1903
+ extendedHours: item.extendedHours !== undefined ? {
1904
+ set: item.extendedHours
1905
+ } : undefined,
1906
+ status: item.status !== undefined ? {
1907
+ set: item.status
1908
+ } : undefined,
1909
+ submittedAt: item.submittedAt !== undefined ? {
1910
+ set: item.submittedAt
1911
+ } : undefined,
1912
+ filledAt: item.filledAt !== undefined ? {
1913
+ set: item.filledAt
1914
+ } : undefined,
1915
+ filledAvgPrice: item.filledAvgPrice !== undefined ? {
1916
+ set: item.filledAvgPrice
1917
+ } : undefined,
1918
+ fee: item.fee !== undefined ? {
1919
+ set: item.fee
1920
+ } : undefined,
1921
+ strikePrice: item.strikePrice !== undefined ? {
1922
+ set: item.strikePrice
1923
+ } : undefined,
1924
+ expirationDate: item.expirationDate !== undefined ? {
1925
+ set: item.expirationDate
1926
+ } : undefined,
1927
+ optionType: item.optionType !== undefined ? {
1928
+ set: item.optionType
1929
+ } : undefined,
1930
+ stopLossId: item.stopLossId !== undefined ? {
1931
+ set: item.stopLossId
1932
+ } : undefined,
1933
+ takeProfitId: item.takeProfitId !== undefined ? {
1934
+ set: item.takeProfitId
1935
+ } : undefined,
1936
+ },
1937
+ create: {
1938
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
1939
+ qty: item.qty !== undefined ? item.qty : undefined,
1940
+ notional: item.notional !== undefined ? item.notional : undefined,
1941
+ side: item.side !== undefined ? item.side : undefined,
1942
+ type: item.type !== undefined ? item.type : undefined,
1943
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
1944
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
1945
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
1946
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
1947
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
1948
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
1949
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
1950
+ status: item.status !== undefined ? item.status : undefined,
1951
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
1952
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
1953
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
1954
+ fee: item.fee !== undefined ? item.fee : undefined,
1955
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
1956
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
1957
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
1958
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
1959
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
1960
+ },
1961
+ }))
1962
+ } : undefined,
1963
+ positions: item.asset.positions ? {
1964
+ upsert: item.asset.positions.map((item) => ({
1965
+ where: {
1966
+ id: item.id !== undefined ? item.id : undefined,
1967
+ },
1968
+ update: {
1969
+ id: item.id !== undefined ? {
1970
+ set: item.id
1971
+ } : undefined,
1972
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
1973
+ set: item.averageEntryPrice
1974
+ } : undefined,
1975
+ qty: item.qty !== undefined ? {
1976
+ set: item.qty
1977
+ } : undefined,
1978
+ qtyAvailable: item.qtyAvailable !== undefined ? {
1979
+ set: item.qtyAvailable
1980
+ } : undefined,
1981
+ marketValue: item.marketValue !== undefined ? {
1982
+ set: item.marketValue
1983
+ } : undefined,
1984
+ costBasis: item.costBasis !== undefined ? {
1985
+ set: item.costBasis
1986
+ } : undefined,
1987
+ unrealizedPL: item.unrealizedPL !== undefined ? {
1988
+ set: item.unrealizedPL
1989
+ } : undefined,
1990
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
1991
+ set: item.unrealizedPLPC
1992
+ } : undefined,
1993
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
1994
+ set: item.unrealisedIntradayPL
1995
+ } : undefined,
1996
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
1997
+ set: item.unrealisedIntradayPLPC
1998
+ } : undefined,
1999
+ currentPrice: item.currentPrice !== undefined ? {
2000
+ set: item.currentPrice
2001
+ } : undefined,
2002
+ lastTradePrice: item.lastTradePrice !== undefined ? {
2003
+ set: item.lastTradePrice
2004
+ } : undefined,
2005
+ changeToday: item.changeToday !== undefined ? {
2006
+ set: item.changeToday
2007
+ } : undefined,
2008
+ assetMarginable: item.assetMarginable !== undefined ? {
2009
+ set: item.assetMarginable
2010
+ } : undefined,
2011
+ },
2012
+ create: {
2013
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2014
+ qty: item.qty !== undefined ? item.qty : undefined,
2015
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2016
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2017
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2018
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2019
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2020
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2021
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2022
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2023
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2024
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2025
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2026
+ },
2027
+ }))
2028
+ } : undefined,
2029
+ newsMentions: item.asset.newsMentions ? {
2030
+ upsert: item.asset.newsMentions.map((item) => ({
2031
+ where: {
2032
+ id: item.id !== undefined ? item.id : undefined,
2033
+ url: item.url !== undefined ? item.url : undefined,
2034
+ },
2035
+ update: {
2036
+ id: item.id !== undefined ? {
2037
+ set: item.id
2038
+ } : undefined,
2039
+ url: item.url !== undefined ? {
2040
+ set: item.url
2041
+ } : undefined,
2042
+ relevancyScore: item.relevancyScore !== undefined ? {
2043
+ set: item.relevancyScore
2044
+ } : undefined,
2045
+ sentimentScore: item.sentimentScore !== undefined ? {
2046
+ set: item.sentimentScore
2047
+ } : undefined,
2048
+ sentimentLabel: item.sentimentLabel !== undefined ? {
2049
+ set: item.sentimentLabel
2050
+ } : undefined,
2051
+ },
2052
+ create: {
2053
+ url: item.url !== undefined ? item.url : undefined,
2054
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
2055
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
2056
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
2057
+ },
2058
+ }))
2059
+ } : undefined,
1567
2060
  },
1568
2061
  create: {
1569
2062
  symbol: item.asset.symbol !== undefined ? item.asset.symbol : undefined,
@@ -1621,6 +2114,88 @@ export const AlpacaAccount = {
1621
2114
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
1622
2115
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
1623
2116
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
2117
+ orders: item.asset.orders ?
2118
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2119
+ connect: item.asset.orders.map((item) => ({
2120
+ id: item.id
2121
+ }))
2122
+ }
2123
+ : { connectOrCreate: item.asset.orders.map((item) => ({
2124
+ where: {
2125
+ id: item.id !== undefined ? item.id : undefined,
2126
+ },
2127
+ create: {
2128
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
2129
+ qty: item.qty !== undefined ? item.qty : undefined,
2130
+ notional: item.notional !== undefined ? item.notional : undefined,
2131
+ side: item.side !== undefined ? item.side : undefined,
2132
+ type: item.type !== undefined ? item.type : undefined,
2133
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
2134
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
2135
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
2136
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
2137
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
2138
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
2139
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
2140
+ status: item.status !== undefined ? item.status : undefined,
2141
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
2142
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
2143
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
2144
+ fee: item.fee !== undefined ? item.fee : undefined,
2145
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
2146
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
2147
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2148
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
2149
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
2150
+ },
2151
+ }))
2152
+ } : undefined,
2153
+ positions: item.asset.positions ?
2154
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2155
+ connect: item.asset.positions.map((item) => ({
2156
+ id: item.id
2157
+ }))
2158
+ }
2159
+ : { connectOrCreate: item.asset.positions.map((item) => ({
2160
+ where: {
2161
+ id: item.id !== undefined ? item.id : undefined,
2162
+ },
2163
+ create: {
2164
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2165
+ qty: item.qty !== undefined ? item.qty : undefined,
2166
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2167
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2168
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2169
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2170
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2171
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2172
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2173
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2174
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2175
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2176
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2177
+ },
2178
+ }))
2179
+ } : undefined,
2180
+ newsMentions: item.asset.newsMentions ?
2181
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2182
+ connect: item.asset.newsMentions.map((item) => ({
2183
+ id: item.id
2184
+ }))
2185
+ }
2186
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
2187
+ where: {
2188
+ id: item.id !== undefined ? item.id : undefined,
2189
+ url: item.url !== undefined ? item.url : undefined,
2190
+ },
2191
+ create: {
2192
+ url: item.url !== undefined ? item.url : undefined,
2193
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
2194
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
2195
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
2196
+ },
2197
+ }))
2198
+ } : undefined,
1624
2199
  },
1625
2200
  }
1626
2201
  } : undefined,
@@ -1648,6 +2223,110 @@ export const AlpacaAccount = {
1648
2223
  fee: item.fee !== undefined ? {
1649
2224
  set: item.fee
1650
2225
  } : undefined,
2226
+ order: item.order ? {
2227
+ upsert: {
2228
+ where: {
2229
+ id: item.order.id !== undefined ? {
2230
+ equals: item.order.id
2231
+ } : undefined,
2232
+ },
2233
+ update: {
2234
+ id: item.order.id !== undefined ? {
2235
+ set: item.order.id
2236
+ } : undefined,
2237
+ clientOrderId: item.order.clientOrderId !== undefined ? {
2238
+ set: item.order.clientOrderId
2239
+ } : undefined,
2240
+ qty: item.order.qty !== undefined ? {
2241
+ set: item.order.qty
2242
+ } : undefined,
2243
+ notional: item.order.notional !== undefined ? {
2244
+ set: item.order.notional
2245
+ } : undefined,
2246
+ side: item.order.side !== undefined ? {
2247
+ set: item.order.side
2248
+ } : undefined,
2249
+ type: item.order.type !== undefined ? {
2250
+ set: item.order.type
2251
+ } : undefined,
2252
+ orderClass: item.order.orderClass !== undefined ? {
2253
+ set: item.order.orderClass
2254
+ } : undefined,
2255
+ timeInForce: item.order.timeInForce !== undefined ? {
2256
+ set: item.order.timeInForce
2257
+ } : undefined,
2258
+ limitPrice: item.order.limitPrice !== undefined ? {
2259
+ set: item.order.limitPrice
2260
+ } : undefined,
2261
+ stopPrice: item.order.stopPrice !== undefined ? {
2262
+ set: item.order.stopPrice
2263
+ } : undefined,
2264
+ trailPrice: item.order.trailPrice !== undefined ? {
2265
+ set: item.order.trailPrice
2266
+ } : undefined,
2267
+ trailPercent: item.order.trailPercent !== undefined ? {
2268
+ set: item.order.trailPercent
2269
+ } : undefined,
2270
+ extendedHours: item.order.extendedHours !== undefined ? {
2271
+ set: item.order.extendedHours
2272
+ } : undefined,
2273
+ status: item.order.status !== undefined ? {
2274
+ set: item.order.status
2275
+ } : undefined,
2276
+ submittedAt: item.order.submittedAt !== undefined ? {
2277
+ set: item.order.submittedAt
2278
+ } : undefined,
2279
+ filledAt: item.order.filledAt !== undefined ? {
2280
+ set: item.order.filledAt
2281
+ } : undefined,
2282
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? {
2283
+ set: item.order.filledAvgPrice
2284
+ } : undefined,
2285
+ fee: item.order.fee !== undefined ? {
2286
+ set: item.order.fee
2287
+ } : undefined,
2288
+ strikePrice: item.order.strikePrice !== undefined ? {
2289
+ set: item.order.strikePrice
2290
+ } : undefined,
2291
+ expirationDate: item.order.expirationDate !== undefined ? {
2292
+ set: item.order.expirationDate
2293
+ } : undefined,
2294
+ optionType: item.order.optionType !== undefined ? {
2295
+ set: item.order.optionType
2296
+ } : undefined,
2297
+ stopLossId: item.order.stopLossId !== undefined ? {
2298
+ set: item.order.stopLossId
2299
+ } : undefined,
2300
+ takeProfitId: item.order.takeProfitId !== undefined ? {
2301
+ set: item.order.takeProfitId
2302
+ } : undefined,
2303
+ },
2304
+ create: {
2305
+ clientOrderId: item.order.clientOrderId !== undefined ? item.order.clientOrderId : undefined,
2306
+ qty: item.order.qty !== undefined ? item.order.qty : undefined,
2307
+ notional: item.order.notional !== undefined ? item.order.notional : undefined,
2308
+ side: item.order.side !== undefined ? item.order.side : undefined,
2309
+ type: item.order.type !== undefined ? item.order.type : undefined,
2310
+ orderClass: item.order.orderClass !== undefined ? item.order.orderClass : undefined,
2311
+ timeInForce: item.order.timeInForce !== undefined ? item.order.timeInForce : undefined,
2312
+ limitPrice: item.order.limitPrice !== undefined ? item.order.limitPrice : undefined,
2313
+ stopPrice: item.order.stopPrice !== undefined ? item.order.stopPrice : undefined,
2314
+ trailPrice: item.order.trailPrice !== undefined ? item.order.trailPrice : undefined,
2315
+ trailPercent: item.order.trailPercent !== undefined ? item.order.trailPercent : undefined,
2316
+ extendedHours: item.order.extendedHours !== undefined ? item.order.extendedHours : undefined,
2317
+ status: item.order.status !== undefined ? item.order.status : undefined,
2318
+ submittedAt: item.order.submittedAt !== undefined ? item.order.submittedAt : undefined,
2319
+ filledAt: item.order.filledAt !== undefined ? item.order.filledAt : undefined,
2320
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? item.order.filledAvgPrice : undefined,
2321
+ fee: item.order.fee !== undefined ? item.order.fee : undefined,
2322
+ strikePrice: item.order.strikePrice !== undefined ? item.order.strikePrice : undefined,
2323
+ expirationDate: item.order.expirationDate !== undefined ? item.order.expirationDate : undefined,
2324
+ optionType: item.order.optionType !== undefined ? item.order.optionType : undefined,
2325
+ stopLossId: item.order.stopLossId !== undefined ? item.order.stopLossId : undefined,
2326
+ takeProfitId: item.order.takeProfitId !== undefined ? item.order.takeProfitId : undefined,
2327
+ },
2328
+ }
2329
+ } : undefined,
1651
2330
  },
1652
2331
  create: {
1653
2332
  sequence: item.sequence !== undefined ? item.sequence : undefined,
@@ -1655,6 +2334,42 @@ export const AlpacaAccount = {
1655
2334
  note: item.note !== undefined ? item.note : undefined,
1656
2335
  status: item.status !== undefined ? item.status : undefined,
1657
2336
  fee: item.fee !== undefined ? item.fee : undefined,
2337
+ order: item.order ?
2338
+ typeof item.order === 'object' && Object.keys(item.order).length === 1 && Object.keys(item.order)[0] === 'id'
2339
+ ? { connect: {
2340
+ id: item.order.id
2341
+ }
2342
+ }
2343
+ : { connectOrCreate: {
2344
+ where: {
2345
+ id: item.order.id !== undefined ? item.order.id : undefined,
2346
+ },
2347
+ create: {
2348
+ clientOrderId: item.order.clientOrderId !== undefined ? item.order.clientOrderId : undefined,
2349
+ qty: item.order.qty !== undefined ? item.order.qty : undefined,
2350
+ notional: item.order.notional !== undefined ? item.order.notional : undefined,
2351
+ side: item.order.side !== undefined ? item.order.side : undefined,
2352
+ type: item.order.type !== undefined ? item.order.type : undefined,
2353
+ orderClass: item.order.orderClass !== undefined ? item.order.orderClass : undefined,
2354
+ timeInForce: item.order.timeInForce !== undefined ? item.order.timeInForce : undefined,
2355
+ limitPrice: item.order.limitPrice !== undefined ? item.order.limitPrice : undefined,
2356
+ stopPrice: item.order.stopPrice !== undefined ? item.order.stopPrice : undefined,
2357
+ trailPrice: item.order.trailPrice !== undefined ? item.order.trailPrice : undefined,
2358
+ trailPercent: item.order.trailPercent !== undefined ? item.order.trailPercent : undefined,
2359
+ extendedHours: item.order.extendedHours !== undefined ? item.order.extendedHours : undefined,
2360
+ status: item.order.status !== undefined ? item.order.status : undefined,
2361
+ submittedAt: item.order.submittedAt !== undefined ? item.order.submittedAt : undefined,
2362
+ filledAt: item.order.filledAt !== undefined ? item.order.filledAt : undefined,
2363
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? item.order.filledAvgPrice : undefined,
2364
+ fee: item.order.fee !== undefined ? item.order.fee : undefined,
2365
+ strikePrice: item.order.strikePrice !== undefined ? item.order.strikePrice : undefined,
2366
+ expirationDate: item.order.expirationDate !== undefined ? item.order.expirationDate : undefined,
2367
+ optionType: item.order.optionType !== undefined ? item.order.optionType : undefined,
2368
+ stopLossId: item.order.stopLossId !== undefined ? item.order.stopLossId : undefined,
2369
+ takeProfitId: item.order.takeProfitId !== undefined ? item.order.takeProfitId : undefined,
2370
+ },
2371
+ }
2372
+ } : undefined,
1658
2373
  },
1659
2374
  }))
1660
2375
  } : undefined,
@@ -1739,6 +2454,88 @@ export const AlpacaAccount = {
1739
2454
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
1740
2455
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
1741
2456
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
2457
+ orders: item.asset.orders ?
2458
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2459
+ connect: item.asset.orders.map((item) => ({
2460
+ id: item.id
2461
+ }))
2462
+ }
2463
+ : { connectOrCreate: item.asset.orders.map((item) => ({
2464
+ where: {
2465
+ id: item.id !== undefined ? item.id : undefined,
2466
+ },
2467
+ create: {
2468
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
2469
+ qty: item.qty !== undefined ? item.qty : undefined,
2470
+ notional: item.notional !== undefined ? item.notional : undefined,
2471
+ side: item.side !== undefined ? item.side : undefined,
2472
+ type: item.type !== undefined ? item.type : undefined,
2473
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
2474
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
2475
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
2476
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
2477
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
2478
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
2479
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
2480
+ status: item.status !== undefined ? item.status : undefined,
2481
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
2482
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
2483
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
2484
+ fee: item.fee !== undefined ? item.fee : undefined,
2485
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
2486
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
2487
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
2488
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
2489
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
2490
+ },
2491
+ }))
2492
+ } : undefined,
2493
+ positions: item.asset.positions ?
2494
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2495
+ connect: item.asset.positions.map((item) => ({
2496
+ id: item.id
2497
+ }))
2498
+ }
2499
+ : { connectOrCreate: item.asset.positions.map((item) => ({
2500
+ where: {
2501
+ id: item.id !== undefined ? item.id : undefined,
2502
+ },
2503
+ create: {
2504
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
2505
+ qty: item.qty !== undefined ? item.qty : undefined,
2506
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
2507
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
2508
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
2509
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
2510
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
2511
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
2512
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
2513
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
2514
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
2515
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
2516
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
2517
+ },
2518
+ }))
2519
+ } : undefined,
2520
+ newsMentions: item.asset.newsMentions ?
2521
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
2522
+ connect: item.asset.newsMentions.map((item) => ({
2523
+ id: item.id
2524
+ }))
2525
+ }
2526
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
2527
+ where: {
2528
+ id: item.id !== undefined ? item.id : undefined,
2529
+ url: item.url !== undefined ? item.url : undefined,
2530
+ },
2531
+ create: {
2532
+ url: item.url !== undefined ? item.url : undefined,
2533
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
2534
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
2535
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
2536
+ },
2537
+ }))
2538
+ } : undefined,
1742
2539
  },
1743
2540
  }
1744
2541
  } : undefined,
@@ -1758,6 +2555,42 @@ export const AlpacaAccount = {
1758
2555
  note: item.note !== undefined ? item.note : undefined,
1759
2556
  status: item.status !== undefined ? item.status : undefined,
1760
2557
  fee: item.fee !== undefined ? item.fee : undefined,
2558
+ order: item.order ?
2559
+ typeof item.order === 'object' && Object.keys(item.order).length === 1 && Object.keys(item.order)[0] === 'id'
2560
+ ? { connect: {
2561
+ id: item.order.id
2562
+ }
2563
+ }
2564
+ : { connectOrCreate: {
2565
+ where: {
2566
+ id: item.order.id !== undefined ? item.order.id : undefined,
2567
+ },
2568
+ create: {
2569
+ clientOrderId: item.order.clientOrderId !== undefined ? item.order.clientOrderId : undefined,
2570
+ qty: item.order.qty !== undefined ? item.order.qty : undefined,
2571
+ notional: item.order.notional !== undefined ? item.order.notional : undefined,
2572
+ side: item.order.side !== undefined ? item.order.side : undefined,
2573
+ type: item.order.type !== undefined ? item.order.type : undefined,
2574
+ orderClass: item.order.orderClass !== undefined ? item.order.orderClass : undefined,
2575
+ timeInForce: item.order.timeInForce !== undefined ? item.order.timeInForce : undefined,
2576
+ limitPrice: item.order.limitPrice !== undefined ? item.order.limitPrice : undefined,
2577
+ stopPrice: item.order.stopPrice !== undefined ? item.order.stopPrice : undefined,
2578
+ trailPrice: item.order.trailPrice !== undefined ? item.order.trailPrice : undefined,
2579
+ trailPercent: item.order.trailPercent !== undefined ? item.order.trailPercent : undefined,
2580
+ extendedHours: item.order.extendedHours !== undefined ? item.order.extendedHours : undefined,
2581
+ status: item.order.status !== undefined ? item.order.status : undefined,
2582
+ submittedAt: item.order.submittedAt !== undefined ? item.order.submittedAt : undefined,
2583
+ filledAt: item.order.filledAt !== undefined ? item.order.filledAt : undefined,
2584
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? item.order.filledAvgPrice : undefined,
2585
+ fee: item.order.fee !== undefined ? item.order.fee : undefined,
2586
+ strikePrice: item.order.strikePrice !== undefined ? item.order.strikePrice : undefined,
2587
+ expirationDate: item.order.expirationDate !== undefined ? item.order.expirationDate : undefined,
2588
+ optionType: item.order.optionType !== undefined ? item.order.optionType : undefined,
2589
+ stopLossId: item.order.stopLossId !== undefined ? item.order.stopLossId : undefined,
2590
+ takeProfitId: item.order.takeProfitId !== undefined ? item.order.takeProfitId : undefined,
2591
+ },
2592
+ }
2593
+ } : undefined,
1761
2594
  },
1762
2595
  }))
1763
2596
  } : undefined,
@@ -1913,6 +2746,66 @@ export const AlpacaAccount = {
1913
2746
  fee: item.action.fee !== undefined ? {
1914
2747
  set: item.action.fee
1915
2748
  } : undefined,
2749
+ trade: item.action.trade ? {
2750
+ upsert: {
2751
+ where: {
2752
+ id: item.action.trade.id !== undefined ? {
2753
+ equals: item.action.trade.id
2754
+ } : undefined,
2755
+ },
2756
+ update: {
2757
+ id: item.action.trade.id !== undefined ? {
2758
+ set: item.action.trade.id
2759
+ } : undefined,
2760
+ qty: item.action.trade.qty !== undefined ? {
2761
+ set: item.action.trade.qty
2762
+ } : undefined,
2763
+ price: item.action.trade.price !== undefined ? {
2764
+ set: item.action.trade.price
2765
+ } : undefined,
2766
+ total: item.action.trade.total !== undefined ? {
2767
+ set: item.action.trade.total
2768
+ } : undefined,
2769
+ optionType: item.action.trade.optionType !== undefined ? {
2770
+ set: item.action.trade.optionType
2771
+ } : undefined,
2772
+ signal: item.action.trade.signal !== undefined ? {
2773
+ set: item.action.trade.signal
2774
+ } : undefined,
2775
+ strategy: item.action.trade.strategy !== undefined ? {
2776
+ set: item.action.trade.strategy
2777
+ } : undefined,
2778
+ analysis: item.action.trade.analysis !== undefined ? {
2779
+ set: item.action.trade.analysis
2780
+ } : undefined,
2781
+ summary: item.action.trade.summary !== undefined ? {
2782
+ set: item.action.trade.summary
2783
+ } : undefined,
2784
+ confidence: item.action.trade.confidence !== undefined ? {
2785
+ set: item.action.trade.confidence
2786
+ } : undefined,
2787
+ timestamp: item.action.trade.timestamp !== undefined ? {
2788
+ set: item.action.trade.timestamp
2789
+ } : undefined,
2790
+ status: item.action.trade.status !== undefined ? {
2791
+ set: item.action.trade.status
2792
+ } : undefined,
2793
+ },
2794
+ create: {
2795
+ qty: item.action.trade.qty !== undefined ? item.action.trade.qty : undefined,
2796
+ price: item.action.trade.price !== undefined ? item.action.trade.price : undefined,
2797
+ total: item.action.trade.total !== undefined ? item.action.trade.total : undefined,
2798
+ optionType: item.action.trade.optionType !== undefined ? item.action.trade.optionType : undefined,
2799
+ signal: item.action.trade.signal !== undefined ? item.action.trade.signal : undefined,
2800
+ strategy: item.action.trade.strategy !== undefined ? item.action.trade.strategy : undefined,
2801
+ analysis: item.action.trade.analysis !== undefined ? item.action.trade.analysis : undefined,
2802
+ summary: item.action.trade.summary !== undefined ? item.action.trade.summary : undefined,
2803
+ confidence: item.action.trade.confidence !== undefined ? item.action.trade.confidence : undefined,
2804
+ timestamp: item.action.trade.timestamp !== undefined ? item.action.trade.timestamp : undefined,
2805
+ status: item.action.trade.status !== undefined ? item.action.trade.status : undefined,
2806
+ },
2807
+ }
2808
+ } : undefined,
1916
2809
  },
1917
2810
  create: {
1918
2811
  sequence: item.action.sequence !== undefined ? item.action.sequence : undefined,
@@ -1920,6 +2813,31 @@ export const AlpacaAccount = {
1920
2813
  note: item.action.note !== undefined ? item.action.note : undefined,
1921
2814
  status: item.action.status !== undefined ? item.action.status : undefined,
1922
2815
  fee: item.action.fee !== undefined ? item.action.fee : undefined,
2816
+ trade: item.action.trade ?
2817
+ typeof item.action.trade === 'object' && Object.keys(item.action.trade).length === 1 && Object.keys(item.action.trade)[0] === 'id'
2818
+ ? { connect: {
2819
+ id: item.action.trade.id
2820
+ }
2821
+ }
2822
+ : { connectOrCreate: {
2823
+ where: {
2824
+ id: item.action.trade.id !== undefined ? item.action.trade.id : undefined,
2825
+ },
2826
+ create: {
2827
+ qty: item.action.trade.qty !== undefined ? item.action.trade.qty : undefined,
2828
+ price: item.action.trade.price !== undefined ? item.action.trade.price : undefined,
2829
+ total: item.action.trade.total !== undefined ? item.action.trade.total : undefined,
2830
+ optionType: item.action.trade.optionType !== undefined ? item.action.trade.optionType : undefined,
2831
+ signal: item.action.trade.signal !== undefined ? item.action.trade.signal : undefined,
2832
+ strategy: item.action.trade.strategy !== undefined ? item.action.trade.strategy : undefined,
2833
+ analysis: item.action.trade.analysis !== undefined ? item.action.trade.analysis : undefined,
2834
+ summary: item.action.trade.summary !== undefined ? item.action.trade.summary : undefined,
2835
+ confidence: item.action.trade.confidence !== undefined ? item.action.trade.confidence : undefined,
2836
+ timestamp: item.action.trade.timestamp !== undefined ? item.action.trade.timestamp : undefined,
2837
+ status: item.action.trade.status !== undefined ? item.action.trade.status : undefined,
2838
+ },
2839
+ }
2840
+ } : undefined,
1923
2841
  },
1924
2842
  }
1925
2843
  } : undefined,
@@ -2105,6 +3023,161 @@ export const AlpacaAccount = {
2105
3023
  bidPrice: item.asset.bidPrice !== undefined ? {
2106
3024
  set: item.asset.bidPrice
2107
3025
  } : undefined,
3026
+ trades: item.asset.trades ? {
3027
+ upsert: item.asset.trades.map((item) => ({
3028
+ where: {
3029
+ id: item.id !== undefined ? item.id : undefined,
3030
+ },
3031
+ update: {
3032
+ id: item.id !== undefined ? {
3033
+ set: item.id
3034
+ } : undefined,
3035
+ qty: item.qty !== undefined ? {
3036
+ set: item.qty
3037
+ } : undefined,
3038
+ price: item.price !== undefined ? {
3039
+ set: item.price
3040
+ } : undefined,
3041
+ total: item.total !== undefined ? {
3042
+ set: item.total
3043
+ } : undefined,
3044
+ optionType: item.optionType !== undefined ? {
3045
+ set: item.optionType
3046
+ } : undefined,
3047
+ signal: item.signal !== undefined ? {
3048
+ set: item.signal
3049
+ } : undefined,
3050
+ strategy: item.strategy !== undefined ? {
3051
+ set: item.strategy
3052
+ } : undefined,
3053
+ analysis: item.analysis !== undefined ? {
3054
+ set: item.analysis
3055
+ } : undefined,
3056
+ summary: item.summary !== undefined ? {
3057
+ set: item.summary
3058
+ } : undefined,
3059
+ confidence: item.confidence !== undefined ? {
3060
+ set: item.confidence
3061
+ } : undefined,
3062
+ timestamp: item.timestamp !== undefined ? {
3063
+ set: item.timestamp
3064
+ } : undefined,
3065
+ status: item.status !== undefined ? {
3066
+ set: item.status
3067
+ } : undefined,
3068
+ },
3069
+ create: {
3070
+ qty: item.qty !== undefined ? item.qty : undefined,
3071
+ price: item.price !== undefined ? item.price : undefined,
3072
+ total: item.total !== undefined ? item.total : undefined,
3073
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3074
+ signal: item.signal !== undefined ? item.signal : undefined,
3075
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3076
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3077
+ summary: item.summary !== undefined ? item.summary : undefined,
3078
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3079
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3080
+ status: item.status !== undefined ? item.status : undefined,
3081
+ },
3082
+ }))
3083
+ } : undefined,
3084
+ positions: item.asset.positions ? {
3085
+ upsert: item.asset.positions.map((item) => ({
3086
+ where: {
3087
+ id: item.id !== undefined ? item.id : undefined,
3088
+ },
3089
+ update: {
3090
+ id: item.id !== undefined ? {
3091
+ set: item.id
3092
+ } : undefined,
3093
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
3094
+ set: item.averageEntryPrice
3095
+ } : undefined,
3096
+ qty: item.qty !== undefined ? {
3097
+ set: item.qty
3098
+ } : undefined,
3099
+ qtyAvailable: item.qtyAvailable !== undefined ? {
3100
+ set: item.qtyAvailable
3101
+ } : undefined,
3102
+ marketValue: item.marketValue !== undefined ? {
3103
+ set: item.marketValue
3104
+ } : undefined,
3105
+ costBasis: item.costBasis !== undefined ? {
3106
+ set: item.costBasis
3107
+ } : undefined,
3108
+ unrealizedPL: item.unrealizedPL !== undefined ? {
3109
+ set: item.unrealizedPL
3110
+ } : undefined,
3111
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
3112
+ set: item.unrealizedPLPC
3113
+ } : undefined,
3114
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
3115
+ set: item.unrealisedIntradayPL
3116
+ } : undefined,
3117
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
3118
+ set: item.unrealisedIntradayPLPC
3119
+ } : undefined,
3120
+ currentPrice: item.currentPrice !== undefined ? {
3121
+ set: item.currentPrice
3122
+ } : undefined,
3123
+ lastTradePrice: item.lastTradePrice !== undefined ? {
3124
+ set: item.lastTradePrice
3125
+ } : undefined,
3126
+ changeToday: item.changeToday !== undefined ? {
3127
+ set: item.changeToday
3128
+ } : undefined,
3129
+ assetMarginable: item.assetMarginable !== undefined ? {
3130
+ set: item.assetMarginable
3131
+ } : undefined,
3132
+ },
3133
+ create: {
3134
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3135
+ qty: item.qty !== undefined ? item.qty : undefined,
3136
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3137
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3138
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3139
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3140
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3141
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3142
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3143
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3144
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3145
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3146
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3147
+ },
3148
+ }))
3149
+ } : undefined,
3150
+ newsMentions: item.asset.newsMentions ? {
3151
+ upsert: item.asset.newsMentions.map((item) => ({
3152
+ where: {
3153
+ id: item.id !== undefined ? item.id : undefined,
3154
+ url: item.url !== undefined ? item.url : undefined,
3155
+ },
3156
+ update: {
3157
+ id: item.id !== undefined ? {
3158
+ set: item.id
3159
+ } : undefined,
3160
+ url: item.url !== undefined ? {
3161
+ set: item.url
3162
+ } : undefined,
3163
+ relevancyScore: item.relevancyScore !== undefined ? {
3164
+ set: item.relevancyScore
3165
+ } : undefined,
3166
+ sentimentScore: item.sentimentScore !== undefined ? {
3167
+ set: item.sentimentScore
3168
+ } : undefined,
3169
+ sentimentLabel: item.sentimentLabel !== undefined ? {
3170
+ set: item.sentimentLabel
3171
+ } : undefined,
3172
+ },
3173
+ create: {
3174
+ url: item.url !== undefined ? item.url : undefined,
3175
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
3176
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
3177
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
3178
+ },
3179
+ }))
3180
+ } : undefined,
2108
3181
  },
2109
3182
  create: {
2110
3183
  symbol: item.asset.symbol !== undefined ? item.asset.symbol : undefined,
@@ -2162,6 +3235,77 @@ export const AlpacaAccount = {
2162
3235
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
2163
3236
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
2164
3237
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
3238
+ trades: item.asset.trades ?
3239
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3240
+ connect: item.asset.trades.map((item) => ({
3241
+ id: item.id
3242
+ }))
3243
+ }
3244
+ : { connectOrCreate: item.asset.trades.map((item) => ({
3245
+ where: {
3246
+ id: item.id !== undefined ? item.id : undefined,
3247
+ },
3248
+ create: {
3249
+ qty: item.qty !== undefined ? item.qty : undefined,
3250
+ price: item.price !== undefined ? item.price : undefined,
3251
+ total: item.total !== undefined ? item.total : undefined,
3252
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3253
+ signal: item.signal !== undefined ? item.signal : undefined,
3254
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3255
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3256
+ summary: item.summary !== undefined ? item.summary : undefined,
3257
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3258
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3259
+ status: item.status !== undefined ? item.status : undefined,
3260
+ },
3261
+ }))
3262
+ } : undefined,
3263
+ positions: item.asset.positions ?
3264
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3265
+ connect: item.asset.positions.map((item) => ({
3266
+ id: item.id
3267
+ }))
3268
+ }
3269
+ : { connectOrCreate: item.asset.positions.map((item) => ({
3270
+ where: {
3271
+ id: item.id !== undefined ? item.id : undefined,
3272
+ },
3273
+ create: {
3274
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3275
+ qty: item.qty !== undefined ? item.qty : undefined,
3276
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3277
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3278
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3279
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3280
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3281
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3282
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3283
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3284
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3285
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3286
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3287
+ },
3288
+ }))
3289
+ } : undefined,
3290
+ newsMentions: item.asset.newsMentions ?
3291
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3292
+ connect: item.asset.newsMentions.map((item) => ({
3293
+ id: item.id
3294
+ }))
3295
+ }
3296
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
3297
+ where: {
3298
+ id: item.id !== undefined ? item.id : undefined,
3299
+ url: item.url !== undefined ? item.url : undefined,
3300
+ },
3301
+ create: {
3302
+ url: item.url !== undefined ? item.url : undefined,
3303
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
3304
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
3305
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
3306
+ },
3307
+ }))
3308
+ } : undefined,
2165
3309
  },
2166
3310
  }
2167
3311
  } : undefined,
@@ -2237,6 +3381,31 @@ export const AlpacaAccount = {
2237
3381
  note: item.action.note !== undefined ? item.action.note : undefined,
2238
3382
  status: item.action.status !== undefined ? item.action.status : undefined,
2239
3383
  fee: item.action.fee !== undefined ? item.action.fee : undefined,
3384
+ trade: item.action.trade ?
3385
+ typeof item.action.trade === 'object' && Object.keys(item.action.trade).length === 1 && Object.keys(item.action.trade)[0] === 'id'
3386
+ ? { connect: {
3387
+ id: item.action.trade.id
3388
+ }
3389
+ }
3390
+ : { connectOrCreate: {
3391
+ where: {
3392
+ id: item.action.trade.id !== undefined ? item.action.trade.id : undefined,
3393
+ },
3394
+ create: {
3395
+ qty: item.action.trade.qty !== undefined ? item.action.trade.qty : undefined,
3396
+ price: item.action.trade.price !== undefined ? item.action.trade.price : undefined,
3397
+ total: item.action.trade.total !== undefined ? item.action.trade.total : undefined,
3398
+ optionType: item.action.trade.optionType !== undefined ? item.action.trade.optionType : undefined,
3399
+ signal: item.action.trade.signal !== undefined ? item.action.trade.signal : undefined,
3400
+ strategy: item.action.trade.strategy !== undefined ? item.action.trade.strategy : undefined,
3401
+ analysis: item.action.trade.analysis !== undefined ? item.action.trade.analysis : undefined,
3402
+ summary: item.action.trade.summary !== undefined ? item.action.trade.summary : undefined,
3403
+ confidence: item.action.trade.confidence !== undefined ? item.action.trade.confidence : undefined,
3404
+ timestamp: item.action.trade.timestamp !== undefined ? item.action.trade.timestamp : undefined,
3405
+ status: item.action.trade.status !== undefined ? item.action.trade.status : undefined,
3406
+ },
3407
+ }
3408
+ } : undefined,
2240
3409
  },
2241
3410
  }
2242
3411
  } : undefined,
@@ -2308,6 +3477,77 @@ export const AlpacaAccount = {
2308
3477
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
2309
3478
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
2310
3479
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
3480
+ trades: item.asset.trades ?
3481
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3482
+ connect: item.asset.trades.map((item) => ({
3483
+ id: item.id
3484
+ }))
3485
+ }
3486
+ : { connectOrCreate: item.asset.trades.map((item) => ({
3487
+ where: {
3488
+ id: item.id !== undefined ? item.id : undefined,
3489
+ },
3490
+ create: {
3491
+ qty: item.qty !== undefined ? item.qty : undefined,
3492
+ price: item.price !== undefined ? item.price : undefined,
3493
+ total: item.total !== undefined ? item.total : undefined,
3494
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3495
+ signal: item.signal !== undefined ? item.signal : undefined,
3496
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3497
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3498
+ summary: item.summary !== undefined ? item.summary : undefined,
3499
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3500
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3501
+ status: item.status !== undefined ? item.status : undefined,
3502
+ },
3503
+ }))
3504
+ } : undefined,
3505
+ positions: item.asset.positions ?
3506
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3507
+ connect: item.asset.positions.map((item) => ({
3508
+ id: item.id
3509
+ }))
3510
+ }
3511
+ : { connectOrCreate: item.asset.positions.map((item) => ({
3512
+ where: {
3513
+ id: item.id !== undefined ? item.id : undefined,
3514
+ },
3515
+ create: {
3516
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
3517
+ qty: item.qty !== undefined ? item.qty : undefined,
3518
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
3519
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
3520
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
3521
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
3522
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
3523
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
3524
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
3525
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
3526
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
3527
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
3528
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
3529
+ },
3530
+ }))
3531
+ } : undefined,
3532
+ newsMentions: item.asset.newsMentions ?
3533
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
3534
+ connect: item.asset.newsMentions.map((item) => ({
3535
+ id: item.id
3536
+ }))
3537
+ }
3538
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
3539
+ where: {
3540
+ id: item.id !== undefined ? item.id : undefined,
3541
+ url: item.url !== undefined ? item.url : undefined,
3542
+ },
3543
+ create: {
3544
+ url: item.url !== undefined ? item.url : undefined,
3545
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
3546
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
3547
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
3548
+ },
3549
+ }))
3550
+ } : undefined,
2311
3551
  },
2312
3552
  }
2313
3553
  } : undefined,
@@ -2544,6 +3784,197 @@ export const AlpacaAccount = {
2544
3784
  bidPrice: item.asset.bidPrice !== undefined ? {
2545
3785
  set: item.asset.bidPrice
2546
3786
  } : undefined,
3787
+ trades: item.asset.trades ? {
3788
+ upsert: item.asset.trades.map((item) => ({
3789
+ where: {
3790
+ id: item.id !== undefined ? item.id : undefined,
3791
+ },
3792
+ update: {
3793
+ id: item.id !== undefined ? {
3794
+ set: item.id
3795
+ } : undefined,
3796
+ qty: item.qty !== undefined ? {
3797
+ set: item.qty
3798
+ } : undefined,
3799
+ price: item.price !== undefined ? {
3800
+ set: item.price
3801
+ } : undefined,
3802
+ total: item.total !== undefined ? {
3803
+ set: item.total
3804
+ } : undefined,
3805
+ optionType: item.optionType !== undefined ? {
3806
+ set: item.optionType
3807
+ } : undefined,
3808
+ signal: item.signal !== undefined ? {
3809
+ set: item.signal
3810
+ } : undefined,
3811
+ strategy: item.strategy !== undefined ? {
3812
+ set: item.strategy
3813
+ } : undefined,
3814
+ analysis: item.analysis !== undefined ? {
3815
+ set: item.analysis
3816
+ } : undefined,
3817
+ summary: item.summary !== undefined ? {
3818
+ set: item.summary
3819
+ } : undefined,
3820
+ confidence: item.confidence !== undefined ? {
3821
+ set: item.confidence
3822
+ } : undefined,
3823
+ timestamp: item.timestamp !== undefined ? {
3824
+ set: item.timestamp
3825
+ } : undefined,
3826
+ status: item.status !== undefined ? {
3827
+ set: item.status
3828
+ } : undefined,
3829
+ },
3830
+ create: {
3831
+ qty: item.qty !== undefined ? item.qty : undefined,
3832
+ price: item.price !== undefined ? item.price : undefined,
3833
+ total: item.total !== undefined ? item.total : undefined,
3834
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3835
+ signal: item.signal !== undefined ? item.signal : undefined,
3836
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
3837
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
3838
+ summary: item.summary !== undefined ? item.summary : undefined,
3839
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
3840
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
3841
+ status: item.status !== undefined ? item.status : undefined,
3842
+ },
3843
+ }))
3844
+ } : undefined,
3845
+ orders: item.asset.orders ? {
3846
+ upsert: item.asset.orders.map((item) => ({
3847
+ where: {
3848
+ id: item.id !== undefined ? item.id : undefined,
3849
+ },
3850
+ update: {
3851
+ id: item.id !== undefined ? {
3852
+ set: item.id
3853
+ } : undefined,
3854
+ clientOrderId: item.clientOrderId !== undefined ? {
3855
+ set: item.clientOrderId
3856
+ } : undefined,
3857
+ qty: item.qty !== undefined ? {
3858
+ set: item.qty
3859
+ } : undefined,
3860
+ notional: item.notional !== undefined ? {
3861
+ set: item.notional
3862
+ } : undefined,
3863
+ side: item.side !== undefined ? {
3864
+ set: item.side
3865
+ } : undefined,
3866
+ type: item.type !== undefined ? {
3867
+ set: item.type
3868
+ } : undefined,
3869
+ orderClass: item.orderClass !== undefined ? {
3870
+ set: item.orderClass
3871
+ } : undefined,
3872
+ timeInForce: item.timeInForce !== undefined ? {
3873
+ set: item.timeInForce
3874
+ } : undefined,
3875
+ limitPrice: item.limitPrice !== undefined ? {
3876
+ set: item.limitPrice
3877
+ } : undefined,
3878
+ stopPrice: item.stopPrice !== undefined ? {
3879
+ set: item.stopPrice
3880
+ } : undefined,
3881
+ trailPrice: item.trailPrice !== undefined ? {
3882
+ set: item.trailPrice
3883
+ } : undefined,
3884
+ trailPercent: item.trailPercent !== undefined ? {
3885
+ set: item.trailPercent
3886
+ } : undefined,
3887
+ extendedHours: item.extendedHours !== undefined ? {
3888
+ set: item.extendedHours
3889
+ } : undefined,
3890
+ status: item.status !== undefined ? {
3891
+ set: item.status
3892
+ } : undefined,
3893
+ submittedAt: item.submittedAt !== undefined ? {
3894
+ set: item.submittedAt
3895
+ } : undefined,
3896
+ filledAt: item.filledAt !== undefined ? {
3897
+ set: item.filledAt
3898
+ } : undefined,
3899
+ filledAvgPrice: item.filledAvgPrice !== undefined ? {
3900
+ set: item.filledAvgPrice
3901
+ } : undefined,
3902
+ fee: item.fee !== undefined ? {
3903
+ set: item.fee
3904
+ } : undefined,
3905
+ strikePrice: item.strikePrice !== undefined ? {
3906
+ set: item.strikePrice
3907
+ } : undefined,
3908
+ expirationDate: item.expirationDate !== undefined ? {
3909
+ set: item.expirationDate
3910
+ } : undefined,
3911
+ optionType: item.optionType !== undefined ? {
3912
+ set: item.optionType
3913
+ } : undefined,
3914
+ stopLossId: item.stopLossId !== undefined ? {
3915
+ set: item.stopLossId
3916
+ } : undefined,
3917
+ takeProfitId: item.takeProfitId !== undefined ? {
3918
+ set: item.takeProfitId
3919
+ } : undefined,
3920
+ },
3921
+ create: {
3922
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
3923
+ qty: item.qty !== undefined ? item.qty : undefined,
3924
+ notional: item.notional !== undefined ? item.notional : undefined,
3925
+ side: item.side !== undefined ? item.side : undefined,
3926
+ type: item.type !== undefined ? item.type : undefined,
3927
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
3928
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
3929
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
3930
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
3931
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
3932
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
3933
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
3934
+ status: item.status !== undefined ? item.status : undefined,
3935
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
3936
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
3937
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
3938
+ fee: item.fee !== undefined ? item.fee : undefined,
3939
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
3940
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
3941
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
3942
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
3943
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
3944
+ },
3945
+ }))
3946
+ } : undefined,
3947
+ newsMentions: item.asset.newsMentions ? {
3948
+ upsert: item.asset.newsMentions.map((item) => ({
3949
+ where: {
3950
+ id: item.id !== undefined ? item.id : undefined,
3951
+ url: item.url !== undefined ? item.url : undefined,
3952
+ },
3953
+ update: {
3954
+ id: item.id !== undefined ? {
3955
+ set: item.id
3956
+ } : undefined,
3957
+ url: item.url !== undefined ? {
3958
+ set: item.url
3959
+ } : undefined,
3960
+ relevancyScore: item.relevancyScore !== undefined ? {
3961
+ set: item.relevancyScore
3962
+ } : undefined,
3963
+ sentimentScore: item.sentimentScore !== undefined ? {
3964
+ set: item.sentimentScore
3965
+ } : undefined,
3966
+ sentimentLabel: item.sentimentLabel !== undefined ? {
3967
+ set: item.sentimentLabel
3968
+ } : undefined,
3969
+ },
3970
+ create: {
3971
+ url: item.url !== undefined ? item.url : undefined,
3972
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
3973
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
3974
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
3975
+ },
3976
+ }))
3977
+ } : undefined,
2547
3978
  },
2548
3979
  create: {
2549
3980
  symbol: item.asset.symbol !== undefined ? item.asset.symbol : undefined,
@@ -2601,6 +4032,86 @@ export const AlpacaAccount = {
2601
4032
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
2602
4033
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
2603
4034
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
4035
+ trades: item.asset.trades ?
4036
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4037
+ connect: item.asset.trades.map((item) => ({
4038
+ id: item.id
4039
+ }))
4040
+ }
4041
+ : { connectOrCreate: item.asset.trades.map((item) => ({
4042
+ where: {
4043
+ id: item.id !== undefined ? item.id : undefined,
4044
+ },
4045
+ create: {
4046
+ qty: item.qty !== undefined ? item.qty : undefined,
4047
+ price: item.price !== undefined ? item.price : undefined,
4048
+ total: item.total !== undefined ? item.total : undefined,
4049
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
4050
+ signal: item.signal !== undefined ? item.signal : undefined,
4051
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
4052
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
4053
+ summary: item.summary !== undefined ? item.summary : undefined,
4054
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
4055
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
4056
+ status: item.status !== undefined ? item.status : undefined,
4057
+ },
4058
+ }))
4059
+ } : undefined,
4060
+ orders: item.asset.orders ?
4061
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4062
+ connect: item.asset.orders.map((item) => ({
4063
+ id: item.id
4064
+ }))
4065
+ }
4066
+ : { connectOrCreate: item.asset.orders.map((item) => ({
4067
+ where: {
4068
+ id: item.id !== undefined ? item.id : undefined,
4069
+ },
4070
+ create: {
4071
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
4072
+ qty: item.qty !== undefined ? item.qty : undefined,
4073
+ notional: item.notional !== undefined ? item.notional : undefined,
4074
+ side: item.side !== undefined ? item.side : undefined,
4075
+ type: item.type !== undefined ? item.type : undefined,
4076
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
4077
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
4078
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
4079
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
4080
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
4081
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
4082
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
4083
+ status: item.status !== undefined ? item.status : undefined,
4084
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
4085
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
4086
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
4087
+ fee: item.fee !== undefined ? item.fee : undefined,
4088
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
4089
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
4090
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
4091
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
4092
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
4093
+ },
4094
+ }))
4095
+ } : undefined,
4096
+ newsMentions: item.asset.newsMentions ?
4097
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4098
+ connect: item.asset.newsMentions.map((item) => ({
4099
+ id: item.id
4100
+ }))
4101
+ }
4102
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
4103
+ where: {
4104
+ id: item.id !== undefined ? item.id : undefined,
4105
+ url: item.url !== undefined ? item.url : undefined,
4106
+ },
4107
+ create: {
4108
+ url: item.url !== undefined ? item.url : undefined,
4109
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
4110
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
4111
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
4112
+ },
4113
+ }))
4114
+ } : undefined,
2604
4115
  },
2605
4116
  }
2606
4117
  } : undefined,
@@ -2687,6 +4198,86 @@ export const AlpacaAccount = {
2687
4198
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
2688
4199
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
2689
4200
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
4201
+ trades: item.asset.trades ?
4202
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4203
+ connect: item.asset.trades.map((item) => ({
4204
+ id: item.id
4205
+ }))
4206
+ }
4207
+ : { connectOrCreate: item.asset.trades.map((item) => ({
4208
+ where: {
4209
+ id: item.id !== undefined ? item.id : undefined,
4210
+ },
4211
+ create: {
4212
+ qty: item.qty !== undefined ? item.qty : undefined,
4213
+ price: item.price !== undefined ? item.price : undefined,
4214
+ total: item.total !== undefined ? item.total : undefined,
4215
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
4216
+ signal: item.signal !== undefined ? item.signal : undefined,
4217
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
4218
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
4219
+ summary: item.summary !== undefined ? item.summary : undefined,
4220
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
4221
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
4222
+ status: item.status !== undefined ? item.status : undefined,
4223
+ },
4224
+ }))
4225
+ } : undefined,
4226
+ orders: item.asset.orders ?
4227
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4228
+ connect: item.asset.orders.map((item) => ({
4229
+ id: item.id
4230
+ }))
4231
+ }
4232
+ : { connectOrCreate: item.asset.orders.map((item) => ({
4233
+ where: {
4234
+ id: item.id !== undefined ? item.id : undefined,
4235
+ },
4236
+ create: {
4237
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
4238
+ qty: item.qty !== undefined ? item.qty : undefined,
4239
+ notional: item.notional !== undefined ? item.notional : undefined,
4240
+ side: item.side !== undefined ? item.side : undefined,
4241
+ type: item.type !== undefined ? item.type : undefined,
4242
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
4243
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
4244
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
4245
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
4246
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
4247
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
4248
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
4249
+ status: item.status !== undefined ? item.status : undefined,
4250
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
4251
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
4252
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
4253
+ fee: item.fee !== undefined ? item.fee : undefined,
4254
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
4255
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
4256
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
4257
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
4258
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
4259
+ },
4260
+ }))
4261
+ } : undefined,
4262
+ newsMentions: item.asset.newsMentions ?
4263
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
4264
+ connect: item.asset.newsMentions.map((item) => ({
4265
+ id: item.id
4266
+ }))
4267
+ }
4268
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
4269
+ where: {
4270
+ id: item.id !== undefined ? item.id : undefined,
4271
+ url: item.url !== undefined ? item.url : undefined,
4272
+ },
4273
+ create: {
4274
+ url: item.url !== undefined ? item.url : undefined,
4275
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
4276
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
4277
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
4278
+ },
4279
+ }))
4280
+ } : undefined,
2690
4281
  },
2691
4282
  }
2692
4283
  } : undefined,
@@ -3320,6 +4911,205 @@ export const AlpacaAccount = {
3320
4911
  bidPrice: item.asset.bidPrice !== undefined ? {
3321
4912
  set: item.asset.bidPrice
3322
4913
  } : undefined,
4914
+ orders: item.asset.orders ? {
4915
+ upsert: item.asset.orders.map((item) => ({
4916
+ where: {
4917
+ id: item.id !== undefined ? item.id : undefined,
4918
+ },
4919
+ update: {
4920
+ id: item.id !== undefined ? {
4921
+ set: item.id
4922
+ } : undefined,
4923
+ clientOrderId: item.clientOrderId !== undefined ? {
4924
+ set: item.clientOrderId
4925
+ } : undefined,
4926
+ qty: item.qty !== undefined ? {
4927
+ set: item.qty
4928
+ } : undefined,
4929
+ notional: item.notional !== undefined ? {
4930
+ set: item.notional
4931
+ } : undefined,
4932
+ side: item.side !== undefined ? {
4933
+ set: item.side
4934
+ } : undefined,
4935
+ type: item.type !== undefined ? {
4936
+ set: item.type
4937
+ } : undefined,
4938
+ orderClass: item.orderClass !== undefined ? {
4939
+ set: item.orderClass
4940
+ } : undefined,
4941
+ timeInForce: item.timeInForce !== undefined ? {
4942
+ set: item.timeInForce
4943
+ } : undefined,
4944
+ limitPrice: item.limitPrice !== undefined ? {
4945
+ set: item.limitPrice
4946
+ } : undefined,
4947
+ stopPrice: item.stopPrice !== undefined ? {
4948
+ set: item.stopPrice
4949
+ } : undefined,
4950
+ trailPrice: item.trailPrice !== undefined ? {
4951
+ set: item.trailPrice
4952
+ } : undefined,
4953
+ trailPercent: item.trailPercent !== undefined ? {
4954
+ set: item.trailPercent
4955
+ } : undefined,
4956
+ extendedHours: item.extendedHours !== undefined ? {
4957
+ set: item.extendedHours
4958
+ } : undefined,
4959
+ status: item.status !== undefined ? {
4960
+ set: item.status
4961
+ } : undefined,
4962
+ submittedAt: item.submittedAt !== undefined ? {
4963
+ set: item.submittedAt
4964
+ } : undefined,
4965
+ filledAt: item.filledAt !== undefined ? {
4966
+ set: item.filledAt
4967
+ } : undefined,
4968
+ filledAvgPrice: item.filledAvgPrice !== undefined ? {
4969
+ set: item.filledAvgPrice
4970
+ } : undefined,
4971
+ fee: item.fee !== undefined ? {
4972
+ set: item.fee
4973
+ } : undefined,
4974
+ strikePrice: item.strikePrice !== undefined ? {
4975
+ set: item.strikePrice
4976
+ } : undefined,
4977
+ expirationDate: item.expirationDate !== undefined ? {
4978
+ set: item.expirationDate
4979
+ } : undefined,
4980
+ optionType: item.optionType !== undefined ? {
4981
+ set: item.optionType
4982
+ } : undefined,
4983
+ stopLossId: item.stopLossId !== undefined ? {
4984
+ set: item.stopLossId
4985
+ } : undefined,
4986
+ takeProfitId: item.takeProfitId !== undefined ? {
4987
+ set: item.takeProfitId
4988
+ } : undefined,
4989
+ },
4990
+ create: {
4991
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
4992
+ qty: item.qty !== undefined ? item.qty : undefined,
4993
+ notional: item.notional !== undefined ? item.notional : undefined,
4994
+ side: item.side !== undefined ? item.side : undefined,
4995
+ type: item.type !== undefined ? item.type : undefined,
4996
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
4997
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
4998
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
4999
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
5000
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
5001
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
5002
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
5003
+ status: item.status !== undefined ? item.status : undefined,
5004
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
5005
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
5006
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
5007
+ fee: item.fee !== undefined ? item.fee : undefined,
5008
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
5009
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
5010
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
5011
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
5012
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
5013
+ },
5014
+ }))
5015
+ } : undefined,
5016
+ positions: item.asset.positions ? {
5017
+ upsert: item.asset.positions.map((item) => ({
5018
+ where: {
5019
+ id: item.id !== undefined ? item.id : undefined,
5020
+ },
5021
+ update: {
5022
+ id: item.id !== undefined ? {
5023
+ set: item.id
5024
+ } : undefined,
5025
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
5026
+ set: item.averageEntryPrice
5027
+ } : undefined,
5028
+ qty: item.qty !== undefined ? {
5029
+ set: item.qty
5030
+ } : undefined,
5031
+ qtyAvailable: item.qtyAvailable !== undefined ? {
5032
+ set: item.qtyAvailable
5033
+ } : undefined,
5034
+ marketValue: item.marketValue !== undefined ? {
5035
+ set: item.marketValue
5036
+ } : undefined,
5037
+ costBasis: item.costBasis !== undefined ? {
5038
+ set: item.costBasis
5039
+ } : undefined,
5040
+ unrealizedPL: item.unrealizedPL !== undefined ? {
5041
+ set: item.unrealizedPL
5042
+ } : undefined,
5043
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
5044
+ set: item.unrealizedPLPC
5045
+ } : undefined,
5046
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
5047
+ set: item.unrealisedIntradayPL
5048
+ } : undefined,
5049
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
5050
+ set: item.unrealisedIntradayPLPC
5051
+ } : undefined,
5052
+ currentPrice: item.currentPrice !== undefined ? {
5053
+ set: item.currentPrice
5054
+ } : undefined,
5055
+ lastTradePrice: item.lastTradePrice !== undefined ? {
5056
+ set: item.lastTradePrice
5057
+ } : undefined,
5058
+ changeToday: item.changeToday !== undefined ? {
5059
+ set: item.changeToday
5060
+ } : undefined,
5061
+ assetMarginable: item.assetMarginable !== undefined ? {
5062
+ set: item.assetMarginable
5063
+ } : undefined,
5064
+ },
5065
+ create: {
5066
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
5067
+ qty: item.qty !== undefined ? item.qty : undefined,
5068
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
5069
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
5070
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
5071
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
5072
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
5073
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
5074
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
5075
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
5076
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
5077
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
5078
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
5079
+ },
5080
+ }))
5081
+ } : undefined,
5082
+ newsMentions: item.asset.newsMentions ? {
5083
+ upsert: item.asset.newsMentions.map((item) => ({
5084
+ where: {
5085
+ id: item.id !== undefined ? item.id : undefined,
5086
+ url: item.url !== undefined ? item.url : undefined,
5087
+ },
5088
+ update: {
5089
+ id: item.id !== undefined ? {
5090
+ set: item.id
5091
+ } : undefined,
5092
+ url: item.url !== undefined ? {
5093
+ set: item.url
5094
+ } : undefined,
5095
+ relevancyScore: item.relevancyScore !== undefined ? {
5096
+ set: item.relevancyScore
5097
+ } : undefined,
5098
+ sentimentScore: item.sentimentScore !== undefined ? {
5099
+ set: item.sentimentScore
5100
+ } : undefined,
5101
+ sentimentLabel: item.sentimentLabel !== undefined ? {
5102
+ set: item.sentimentLabel
5103
+ } : undefined,
5104
+ },
5105
+ create: {
5106
+ url: item.url !== undefined ? item.url : undefined,
5107
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
5108
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
5109
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
5110
+ },
5111
+ }))
5112
+ } : undefined,
3323
5113
  },
3324
5114
  create: {
3325
5115
  symbol: item.asset.symbol !== undefined ? item.asset.symbol : undefined,
@@ -3377,6 +5167,88 @@ export const AlpacaAccount = {
3377
5167
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
3378
5168
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
3379
5169
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
5170
+ orders: item.asset.orders ?
5171
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
5172
+ connect: item.asset.orders.map((item) => ({
5173
+ id: item.id
5174
+ }))
5175
+ }
5176
+ : { connectOrCreate: item.asset.orders.map((item) => ({
5177
+ where: {
5178
+ id: item.id !== undefined ? item.id : undefined,
5179
+ },
5180
+ create: {
5181
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
5182
+ qty: item.qty !== undefined ? item.qty : undefined,
5183
+ notional: item.notional !== undefined ? item.notional : undefined,
5184
+ side: item.side !== undefined ? item.side : undefined,
5185
+ type: item.type !== undefined ? item.type : undefined,
5186
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
5187
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
5188
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
5189
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
5190
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
5191
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
5192
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
5193
+ status: item.status !== undefined ? item.status : undefined,
5194
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
5195
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
5196
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
5197
+ fee: item.fee !== undefined ? item.fee : undefined,
5198
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
5199
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
5200
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
5201
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
5202
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
5203
+ },
5204
+ }))
5205
+ } : undefined,
5206
+ positions: item.asset.positions ?
5207
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
5208
+ connect: item.asset.positions.map((item) => ({
5209
+ id: item.id
5210
+ }))
5211
+ }
5212
+ : { connectOrCreate: item.asset.positions.map((item) => ({
5213
+ where: {
5214
+ id: item.id !== undefined ? item.id : undefined,
5215
+ },
5216
+ create: {
5217
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
5218
+ qty: item.qty !== undefined ? item.qty : undefined,
5219
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
5220
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
5221
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
5222
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
5223
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
5224
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
5225
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
5226
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
5227
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
5228
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
5229
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
5230
+ },
5231
+ }))
5232
+ } : undefined,
5233
+ newsMentions: item.asset.newsMentions ?
5234
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
5235
+ connect: item.asset.newsMentions.map((item) => ({
5236
+ id: item.id
5237
+ }))
5238
+ }
5239
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
5240
+ where: {
5241
+ id: item.id !== undefined ? item.id : undefined,
5242
+ url: item.url !== undefined ? item.url : undefined,
5243
+ },
5244
+ create: {
5245
+ url: item.url !== undefined ? item.url : undefined,
5246
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
5247
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
5248
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
5249
+ },
5250
+ }))
5251
+ } : undefined,
3380
5252
  },
3381
5253
  }
3382
5254
  } : undefined,
@@ -3404,6 +5276,110 @@ export const AlpacaAccount = {
3404
5276
  fee: item.fee !== undefined ? {
3405
5277
  set: item.fee
3406
5278
  } : undefined,
5279
+ order: item.order ? {
5280
+ upsert: {
5281
+ where: {
5282
+ id: item.order.id !== undefined ? {
5283
+ equals: item.order.id
5284
+ } : undefined,
5285
+ },
5286
+ update: {
5287
+ id: item.order.id !== undefined ? {
5288
+ set: item.order.id
5289
+ } : undefined,
5290
+ clientOrderId: item.order.clientOrderId !== undefined ? {
5291
+ set: item.order.clientOrderId
5292
+ } : undefined,
5293
+ qty: item.order.qty !== undefined ? {
5294
+ set: item.order.qty
5295
+ } : undefined,
5296
+ notional: item.order.notional !== undefined ? {
5297
+ set: item.order.notional
5298
+ } : undefined,
5299
+ side: item.order.side !== undefined ? {
5300
+ set: item.order.side
5301
+ } : undefined,
5302
+ type: item.order.type !== undefined ? {
5303
+ set: item.order.type
5304
+ } : undefined,
5305
+ orderClass: item.order.orderClass !== undefined ? {
5306
+ set: item.order.orderClass
5307
+ } : undefined,
5308
+ timeInForce: item.order.timeInForce !== undefined ? {
5309
+ set: item.order.timeInForce
5310
+ } : undefined,
5311
+ limitPrice: item.order.limitPrice !== undefined ? {
5312
+ set: item.order.limitPrice
5313
+ } : undefined,
5314
+ stopPrice: item.order.stopPrice !== undefined ? {
5315
+ set: item.order.stopPrice
5316
+ } : undefined,
5317
+ trailPrice: item.order.trailPrice !== undefined ? {
5318
+ set: item.order.trailPrice
5319
+ } : undefined,
5320
+ trailPercent: item.order.trailPercent !== undefined ? {
5321
+ set: item.order.trailPercent
5322
+ } : undefined,
5323
+ extendedHours: item.order.extendedHours !== undefined ? {
5324
+ set: item.order.extendedHours
5325
+ } : undefined,
5326
+ status: item.order.status !== undefined ? {
5327
+ set: item.order.status
5328
+ } : undefined,
5329
+ submittedAt: item.order.submittedAt !== undefined ? {
5330
+ set: item.order.submittedAt
5331
+ } : undefined,
5332
+ filledAt: item.order.filledAt !== undefined ? {
5333
+ set: item.order.filledAt
5334
+ } : undefined,
5335
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? {
5336
+ set: item.order.filledAvgPrice
5337
+ } : undefined,
5338
+ fee: item.order.fee !== undefined ? {
5339
+ set: item.order.fee
5340
+ } : undefined,
5341
+ strikePrice: item.order.strikePrice !== undefined ? {
5342
+ set: item.order.strikePrice
5343
+ } : undefined,
5344
+ expirationDate: item.order.expirationDate !== undefined ? {
5345
+ set: item.order.expirationDate
5346
+ } : undefined,
5347
+ optionType: item.order.optionType !== undefined ? {
5348
+ set: item.order.optionType
5349
+ } : undefined,
5350
+ stopLossId: item.order.stopLossId !== undefined ? {
5351
+ set: item.order.stopLossId
5352
+ } : undefined,
5353
+ takeProfitId: item.order.takeProfitId !== undefined ? {
5354
+ set: item.order.takeProfitId
5355
+ } : undefined,
5356
+ },
5357
+ create: {
5358
+ clientOrderId: item.order.clientOrderId !== undefined ? item.order.clientOrderId : undefined,
5359
+ qty: item.order.qty !== undefined ? item.order.qty : undefined,
5360
+ notional: item.order.notional !== undefined ? item.order.notional : undefined,
5361
+ side: item.order.side !== undefined ? item.order.side : undefined,
5362
+ type: item.order.type !== undefined ? item.order.type : undefined,
5363
+ orderClass: item.order.orderClass !== undefined ? item.order.orderClass : undefined,
5364
+ timeInForce: item.order.timeInForce !== undefined ? item.order.timeInForce : undefined,
5365
+ limitPrice: item.order.limitPrice !== undefined ? item.order.limitPrice : undefined,
5366
+ stopPrice: item.order.stopPrice !== undefined ? item.order.stopPrice : undefined,
5367
+ trailPrice: item.order.trailPrice !== undefined ? item.order.trailPrice : undefined,
5368
+ trailPercent: item.order.trailPercent !== undefined ? item.order.trailPercent : undefined,
5369
+ extendedHours: item.order.extendedHours !== undefined ? item.order.extendedHours : undefined,
5370
+ status: item.order.status !== undefined ? item.order.status : undefined,
5371
+ submittedAt: item.order.submittedAt !== undefined ? item.order.submittedAt : undefined,
5372
+ filledAt: item.order.filledAt !== undefined ? item.order.filledAt : undefined,
5373
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? item.order.filledAvgPrice : undefined,
5374
+ fee: item.order.fee !== undefined ? item.order.fee : undefined,
5375
+ strikePrice: item.order.strikePrice !== undefined ? item.order.strikePrice : undefined,
5376
+ expirationDate: item.order.expirationDate !== undefined ? item.order.expirationDate : undefined,
5377
+ optionType: item.order.optionType !== undefined ? item.order.optionType : undefined,
5378
+ stopLossId: item.order.stopLossId !== undefined ? item.order.stopLossId : undefined,
5379
+ takeProfitId: item.order.takeProfitId !== undefined ? item.order.takeProfitId : undefined,
5380
+ },
5381
+ }
5382
+ } : undefined,
3407
5383
  },
3408
5384
  create: {
3409
5385
  sequence: item.sequence !== undefined ? item.sequence : undefined,
@@ -3411,6 +5387,42 @@ export const AlpacaAccount = {
3411
5387
  note: item.note !== undefined ? item.note : undefined,
3412
5388
  status: item.status !== undefined ? item.status : undefined,
3413
5389
  fee: item.fee !== undefined ? item.fee : undefined,
5390
+ order: item.order ?
5391
+ typeof item.order === 'object' && Object.keys(item.order).length === 1 && Object.keys(item.order)[0] === 'id'
5392
+ ? { connect: {
5393
+ id: item.order.id
5394
+ }
5395
+ }
5396
+ : { connectOrCreate: {
5397
+ where: {
5398
+ id: item.order.id !== undefined ? item.order.id : undefined,
5399
+ },
5400
+ create: {
5401
+ clientOrderId: item.order.clientOrderId !== undefined ? item.order.clientOrderId : undefined,
5402
+ qty: item.order.qty !== undefined ? item.order.qty : undefined,
5403
+ notional: item.order.notional !== undefined ? item.order.notional : undefined,
5404
+ side: item.order.side !== undefined ? item.order.side : undefined,
5405
+ type: item.order.type !== undefined ? item.order.type : undefined,
5406
+ orderClass: item.order.orderClass !== undefined ? item.order.orderClass : undefined,
5407
+ timeInForce: item.order.timeInForce !== undefined ? item.order.timeInForce : undefined,
5408
+ limitPrice: item.order.limitPrice !== undefined ? item.order.limitPrice : undefined,
5409
+ stopPrice: item.order.stopPrice !== undefined ? item.order.stopPrice : undefined,
5410
+ trailPrice: item.order.trailPrice !== undefined ? item.order.trailPrice : undefined,
5411
+ trailPercent: item.order.trailPercent !== undefined ? item.order.trailPercent : undefined,
5412
+ extendedHours: item.order.extendedHours !== undefined ? item.order.extendedHours : undefined,
5413
+ status: item.order.status !== undefined ? item.order.status : undefined,
5414
+ submittedAt: item.order.submittedAt !== undefined ? item.order.submittedAt : undefined,
5415
+ filledAt: item.order.filledAt !== undefined ? item.order.filledAt : undefined,
5416
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? item.order.filledAvgPrice : undefined,
5417
+ fee: item.order.fee !== undefined ? item.order.fee : undefined,
5418
+ strikePrice: item.order.strikePrice !== undefined ? item.order.strikePrice : undefined,
5419
+ expirationDate: item.order.expirationDate !== undefined ? item.order.expirationDate : undefined,
5420
+ optionType: item.order.optionType !== undefined ? item.order.optionType : undefined,
5421
+ stopLossId: item.order.stopLossId !== undefined ? item.order.stopLossId : undefined,
5422
+ takeProfitId: item.order.takeProfitId !== undefined ? item.order.takeProfitId : undefined,
5423
+ },
5424
+ }
5425
+ } : undefined,
3414
5426
  },
3415
5427
  }))
3416
5428
  } : undefined,
@@ -3495,6 +5507,88 @@ export const AlpacaAccount = {
3495
5507
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
3496
5508
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
3497
5509
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
5510
+ orders: item.asset.orders ?
5511
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
5512
+ connect: item.asset.orders.map((item) => ({
5513
+ id: item.id
5514
+ }))
5515
+ }
5516
+ : { connectOrCreate: item.asset.orders.map((item) => ({
5517
+ where: {
5518
+ id: item.id !== undefined ? item.id : undefined,
5519
+ },
5520
+ create: {
5521
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
5522
+ qty: item.qty !== undefined ? item.qty : undefined,
5523
+ notional: item.notional !== undefined ? item.notional : undefined,
5524
+ side: item.side !== undefined ? item.side : undefined,
5525
+ type: item.type !== undefined ? item.type : undefined,
5526
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
5527
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
5528
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
5529
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
5530
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
5531
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
5532
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
5533
+ status: item.status !== undefined ? item.status : undefined,
5534
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
5535
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
5536
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
5537
+ fee: item.fee !== undefined ? item.fee : undefined,
5538
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
5539
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
5540
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
5541
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
5542
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
5543
+ },
5544
+ }))
5545
+ } : undefined,
5546
+ positions: item.asset.positions ?
5547
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
5548
+ connect: item.asset.positions.map((item) => ({
5549
+ id: item.id
5550
+ }))
5551
+ }
5552
+ : { connectOrCreate: item.asset.positions.map((item) => ({
5553
+ where: {
5554
+ id: item.id !== undefined ? item.id : undefined,
5555
+ },
5556
+ create: {
5557
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
5558
+ qty: item.qty !== undefined ? item.qty : undefined,
5559
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
5560
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
5561
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
5562
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
5563
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
5564
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
5565
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
5566
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
5567
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
5568
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
5569
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
5570
+ },
5571
+ }))
5572
+ } : undefined,
5573
+ newsMentions: item.asset.newsMentions ?
5574
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
5575
+ connect: item.asset.newsMentions.map((item) => ({
5576
+ id: item.id
5577
+ }))
5578
+ }
5579
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
5580
+ where: {
5581
+ id: item.id !== undefined ? item.id : undefined,
5582
+ url: item.url !== undefined ? item.url : undefined,
5583
+ },
5584
+ create: {
5585
+ url: item.url !== undefined ? item.url : undefined,
5586
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
5587
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
5588
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
5589
+ },
5590
+ }))
5591
+ } : undefined,
3498
5592
  },
3499
5593
  }
3500
5594
  } : undefined,
@@ -3514,6 +5608,42 @@ export const AlpacaAccount = {
3514
5608
  note: item.note !== undefined ? item.note : undefined,
3515
5609
  status: item.status !== undefined ? item.status : undefined,
3516
5610
  fee: item.fee !== undefined ? item.fee : undefined,
5611
+ order: item.order ?
5612
+ typeof item.order === 'object' && Object.keys(item.order).length === 1 && Object.keys(item.order)[0] === 'id'
5613
+ ? { connect: {
5614
+ id: item.order.id
5615
+ }
5616
+ }
5617
+ : { connectOrCreate: {
5618
+ where: {
5619
+ id: item.order.id !== undefined ? item.order.id : undefined,
5620
+ },
5621
+ create: {
5622
+ clientOrderId: item.order.clientOrderId !== undefined ? item.order.clientOrderId : undefined,
5623
+ qty: item.order.qty !== undefined ? item.order.qty : undefined,
5624
+ notional: item.order.notional !== undefined ? item.order.notional : undefined,
5625
+ side: item.order.side !== undefined ? item.order.side : undefined,
5626
+ type: item.order.type !== undefined ? item.order.type : undefined,
5627
+ orderClass: item.order.orderClass !== undefined ? item.order.orderClass : undefined,
5628
+ timeInForce: item.order.timeInForce !== undefined ? item.order.timeInForce : undefined,
5629
+ limitPrice: item.order.limitPrice !== undefined ? item.order.limitPrice : undefined,
5630
+ stopPrice: item.order.stopPrice !== undefined ? item.order.stopPrice : undefined,
5631
+ trailPrice: item.order.trailPrice !== undefined ? item.order.trailPrice : undefined,
5632
+ trailPercent: item.order.trailPercent !== undefined ? item.order.trailPercent : undefined,
5633
+ extendedHours: item.order.extendedHours !== undefined ? item.order.extendedHours : undefined,
5634
+ status: item.order.status !== undefined ? item.order.status : undefined,
5635
+ submittedAt: item.order.submittedAt !== undefined ? item.order.submittedAt : undefined,
5636
+ filledAt: item.order.filledAt !== undefined ? item.order.filledAt : undefined,
5637
+ filledAvgPrice: item.order.filledAvgPrice !== undefined ? item.order.filledAvgPrice : undefined,
5638
+ fee: item.order.fee !== undefined ? item.order.fee : undefined,
5639
+ strikePrice: item.order.strikePrice !== undefined ? item.order.strikePrice : undefined,
5640
+ expirationDate: item.order.expirationDate !== undefined ? item.order.expirationDate : undefined,
5641
+ optionType: item.order.optionType !== undefined ? item.order.optionType : undefined,
5642
+ stopLossId: item.order.stopLossId !== undefined ? item.order.stopLossId : undefined,
5643
+ takeProfitId: item.order.takeProfitId !== undefined ? item.order.takeProfitId : undefined,
5644
+ },
5645
+ }
5646
+ } : undefined,
3517
5647
  },
3518
5648
  }))
3519
5649
  } : undefined,
@@ -3669,6 +5799,66 @@ export const AlpacaAccount = {
3669
5799
  fee: item.action.fee !== undefined ? {
3670
5800
  set: item.action.fee
3671
5801
  } : undefined,
5802
+ trade: item.action.trade ? {
5803
+ upsert: {
5804
+ where: {
5805
+ id: item.action.trade.id !== undefined ? {
5806
+ equals: item.action.trade.id
5807
+ } : undefined,
5808
+ },
5809
+ update: {
5810
+ id: item.action.trade.id !== undefined ? {
5811
+ set: item.action.trade.id
5812
+ } : undefined,
5813
+ qty: item.action.trade.qty !== undefined ? {
5814
+ set: item.action.trade.qty
5815
+ } : undefined,
5816
+ price: item.action.trade.price !== undefined ? {
5817
+ set: item.action.trade.price
5818
+ } : undefined,
5819
+ total: item.action.trade.total !== undefined ? {
5820
+ set: item.action.trade.total
5821
+ } : undefined,
5822
+ optionType: item.action.trade.optionType !== undefined ? {
5823
+ set: item.action.trade.optionType
5824
+ } : undefined,
5825
+ signal: item.action.trade.signal !== undefined ? {
5826
+ set: item.action.trade.signal
5827
+ } : undefined,
5828
+ strategy: item.action.trade.strategy !== undefined ? {
5829
+ set: item.action.trade.strategy
5830
+ } : undefined,
5831
+ analysis: item.action.trade.analysis !== undefined ? {
5832
+ set: item.action.trade.analysis
5833
+ } : undefined,
5834
+ summary: item.action.trade.summary !== undefined ? {
5835
+ set: item.action.trade.summary
5836
+ } : undefined,
5837
+ confidence: item.action.trade.confidence !== undefined ? {
5838
+ set: item.action.trade.confidence
5839
+ } : undefined,
5840
+ timestamp: item.action.trade.timestamp !== undefined ? {
5841
+ set: item.action.trade.timestamp
5842
+ } : undefined,
5843
+ status: item.action.trade.status !== undefined ? {
5844
+ set: item.action.trade.status
5845
+ } : undefined,
5846
+ },
5847
+ create: {
5848
+ qty: item.action.trade.qty !== undefined ? item.action.trade.qty : undefined,
5849
+ price: item.action.trade.price !== undefined ? item.action.trade.price : undefined,
5850
+ total: item.action.trade.total !== undefined ? item.action.trade.total : undefined,
5851
+ optionType: item.action.trade.optionType !== undefined ? item.action.trade.optionType : undefined,
5852
+ signal: item.action.trade.signal !== undefined ? item.action.trade.signal : undefined,
5853
+ strategy: item.action.trade.strategy !== undefined ? item.action.trade.strategy : undefined,
5854
+ analysis: item.action.trade.analysis !== undefined ? item.action.trade.analysis : undefined,
5855
+ summary: item.action.trade.summary !== undefined ? item.action.trade.summary : undefined,
5856
+ confidence: item.action.trade.confidence !== undefined ? item.action.trade.confidence : undefined,
5857
+ timestamp: item.action.trade.timestamp !== undefined ? item.action.trade.timestamp : undefined,
5858
+ status: item.action.trade.status !== undefined ? item.action.trade.status : undefined,
5859
+ },
5860
+ }
5861
+ } : undefined,
3672
5862
  },
3673
5863
  create: {
3674
5864
  sequence: item.action.sequence !== undefined ? item.action.sequence : undefined,
@@ -3676,6 +5866,31 @@ export const AlpacaAccount = {
3676
5866
  note: item.action.note !== undefined ? item.action.note : undefined,
3677
5867
  status: item.action.status !== undefined ? item.action.status : undefined,
3678
5868
  fee: item.action.fee !== undefined ? item.action.fee : undefined,
5869
+ trade: item.action.trade ?
5870
+ typeof item.action.trade === 'object' && Object.keys(item.action.trade).length === 1 && Object.keys(item.action.trade)[0] === 'id'
5871
+ ? { connect: {
5872
+ id: item.action.trade.id
5873
+ }
5874
+ }
5875
+ : { connectOrCreate: {
5876
+ where: {
5877
+ id: item.action.trade.id !== undefined ? item.action.trade.id : undefined,
5878
+ },
5879
+ create: {
5880
+ qty: item.action.trade.qty !== undefined ? item.action.trade.qty : undefined,
5881
+ price: item.action.trade.price !== undefined ? item.action.trade.price : undefined,
5882
+ total: item.action.trade.total !== undefined ? item.action.trade.total : undefined,
5883
+ optionType: item.action.trade.optionType !== undefined ? item.action.trade.optionType : undefined,
5884
+ signal: item.action.trade.signal !== undefined ? item.action.trade.signal : undefined,
5885
+ strategy: item.action.trade.strategy !== undefined ? item.action.trade.strategy : undefined,
5886
+ analysis: item.action.trade.analysis !== undefined ? item.action.trade.analysis : undefined,
5887
+ summary: item.action.trade.summary !== undefined ? item.action.trade.summary : undefined,
5888
+ confidence: item.action.trade.confidence !== undefined ? item.action.trade.confidence : undefined,
5889
+ timestamp: item.action.trade.timestamp !== undefined ? item.action.trade.timestamp : undefined,
5890
+ status: item.action.trade.status !== undefined ? item.action.trade.status : undefined,
5891
+ },
5892
+ }
5893
+ } : undefined,
3679
5894
  },
3680
5895
  }
3681
5896
  } : undefined,
@@ -3861,6 +6076,161 @@ export const AlpacaAccount = {
3861
6076
  bidPrice: item.asset.bidPrice !== undefined ? {
3862
6077
  set: item.asset.bidPrice
3863
6078
  } : undefined,
6079
+ trades: item.asset.trades ? {
6080
+ upsert: item.asset.trades.map((item) => ({
6081
+ where: {
6082
+ id: item.id !== undefined ? item.id : undefined,
6083
+ },
6084
+ update: {
6085
+ id: item.id !== undefined ? {
6086
+ set: item.id
6087
+ } : undefined,
6088
+ qty: item.qty !== undefined ? {
6089
+ set: item.qty
6090
+ } : undefined,
6091
+ price: item.price !== undefined ? {
6092
+ set: item.price
6093
+ } : undefined,
6094
+ total: item.total !== undefined ? {
6095
+ set: item.total
6096
+ } : undefined,
6097
+ optionType: item.optionType !== undefined ? {
6098
+ set: item.optionType
6099
+ } : undefined,
6100
+ signal: item.signal !== undefined ? {
6101
+ set: item.signal
6102
+ } : undefined,
6103
+ strategy: item.strategy !== undefined ? {
6104
+ set: item.strategy
6105
+ } : undefined,
6106
+ analysis: item.analysis !== undefined ? {
6107
+ set: item.analysis
6108
+ } : undefined,
6109
+ summary: item.summary !== undefined ? {
6110
+ set: item.summary
6111
+ } : undefined,
6112
+ confidence: item.confidence !== undefined ? {
6113
+ set: item.confidence
6114
+ } : undefined,
6115
+ timestamp: item.timestamp !== undefined ? {
6116
+ set: item.timestamp
6117
+ } : undefined,
6118
+ status: item.status !== undefined ? {
6119
+ set: item.status
6120
+ } : undefined,
6121
+ },
6122
+ create: {
6123
+ qty: item.qty !== undefined ? item.qty : undefined,
6124
+ price: item.price !== undefined ? item.price : undefined,
6125
+ total: item.total !== undefined ? item.total : undefined,
6126
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
6127
+ signal: item.signal !== undefined ? item.signal : undefined,
6128
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
6129
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
6130
+ summary: item.summary !== undefined ? item.summary : undefined,
6131
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
6132
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
6133
+ status: item.status !== undefined ? item.status : undefined,
6134
+ },
6135
+ }))
6136
+ } : undefined,
6137
+ positions: item.asset.positions ? {
6138
+ upsert: item.asset.positions.map((item) => ({
6139
+ where: {
6140
+ id: item.id !== undefined ? item.id : undefined,
6141
+ },
6142
+ update: {
6143
+ id: item.id !== undefined ? {
6144
+ set: item.id
6145
+ } : undefined,
6146
+ averageEntryPrice: item.averageEntryPrice !== undefined ? {
6147
+ set: item.averageEntryPrice
6148
+ } : undefined,
6149
+ qty: item.qty !== undefined ? {
6150
+ set: item.qty
6151
+ } : undefined,
6152
+ qtyAvailable: item.qtyAvailable !== undefined ? {
6153
+ set: item.qtyAvailable
6154
+ } : undefined,
6155
+ marketValue: item.marketValue !== undefined ? {
6156
+ set: item.marketValue
6157
+ } : undefined,
6158
+ costBasis: item.costBasis !== undefined ? {
6159
+ set: item.costBasis
6160
+ } : undefined,
6161
+ unrealizedPL: item.unrealizedPL !== undefined ? {
6162
+ set: item.unrealizedPL
6163
+ } : undefined,
6164
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? {
6165
+ set: item.unrealizedPLPC
6166
+ } : undefined,
6167
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? {
6168
+ set: item.unrealisedIntradayPL
6169
+ } : undefined,
6170
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? {
6171
+ set: item.unrealisedIntradayPLPC
6172
+ } : undefined,
6173
+ currentPrice: item.currentPrice !== undefined ? {
6174
+ set: item.currentPrice
6175
+ } : undefined,
6176
+ lastTradePrice: item.lastTradePrice !== undefined ? {
6177
+ set: item.lastTradePrice
6178
+ } : undefined,
6179
+ changeToday: item.changeToday !== undefined ? {
6180
+ set: item.changeToday
6181
+ } : undefined,
6182
+ assetMarginable: item.assetMarginable !== undefined ? {
6183
+ set: item.assetMarginable
6184
+ } : undefined,
6185
+ },
6186
+ create: {
6187
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
6188
+ qty: item.qty !== undefined ? item.qty : undefined,
6189
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
6190
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
6191
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
6192
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
6193
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
6194
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
6195
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
6196
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
6197
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
6198
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
6199
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
6200
+ },
6201
+ }))
6202
+ } : undefined,
6203
+ newsMentions: item.asset.newsMentions ? {
6204
+ upsert: item.asset.newsMentions.map((item) => ({
6205
+ where: {
6206
+ id: item.id !== undefined ? item.id : undefined,
6207
+ url: item.url !== undefined ? item.url : undefined,
6208
+ },
6209
+ update: {
6210
+ id: item.id !== undefined ? {
6211
+ set: item.id
6212
+ } : undefined,
6213
+ url: item.url !== undefined ? {
6214
+ set: item.url
6215
+ } : undefined,
6216
+ relevancyScore: item.relevancyScore !== undefined ? {
6217
+ set: item.relevancyScore
6218
+ } : undefined,
6219
+ sentimentScore: item.sentimentScore !== undefined ? {
6220
+ set: item.sentimentScore
6221
+ } : undefined,
6222
+ sentimentLabel: item.sentimentLabel !== undefined ? {
6223
+ set: item.sentimentLabel
6224
+ } : undefined,
6225
+ },
6226
+ create: {
6227
+ url: item.url !== undefined ? item.url : undefined,
6228
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
6229
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
6230
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
6231
+ },
6232
+ }))
6233
+ } : undefined,
3864
6234
  },
3865
6235
  create: {
3866
6236
  symbol: item.asset.symbol !== undefined ? item.asset.symbol : undefined,
@@ -3918,6 +6288,77 @@ export const AlpacaAccount = {
3918
6288
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
3919
6289
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
3920
6290
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
6291
+ trades: item.asset.trades ?
6292
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
6293
+ connect: item.asset.trades.map((item) => ({
6294
+ id: item.id
6295
+ }))
6296
+ }
6297
+ : { connectOrCreate: item.asset.trades.map((item) => ({
6298
+ where: {
6299
+ id: item.id !== undefined ? item.id : undefined,
6300
+ },
6301
+ create: {
6302
+ qty: item.qty !== undefined ? item.qty : undefined,
6303
+ price: item.price !== undefined ? item.price : undefined,
6304
+ total: item.total !== undefined ? item.total : undefined,
6305
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
6306
+ signal: item.signal !== undefined ? item.signal : undefined,
6307
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
6308
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
6309
+ summary: item.summary !== undefined ? item.summary : undefined,
6310
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
6311
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
6312
+ status: item.status !== undefined ? item.status : undefined,
6313
+ },
6314
+ }))
6315
+ } : undefined,
6316
+ positions: item.asset.positions ?
6317
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
6318
+ connect: item.asset.positions.map((item) => ({
6319
+ id: item.id
6320
+ }))
6321
+ }
6322
+ : { connectOrCreate: item.asset.positions.map((item) => ({
6323
+ where: {
6324
+ id: item.id !== undefined ? item.id : undefined,
6325
+ },
6326
+ create: {
6327
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
6328
+ qty: item.qty !== undefined ? item.qty : undefined,
6329
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
6330
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
6331
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
6332
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
6333
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
6334
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
6335
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
6336
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
6337
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
6338
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
6339
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
6340
+ },
6341
+ }))
6342
+ } : undefined,
6343
+ newsMentions: item.asset.newsMentions ?
6344
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
6345
+ connect: item.asset.newsMentions.map((item) => ({
6346
+ id: item.id
6347
+ }))
6348
+ }
6349
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
6350
+ where: {
6351
+ id: item.id !== undefined ? item.id : undefined,
6352
+ url: item.url !== undefined ? item.url : undefined,
6353
+ },
6354
+ create: {
6355
+ url: item.url !== undefined ? item.url : undefined,
6356
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
6357
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
6358
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
6359
+ },
6360
+ }))
6361
+ } : undefined,
3921
6362
  },
3922
6363
  }
3923
6364
  } : undefined,
@@ -3993,6 +6434,31 @@ export const AlpacaAccount = {
3993
6434
  note: item.action.note !== undefined ? item.action.note : undefined,
3994
6435
  status: item.action.status !== undefined ? item.action.status : undefined,
3995
6436
  fee: item.action.fee !== undefined ? item.action.fee : undefined,
6437
+ trade: item.action.trade ?
6438
+ typeof item.action.trade === 'object' && Object.keys(item.action.trade).length === 1 && Object.keys(item.action.trade)[0] === 'id'
6439
+ ? { connect: {
6440
+ id: item.action.trade.id
6441
+ }
6442
+ }
6443
+ : { connectOrCreate: {
6444
+ where: {
6445
+ id: item.action.trade.id !== undefined ? item.action.trade.id : undefined,
6446
+ },
6447
+ create: {
6448
+ qty: item.action.trade.qty !== undefined ? item.action.trade.qty : undefined,
6449
+ price: item.action.trade.price !== undefined ? item.action.trade.price : undefined,
6450
+ total: item.action.trade.total !== undefined ? item.action.trade.total : undefined,
6451
+ optionType: item.action.trade.optionType !== undefined ? item.action.trade.optionType : undefined,
6452
+ signal: item.action.trade.signal !== undefined ? item.action.trade.signal : undefined,
6453
+ strategy: item.action.trade.strategy !== undefined ? item.action.trade.strategy : undefined,
6454
+ analysis: item.action.trade.analysis !== undefined ? item.action.trade.analysis : undefined,
6455
+ summary: item.action.trade.summary !== undefined ? item.action.trade.summary : undefined,
6456
+ confidence: item.action.trade.confidence !== undefined ? item.action.trade.confidence : undefined,
6457
+ timestamp: item.action.trade.timestamp !== undefined ? item.action.trade.timestamp : undefined,
6458
+ status: item.action.trade.status !== undefined ? item.action.trade.status : undefined,
6459
+ },
6460
+ }
6461
+ } : undefined,
3996
6462
  },
3997
6463
  }
3998
6464
  } : undefined,
@@ -4064,6 +6530,77 @@ export const AlpacaAccount = {
4064
6530
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
4065
6531
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
4066
6532
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
6533
+ trades: item.asset.trades ?
6534
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
6535
+ connect: item.asset.trades.map((item) => ({
6536
+ id: item.id
6537
+ }))
6538
+ }
6539
+ : { connectOrCreate: item.asset.trades.map((item) => ({
6540
+ where: {
6541
+ id: item.id !== undefined ? item.id : undefined,
6542
+ },
6543
+ create: {
6544
+ qty: item.qty !== undefined ? item.qty : undefined,
6545
+ price: item.price !== undefined ? item.price : undefined,
6546
+ total: item.total !== undefined ? item.total : undefined,
6547
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
6548
+ signal: item.signal !== undefined ? item.signal : undefined,
6549
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
6550
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
6551
+ summary: item.summary !== undefined ? item.summary : undefined,
6552
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
6553
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
6554
+ status: item.status !== undefined ? item.status : undefined,
6555
+ },
6556
+ }))
6557
+ } : undefined,
6558
+ positions: item.asset.positions ?
6559
+ Array.isArray(item.asset.positions) && item.asset.positions.length > 0 && item.asset.positions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
6560
+ connect: item.asset.positions.map((item) => ({
6561
+ id: item.id
6562
+ }))
6563
+ }
6564
+ : { connectOrCreate: item.asset.positions.map((item) => ({
6565
+ where: {
6566
+ id: item.id !== undefined ? item.id : undefined,
6567
+ },
6568
+ create: {
6569
+ averageEntryPrice: item.averageEntryPrice !== undefined ? item.averageEntryPrice : undefined,
6570
+ qty: item.qty !== undefined ? item.qty : undefined,
6571
+ qtyAvailable: item.qtyAvailable !== undefined ? item.qtyAvailable : undefined,
6572
+ marketValue: item.marketValue !== undefined ? item.marketValue : undefined,
6573
+ costBasis: item.costBasis !== undefined ? item.costBasis : undefined,
6574
+ unrealizedPL: item.unrealizedPL !== undefined ? item.unrealizedPL : undefined,
6575
+ unrealizedPLPC: item.unrealizedPLPC !== undefined ? item.unrealizedPLPC : undefined,
6576
+ unrealisedIntradayPL: item.unrealisedIntradayPL !== undefined ? item.unrealisedIntradayPL : undefined,
6577
+ unrealisedIntradayPLPC: item.unrealisedIntradayPLPC !== undefined ? item.unrealisedIntradayPLPC : undefined,
6578
+ currentPrice: item.currentPrice !== undefined ? item.currentPrice : undefined,
6579
+ lastTradePrice: item.lastTradePrice !== undefined ? item.lastTradePrice : undefined,
6580
+ changeToday: item.changeToday !== undefined ? item.changeToday : undefined,
6581
+ assetMarginable: item.assetMarginable !== undefined ? item.assetMarginable : undefined,
6582
+ },
6583
+ }))
6584
+ } : undefined,
6585
+ newsMentions: item.asset.newsMentions ?
6586
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
6587
+ connect: item.asset.newsMentions.map((item) => ({
6588
+ id: item.id
6589
+ }))
6590
+ }
6591
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
6592
+ where: {
6593
+ id: item.id !== undefined ? item.id : undefined,
6594
+ url: item.url !== undefined ? item.url : undefined,
6595
+ },
6596
+ create: {
6597
+ url: item.url !== undefined ? item.url : undefined,
6598
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
6599
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
6600
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
6601
+ },
6602
+ }))
6603
+ } : undefined,
4067
6604
  },
4068
6605
  }
4069
6606
  } : undefined,
@@ -4300,6 +6837,197 @@ export const AlpacaAccount = {
4300
6837
  bidPrice: item.asset.bidPrice !== undefined ? {
4301
6838
  set: item.asset.bidPrice
4302
6839
  } : undefined,
6840
+ trades: item.asset.trades ? {
6841
+ upsert: item.asset.trades.map((item) => ({
6842
+ where: {
6843
+ id: item.id !== undefined ? item.id : undefined,
6844
+ },
6845
+ update: {
6846
+ id: item.id !== undefined ? {
6847
+ set: item.id
6848
+ } : undefined,
6849
+ qty: item.qty !== undefined ? {
6850
+ set: item.qty
6851
+ } : undefined,
6852
+ price: item.price !== undefined ? {
6853
+ set: item.price
6854
+ } : undefined,
6855
+ total: item.total !== undefined ? {
6856
+ set: item.total
6857
+ } : undefined,
6858
+ optionType: item.optionType !== undefined ? {
6859
+ set: item.optionType
6860
+ } : undefined,
6861
+ signal: item.signal !== undefined ? {
6862
+ set: item.signal
6863
+ } : undefined,
6864
+ strategy: item.strategy !== undefined ? {
6865
+ set: item.strategy
6866
+ } : undefined,
6867
+ analysis: item.analysis !== undefined ? {
6868
+ set: item.analysis
6869
+ } : undefined,
6870
+ summary: item.summary !== undefined ? {
6871
+ set: item.summary
6872
+ } : undefined,
6873
+ confidence: item.confidence !== undefined ? {
6874
+ set: item.confidence
6875
+ } : undefined,
6876
+ timestamp: item.timestamp !== undefined ? {
6877
+ set: item.timestamp
6878
+ } : undefined,
6879
+ status: item.status !== undefined ? {
6880
+ set: item.status
6881
+ } : undefined,
6882
+ },
6883
+ create: {
6884
+ qty: item.qty !== undefined ? item.qty : undefined,
6885
+ price: item.price !== undefined ? item.price : undefined,
6886
+ total: item.total !== undefined ? item.total : undefined,
6887
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
6888
+ signal: item.signal !== undefined ? item.signal : undefined,
6889
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
6890
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
6891
+ summary: item.summary !== undefined ? item.summary : undefined,
6892
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
6893
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
6894
+ status: item.status !== undefined ? item.status : undefined,
6895
+ },
6896
+ }))
6897
+ } : undefined,
6898
+ orders: item.asset.orders ? {
6899
+ upsert: item.asset.orders.map((item) => ({
6900
+ where: {
6901
+ id: item.id !== undefined ? item.id : undefined,
6902
+ },
6903
+ update: {
6904
+ id: item.id !== undefined ? {
6905
+ set: item.id
6906
+ } : undefined,
6907
+ clientOrderId: item.clientOrderId !== undefined ? {
6908
+ set: item.clientOrderId
6909
+ } : undefined,
6910
+ qty: item.qty !== undefined ? {
6911
+ set: item.qty
6912
+ } : undefined,
6913
+ notional: item.notional !== undefined ? {
6914
+ set: item.notional
6915
+ } : undefined,
6916
+ side: item.side !== undefined ? {
6917
+ set: item.side
6918
+ } : undefined,
6919
+ type: item.type !== undefined ? {
6920
+ set: item.type
6921
+ } : undefined,
6922
+ orderClass: item.orderClass !== undefined ? {
6923
+ set: item.orderClass
6924
+ } : undefined,
6925
+ timeInForce: item.timeInForce !== undefined ? {
6926
+ set: item.timeInForce
6927
+ } : undefined,
6928
+ limitPrice: item.limitPrice !== undefined ? {
6929
+ set: item.limitPrice
6930
+ } : undefined,
6931
+ stopPrice: item.stopPrice !== undefined ? {
6932
+ set: item.stopPrice
6933
+ } : undefined,
6934
+ trailPrice: item.trailPrice !== undefined ? {
6935
+ set: item.trailPrice
6936
+ } : undefined,
6937
+ trailPercent: item.trailPercent !== undefined ? {
6938
+ set: item.trailPercent
6939
+ } : undefined,
6940
+ extendedHours: item.extendedHours !== undefined ? {
6941
+ set: item.extendedHours
6942
+ } : undefined,
6943
+ status: item.status !== undefined ? {
6944
+ set: item.status
6945
+ } : undefined,
6946
+ submittedAt: item.submittedAt !== undefined ? {
6947
+ set: item.submittedAt
6948
+ } : undefined,
6949
+ filledAt: item.filledAt !== undefined ? {
6950
+ set: item.filledAt
6951
+ } : undefined,
6952
+ filledAvgPrice: item.filledAvgPrice !== undefined ? {
6953
+ set: item.filledAvgPrice
6954
+ } : undefined,
6955
+ fee: item.fee !== undefined ? {
6956
+ set: item.fee
6957
+ } : undefined,
6958
+ strikePrice: item.strikePrice !== undefined ? {
6959
+ set: item.strikePrice
6960
+ } : undefined,
6961
+ expirationDate: item.expirationDate !== undefined ? {
6962
+ set: item.expirationDate
6963
+ } : undefined,
6964
+ optionType: item.optionType !== undefined ? {
6965
+ set: item.optionType
6966
+ } : undefined,
6967
+ stopLossId: item.stopLossId !== undefined ? {
6968
+ set: item.stopLossId
6969
+ } : undefined,
6970
+ takeProfitId: item.takeProfitId !== undefined ? {
6971
+ set: item.takeProfitId
6972
+ } : undefined,
6973
+ },
6974
+ create: {
6975
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
6976
+ qty: item.qty !== undefined ? item.qty : undefined,
6977
+ notional: item.notional !== undefined ? item.notional : undefined,
6978
+ side: item.side !== undefined ? item.side : undefined,
6979
+ type: item.type !== undefined ? item.type : undefined,
6980
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
6981
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
6982
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
6983
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
6984
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
6985
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
6986
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
6987
+ status: item.status !== undefined ? item.status : undefined,
6988
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
6989
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
6990
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
6991
+ fee: item.fee !== undefined ? item.fee : undefined,
6992
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
6993
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
6994
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
6995
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
6996
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
6997
+ },
6998
+ }))
6999
+ } : undefined,
7000
+ newsMentions: item.asset.newsMentions ? {
7001
+ upsert: item.asset.newsMentions.map((item) => ({
7002
+ where: {
7003
+ id: item.id !== undefined ? item.id : undefined,
7004
+ url: item.url !== undefined ? item.url : undefined,
7005
+ },
7006
+ update: {
7007
+ id: item.id !== undefined ? {
7008
+ set: item.id
7009
+ } : undefined,
7010
+ url: item.url !== undefined ? {
7011
+ set: item.url
7012
+ } : undefined,
7013
+ relevancyScore: item.relevancyScore !== undefined ? {
7014
+ set: item.relevancyScore
7015
+ } : undefined,
7016
+ sentimentScore: item.sentimentScore !== undefined ? {
7017
+ set: item.sentimentScore
7018
+ } : undefined,
7019
+ sentimentLabel: item.sentimentLabel !== undefined ? {
7020
+ set: item.sentimentLabel
7021
+ } : undefined,
7022
+ },
7023
+ create: {
7024
+ url: item.url !== undefined ? item.url : undefined,
7025
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
7026
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
7027
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
7028
+ },
7029
+ }))
7030
+ } : undefined,
4303
7031
  },
4304
7032
  create: {
4305
7033
  symbol: item.asset.symbol !== undefined ? item.asset.symbol : undefined,
@@ -4357,6 +7085,86 @@ export const AlpacaAccount = {
4357
7085
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
4358
7086
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
4359
7087
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
7088
+ trades: item.asset.trades ?
7089
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
7090
+ connect: item.asset.trades.map((item) => ({
7091
+ id: item.id
7092
+ }))
7093
+ }
7094
+ : { connectOrCreate: item.asset.trades.map((item) => ({
7095
+ where: {
7096
+ id: item.id !== undefined ? item.id : undefined,
7097
+ },
7098
+ create: {
7099
+ qty: item.qty !== undefined ? item.qty : undefined,
7100
+ price: item.price !== undefined ? item.price : undefined,
7101
+ total: item.total !== undefined ? item.total : undefined,
7102
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
7103
+ signal: item.signal !== undefined ? item.signal : undefined,
7104
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
7105
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
7106
+ summary: item.summary !== undefined ? item.summary : undefined,
7107
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
7108
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
7109
+ status: item.status !== undefined ? item.status : undefined,
7110
+ },
7111
+ }))
7112
+ } : undefined,
7113
+ orders: item.asset.orders ?
7114
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
7115
+ connect: item.asset.orders.map((item) => ({
7116
+ id: item.id
7117
+ }))
7118
+ }
7119
+ : { connectOrCreate: item.asset.orders.map((item) => ({
7120
+ where: {
7121
+ id: item.id !== undefined ? item.id : undefined,
7122
+ },
7123
+ create: {
7124
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
7125
+ qty: item.qty !== undefined ? item.qty : undefined,
7126
+ notional: item.notional !== undefined ? item.notional : undefined,
7127
+ side: item.side !== undefined ? item.side : undefined,
7128
+ type: item.type !== undefined ? item.type : undefined,
7129
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
7130
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
7131
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
7132
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
7133
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
7134
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
7135
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
7136
+ status: item.status !== undefined ? item.status : undefined,
7137
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
7138
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
7139
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
7140
+ fee: item.fee !== undefined ? item.fee : undefined,
7141
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
7142
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
7143
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
7144
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
7145
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
7146
+ },
7147
+ }))
7148
+ } : undefined,
7149
+ newsMentions: item.asset.newsMentions ?
7150
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
7151
+ connect: item.asset.newsMentions.map((item) => ({
7152
+ id: item.id
7153
+ }))
7154
+ }
7155
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
7156
+ where: {
7157
+ id: item.id !== undefined ? item.id : undefined,
7158
+ url: item.url !== undefined ? item.url : undefined,
7159
+ },
7160
+ create: {
7161
+ url: item.url !== undefined ? item.url : undefined,
7162
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
7163
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
7164
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
7165
+ },
7166
+ }))
7167
+ } : undefined,
4360
7168
  },
4361
7169
  }
4362
7170
  } : undefined,
@@ -4443,6 +7251,86 @@ export const AlpacaAccount = {
4443
7251
  exDividendDate: item.asset.exDividendDate !== undefined ? item.asset.exDividendDate : undefined,
4444
7252
  askPrice: item.asset.askPrice !== undefined ? item.asset.askPrice : undefined,
4445
7253
  bidPrice: item.asset.bidPrice !== undefined ? item.asset.bidPrice : undefined,
7254
+ trades: item.asset.trades ?
7255
+ Array.isArray(item.asset.trades) && item.asset.trades.length > 0 && item.asset.trades.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
7256
+ connect: item.asset.trades.map((item) => ({
7257
+ id: item.id
7258
+ }))
7259
+ }
7260
+ : { connectOrCreate: item.asset.trades.map((item) => ({
7261
+ where: {
7262
+ id: item.id !== undefined ? item.id : undefined,
7263
+ },
7264
+ create: {
7265
+ qty: item.qty !== undefined ? item.qty : undefined,
7266
+ price: item.price !== undefined ? item.price : undefined,
7267
+ total: item.total !== undefined ? item.total : undefined,
7268
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
7269
+ signal: item.signal !== undefined ? item.signal : undefined,
7270
+ strategy: item.strategy !== undefined ? item.strategy : undefined,
7271
+ analysis: item.analysis !== undefined ? item.analysis : undefined,
7272
+ summary: item.summary !== undefined ? item.summary : undefined,
7273
+ confidence: item.confidence !== undefined ? item.confidence : undefined,
7274
+ timestamp: item.timestamp !== undefined ? item.timestamp : undefined,
7275
+ status: item.status !== undefined ? item.status : undefined,
7276
+ },
7277
+ }))
7278
+ } : undefined,
7279
+ orders: item.asset.orders ?
7280
+ Array.isArray(item.asset.orders) && item.asset.orders.length > 0 && item.asset.orders.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
7281
+ connect: item.asset.orders.map((item) => ({
7282
+ id: item.id
7283
+ }))
7284
+ }
7285
+ : { connectOrCreate: item.asset.orders.map((item) => ({
7286
+ where: {
7287
+ id: item.id !== undefined ? item.id : undefined,
7288
+ },
7289
+ create: {
7290
+ clientOrderId: item.clientOrderId !== undefined ? item.clientOrderId : undefined,
7291
+ qty: item.qty !== undefined ? item.qty : undefined,
7292
+ notional: item.notional !== undefined ? item.notional : undefined,
7293
+ side: item.side !== undefined ? item.side : undefined,
7294
+ type: item.type !== undefined ? item.type : undefined,
7295
+ orderClass: item.orderClass !== undefined ? item.orderClass : undefined,
7296
+ timeInForce: item.timeInForce !== undefined ? item.timeInForce : undefined,
7297
+ limitPrice: item.limitPrice !== undefined ? item.limitPrice : undefined,
7298
+ stopPrice: item.stopPrice !== undefined ? item.stopPrice : undefined,
7299
+ trailPrice: item.trailPrice !== undefined ? item.trailPrice : undefined,
7300
+ trailPercent: item.trailPercent !== undefined ? item.trailPercent : undefined,
7301
+ extendedHours: item.extendedHours !== undefined ? item.extendedHours : undefined,
7302
+ status: item.status !== undefined ? item.status : undefined,
7303
+ submittedAt: item.submittedAt !== undefined ? item.submittedAt : undefined,
7304
+ filledAt: item.filledAt !== undefined ? item.filledAt : undefined,
7305
+ filledAvgPrice: item.filledAvgPrice !== undefined ? item.filledAvgPrice : undefined,
7306
+ fee: item.fee !== undefined ? item.fee : undefined,
7307
+ strikePrice: item.strikePrice !== undefined ? item.strikePrice : undefined,
7308
+ expirationDate: item.expirationDate !== undefined ? item.expirationDate : undefined,
7309
+ optionType: item.optionType !== undefined ? item.optionType : undefined,
7310
+ stopLossId: item.stopLossId !== undefined ? item.stopLossId : undefined,
7311
+ takeProfitId: item.takeProfitId !== undefined ? item.takeProfitId : undefined,
7312
+ },
7313
+ }))
7314
+ } : undefined,
7315
+ newsMentions: item.asset.newsMentions ?
7316
+ Array.isArray(item.asset.newsMentions) && item.asset.newsMentions.length > 0 && item.asset.newsMentions.every((item) => typeof item === 'object' && 'id' in item && Object.keys(item).length === 1) ? {
7317
+ connect: item.asset.newsMentions.map((item) => ({
7318
+ id: item.id
7319
+ }))
7320
+ }
7321
+ : { connectOrCreate: item.asset.newsMentions.map((item) => ({
7322
+ where: {
7323
+ id: item.id !== undefined ? item.id : undefined,
7324
+ url: item.url !== undefined ? item.url : undefined,
7325
+ },
7326
+ create: {
7327
+ url: item.url !== undefined ? item.url : undefined,
7328
+ relevancyScore: item.relevancyScore !== undefined ? item.relevancyScore : undefined,
7329
+ sentimentScore: item.sentimentScore !== undefined ? item.sentimentScore : undefined,
7330
+ sentimentLabel: item.sentimentLabel !== undefined ? item.sentimentLabel : undefined,
7331
+ },
7332
+ }))
7333
+ } : undefined,
4446
7334
  },
4447
7335
  }
4448
7336
  } : undefined,