@gbozee/ultimate 0.0.2-154 → 0.0.2-156

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.
@@ -593,6 +593,7 @@ export declare function getRiskReward(payload: {
593
593
  risk: number;
594
594
  global_config: GlobalConfig;
595
595
  force_exact_risk?: boolean;
596
+ target_loss?: number;
596
597
  }): any;
597
598
  export declare function computeProfitDetail(payload: {
598
599
  focus_position: {
@@ -2128,7 +2128,8 @@ function getRiskReward(payload) {
2128
2128
  stop,
2129
2129
  risk,
2130
2130
  global_config,
2131
- force_exact_risk = false
2131
+ force_exact_risk = false,
2132
+ target_loss
2132
2133
  } = payload;
2133
2134
  const { entries, last_value, ...app_config } = buildAppConfig(global_config, {
2134
2135
  entry,
@@ -2141,7 +2142,8 @@ function getRiskReward(payload) {
2141
2142
  app_config,
2142
2143
  entry,
2143
2144
  stop,
2144
- risk_per_trade: risk
2145
+ risk_per_trade: risk,
2146
+ target_loss
2145
2147
  });
2146
2148
  if (force_exact_risk) {
2147
2149
  const new_risk_per_trade = determineOptimumRisk(global_config, {
package/dist/index.cjs CHANGED
@@ -54529,7 +54529,8 @@ function getRiskReward(payload) {
54529
54529
  stop,
54530
54530
  risk,
54531
54531
  global_config,
54532
- force_exact_risk = false
54532
+ force_exact_risk = false,
54533
+ target_loss
54533
54534
  } = payload;
54534
54535
  const { entries, last_value, ...app_config } = buildAppConfig(global_config, {
54535
54536
  entry,
@@ -54542,7 +54543,8 @@ function getRiskReward(payload) {
54542
54543
  app_config,
54543
54544
  entry,
54544
54545
  stop,
54545
- risk_per_trade: risk
54546
+ risk_per_trade: risk,
54547
+ target_loss
54546
54548
  });
54547
54549
  if (force_exact_risk) {
54548
54550
  const new_risk_per_trade = determineOptimumRisk(global_config, {
@@ -60180,14 +60182,20 @@ class ExchangeAccount {
60180
60182
  symbol,
60181
60183
  kind
60182
60184
  });
60183
- await this.placeTrade({
60185
+ const focusPosition = await this.getFocusPosition({
60184
60186
  symbol,
60185
- kind,
60186
- limit: false,
60187
- ignore_config: true,
60188
- tp: true
60187
+ kind
60189
60188
  });
60190
- if (focus_position.avg_qty < last_value.avg_size) {
60189
+ if (focusPosition.getInstance().quantity > 0) {
60190
+ await this.placeTrade({
60191
+ symbol,
60192
+ kind,
60193
+ limit: false,
60194
+ ignore_config: true,
60195
+ tp: true
60196
+ });
60197
+ }
60198
+ if (focus_position.avg_qty < last_value.avg_size || focusPosition.getInstance().quantity === 0) {
60191
60199
  console.log("Placing trade for ", symbol, kind);
60192
60200
  await this.placeTrade({
60193
60201
  symbol,
@@ -60197,36 +60205,34 @@ class ExchangeAccount {
60197
60205
  });
60198
60206
  }
60199
60207
  console.log("Checking if focus position has quantity for ", symbol, kind);
60200
- const focusPosition = await this.getFocusPosition({
60201
- symbol,
60202
- kind
60203
- });
60204
60208
  const reversePosition = await this.getFocusPosition({
60205
60209
  symbol,
60206
60210
  kind: kind === "long" ? "short" : "long"
60207
60211
  });
60208
- const opposite_config = focusPosition.getOppositeConfig({
60209
- ratio: reward_factor
60210
- });
60211
- const reverse_config = await reversePosition.getConfig();
60212
- if ((reverse_config.entry !== opposite_config.entry || reverse_config.stop !== opposite_config.stop || reverse_config.risk !== opposite_config.risk || reverse_config.risk_reward !== opposite_config.risk_reward) && focusPosition.getInstance().quantity > 0) {
60213
- console.log("Updating reverse config for ", symbol, kind, "with opposite config", opposite_config);
60214
- await reversePosition.getConfig({
60215
- params: {
60216
- entry: opposite_config.entry,
60217
- stop: opposite_config.stop,
60218
- risk: opposite_config.risk,
60219
- risk_reward: opposite_config.risk_reward
60220
- }
60221
- });
60222
- console.log("Placing trade for ", symbol, reversePosition.kind);
60223
- await reversePosition.placeTrade({
60224
- ignore_config: true,
60225
- limit: true,
60226
- place: true
60212
+ if (reversePosition.getInstance().quantity > 0) {
60213
+ const opposite_config = focusPosition.getOppositeConfig({
60214
+ ratio: reward_factor
60227
60215
  });
60216
+ const reverse_config = await reversePosition.getConfig();
60217
+ if ((reverse_config.entry !== opposite_config.entry || reverse_config.stop !== opposite_config.stop || reverse_config.risk !== opposite_config.risk || reverse_config.risk_reward !== opposite_config.risk_reward) && focusPosition.getInstance().quantity > 0) {
60218
+ console.log("Updating reverse config for ", symbol, kind, "with opposite config", opposite_config);
60219
+ await reversePosition.getConfig({
60220
+ params: {
60221
+ entry: opposite_config.entry,
60222
+ stop: opposite_config.stop,
60223
+ risk: opposite_config.risk,
60224
+ risk_reward: opposite_config.risk_reward
60225
+ }
60226
+ });
60227
+ console.log("Placing trade for ", symbol, reversePosition.kind);
60228
+ await reversePosition.placeTrade({
60229
+ ignore_config: true,
60230
+ limit: true,
60231
+ place: true
60232
+ });
60233
+ }
60234
+ console.log("Opposite config for ", symbol, kind, opposite_config);
60228
60235
  }
60229
- console.log("Opposite config for ", symbol, kind, opposite_config);
60230
60236
  return {
60231
60237
  config_details: {
60232
60238
  app_config,
package/dist/index.d.ts CHANGED
@@ -1498,6 +1498,7 @@ export declare function getRiskReward(payload: {
1498
1498
  risk: number;
1499
1499
  global_config: GlobalConfig;
1500
1500
  force_exact_risk?: boolean;
1501
+ target_loss?: number;
1501
1502
  }): any;
1502
1503
  export declare function computeProfitDetail(payload: {
1503
1504
  focus_position: {
package/dist/index.js CHANGED
@@ -54475,7 +54475,8 @@ function getRiskReward(payload) {
54475
54475
  stop,
54476
54476
  risk,
54477
54477
  global_config,
54478
- force_exact_risk = false
54478
+ force_exact_risk = false,
54479
+ target_loss
54479
54480
  } = payload;
54480
54481
  const { entries, last_value, ...app_config } = buildAppConfig(global_config, {
54481
54482
  entry,
@@ -54488,7 +54489,8 @@ function getRiskReward(payload) {
54488
54489
  app_config,
54489
54490
  entry,
54490
54491
  stop,
54491
- risk_per_trade: risk
54492
+ risk_per_trade: risk,
54493
+ target_loss
54492
54494
  });
54493
54495
  if (force_exact_risk) {
54494
54496
  const new_risk_per_trade = determineOptimumRisk(global_config, {
@@ -60126,14 +60128,20 @@ class ExchangeAccount {
60126
60128
  symbol,
60127
60129
  kind
60128
60130
  });
60129
- await this.placeTrade({
60131
+ const focusPosition = await this.getFocusPosition({
60130
60132
  symbol,
60131
- kind,
60132
- limit: false,
60133
- ignore_config: true,
60134
- tp: true
60133
+ kind
60135
60134
  });
60136
- if (focus_position.avg_qty < last_value.avg_size) {
60135
+ if (focusPosition.getInstance().quantity > 0) {
60136
+ await this.placeTrade({
60137
+ symbol,
60138
+ kind,
60139
+ limit: false,
60140
+ ignore_config: true,
60141
+ tp: true
60142
+ });
60143
+ }
60144
+ if (focus_position.avg_qty < last_value.avg_size || focusPosition.getInstance().quantity === 0) {
60137
60145
  console.log("Placing trade for ", symbol, kind);
60138
60146
  await this.placeTrade({
60139
60147
  symbol,
@@ -60143,36 +60151,34 @@ class ExchangeAccount {
60143
60151
  });
60144
60152
  }
60145
60153
  console.log("Checking if focus position has quantity for ", symbol, kind);
60146
- const focusPosition = await this.getFocusPosition({
60147
- symbol,
60148
- kind
60149
- });
60150
60154
  const reversePosition = await this.getFocusPosition({
60151
60155
  symbol,
60152
60156
  kind: kind === "long" ? "short" : "long"
60153
60157
  });
60154
- const opposite_config = focusPosition.getOppositeConfig({
60155
- ratio: reward_factor
60156
- });
60157
- const reverse_config = await reversePosition.getConfig();
60158
- if ((reverse_config.entry !== opposite_config.entry || reverse_config.stop !== opposite_config.stop || reverse_config.risk !== opposite_config.risk || reverse_config.risk_reward !== opposite_config.risk_reward) && focusPosition.getInstance().quantity > 0) {
60159
- console.log("Updating reverse config for ", symbol, kind, "with opposite config", opposite_config);
60160
- await reversePosition.getConfig({
60161
- params: {
60162
- entry: opposite_config.entry,
60163
- stop: opposite_config.stop,
60164
- risk: opposite_config.risk,
60165
- risk_reward: opposite_config.risk_reward
60166
- }
60167
- });
60168
- console.log("Placing trade for ", symbol, reversePosition.kind);
60169
- await reversePosition.placeTrade({
60170
- ignore_config: true,
60171
- limit: true,
60172
- place: true
60158
+ if (reversePosition.getInstance().quantity > 0) {
60159
+ const opposite_config = focusPosition.getOppositeConfig({
60160
+ ratio: reward_factor
60173
60161
  });
60162
+ const reverse_config = await reversePosition.getConfig();
60163
+ if ((reverse_config.entry !== opposite_config.entry || reverse_config.stop !== opposite_config.stop || reverse_config.risk !== opposite_config.risk || reverse_config.risk_reward !== opposite_config.risk_reward) && focusPosition.getInstance().quantity > 0) {
60164
+ console.log("Updating reverse config for ", symbol, kind, "with opposite config", opposite_config);
60165
+ await reversePosition.getConfig({
60166
+ params: {
60167
+ entry: opposite_config.entry,
60168
+ stop: opposite_config.stop,
60169
+ risk: opposite_config.risk,
60170
+ risk_reward: opposite_config.risk_reward
60171
+ }
60172
+ });
60173
+ console.log("Placing trade for ", symbol, reversePosition.kind);
60174
+ await reversePosition.placeTrade({
60175
+ ignore_config: true,
60176
+ limit: true,
60177
+ place: true
60178
+ });
60179
+ }
60180
+ console.log("Opposite config for ", symbol, kind, opposite_config);
60174
60181
  }
60175
- console.log("Opposite config for ", symbol, kind, opposite_config);
60176
60182
  return {
60177
60183
  config_details: {
60178
60184
  app_config,
@@ -61209,7 +61209,8 @@ function getRiskReward(payload) {
61209
61209
  stop,
61210
61210
  risk,
61211
61211
  global_config,
61212
- force_exact_risk = false
61212
+ force_exact_risk = false,
61213
+ target_loss
61213
61214
  } = payload;
61214
61215
  const { entries, last_value, ...app_config } = buildAppConfig(global_config, {
61215
61216
  entry,
@@ -61222,7 +61223,8 @@ function getRiskReward(payload) {
61222
61223
  app_config,
61223
61224
  entry,
61224
61225
  stop,
61225
- risk_per_trade: risk
61226
+ risk_per_trade: risk,
61227
+ target_loss
61226
61228
  });
61227
61229
  if (force_exact_risk) {
61228
61230
  const new_risk_per_trade = determineOptimumRisk(global_config, {
@@ -66854,14 +66856,20 @@ class ExchangeAccount {
66854
66856
  symbol,
66855
66857
  kind
66856
66858
  });
66857
- await this.placeTrade({
66859
+ const focusPosition = await this.getFocusPosition({
66858
66860
  symbol,
66859
- kind,
66860
- limit: false,
66861
- ignore_config: true,
66862
- tp: true
66861
+ kind
66863
66862
  });
66864
- if (focus_position.avg_qty < last_value.avg_size) {
66863
+ if (focusPosition.getInstance().quantity > 0) {
66864
+ await this.placeTrade({
66865
+ symbol,
66866
+ kind,
66867
+ limit: false,
66868
+ ignore_config: true,
66869
+ tp: true
66870
+ });
66871
+ }
66872
+ if (focus_position.avg_qty < last_value.avg_size || focusPosition.getInstance().quantity === 0) {
66865
66873
  console.log("Placing trade for ", symbol, kind);
66866
66874
  await this.placeTrade({
66867
66875
  symbol,
@@ -66871,36 +66879,34 @@ class ExchangeAccount {
66871
66879
  });
66872
66880
  }
66873
66881
  console.log("Checking if focus position has quantity for ", symbol, kind);
66874
- const focusPosition = await this.getFocusPosition({
66875
- symbol,
66876
- kind
66877
- });
66878
66882
  const reversePosition = await this.getFocusPosition({
66879
66883
  symbol,
66880
66884
  kind: kind === "long" ? "short" : "long"
66881
66885
  });
66882
- const opposite_config = focusPosition.getOppositeConfig({
66883
- ratio: reward_factor
66884
- });
66885
- const reverse_config = await reversePosition.getConfig();
66886
- if ((reverse_config.entry !== opposite_config.entry || reverse_config.stop !== opposite_config.stop || reverse_config.risk !== opposite_config.risk || reverse_config.risk_reward !== opposite_config.risk_reward) && focusPosition.getInstance().quantity > 0) {
66887
- console.log("Updating reverse config for ", symbol, kind, "with opposite config", opposite_config);
66888
- await reversePosition.getConfig({
66889
- params: {
66890
- entry: opposite_config.entry,
66891
- stop: opposite_config.stop,
66892
- risk: opposite_config.risk,
66893
- risk_reward: opposite_config.risk_reward
66894
- }
66895
- });
66896
- console.log("Placing trade for ", symbol, reversePosition.kind);
66897
- await reversePosition.placeTrade({
66898
- ignore_config: true,
66899
- limit: true,
66900
- place: true
66886
+ if (reversePosition.getInstance().quantity > 0) {
66887
+ const opposite_config = focusPosition.getOppositeConfig({
66888
+ ratio: reward_factor
66901
66889
  });
66890
+ const reverse_config = await reversePosition.getConfig();
66891
+ if ((reverse_config.entry !== opposite_config.entry || reverse_config.stop !== opposite_config.stop || reverse_config.risk !== opposite_config.risk || reverse_config.risk_reward !== opposite_config.risk_reward) && focusPosition.getInstance().quantity > 0) {
66892
+ console.log("Updating reverse config for ", symbol, kind, "with opposite config", opposite_config);
66893
+ await reversePosition.getConfig({
66894
+ params: {
66895
+ entry: opposite_config.entry,
66896
+ stop: opposite_config.stop,
66897
+ risk: opposite_config.risk,
66898
+ risk_reward: opposite_config.risk_reward
66899
+ }
66900
+ });
66901
+ console.log("Placing trade for ", symbol, reversePosition.kind);
66902
+ await reversePosition.placeTrade({
66903
+ ignore_config: true,
66904
+ limit: true,
66905
+ place: true
66906
+ });
66907
+ }
66908
+ console.log("Opposite config for ", symbol, kind, opposite_config);
66902
66909
  }
66903
- console.log("Opposite config for ", symbol, kind, opposite_config);
66904
66910
  return {
66905
66911
  config_details: {
66906
66912
  app_config,
@@ -61186,7 +61186,8 @@ function getRiskReward(payload) {
61186
61186
  stop,
61187
61187
  risk,
61188
61188
  global_config,
61189
- force_exact_risk = false
61189
+ force_exact_risk = false,
61190
+ target_loss
61190
61191
  } = payload;
61191
61192
  const { entries, last_value, ...app_config } = buildAppConfig(global_config, {
61192
61193
  entry,
@@ -61199,7 +61200,8 @@ function getRiskReward(payload) {
61199
61200
  app_config,
61200
61201
  entry,
61201
61202
  stop,
61202
- risk_per_trade: risk
61203
+ risk_per_trade: risk,
61204
+ target_loss
61203
61205
  });
61204
61206
  if (force_exact_risk) {
61205
61207
  const new_risk_per_trade = determineOptimumRisk(global_config, {
@@ -66831,14 +66833,20 @@ class ExchangeAccount {
66831
66833
  symbol,
66832
66834
  kind
66833
66835
  });
66834
- await this.placeTrade({
66836
+ const focusPosition = await this.getFocusPosition({
66835
66837
  symbol,
66836
- kind,
66837
- limit: false,
66838
- ignore_config: true,
66839
- tp: true
66838
+ kind
66840
66839
  });
66841
- if (focus_position.avg_qty < last_value.avg_size) {
66840
+ if (focusPosition.getInstance().quantity > 0) {
66841
+ await this.placeTrade({
66842
+ symbol,
66843
+ kind,
66844
+ limit: false,
66845
+ ignore_config: true,
66846
+ tp: true
66847
+ });
66848
+ }
66849
+ if (focus_position.avg_qty < last_value.avg_size || focusPosition.getInstance().quantity === 0) {
66842
66850
  console.log("Placing trade for ", symbol, kind);
66843
66851
  await this.placeTrade({
66844
66852
  symbol,
@@ -66848,36 +66856,34 @@ class ExchangeAccount {
66848
66856
  });
66849
66857
  }
66850
66858
  console.log("Checking if focus position has quantity for ", symbol, kind);
66851
- const focusPosition = await this.getFocusPosition({
66852
- symbol,
66853
- kind
66854
- });
66855
66859
  const reversePosition = await this.getFocusPosition({
66856
66860
  symbol,
66857
66861
  kind: kind === "long" ? "short" : "long"
66858
66862
  });
66859
- const opposite_config = focusPosition.getOppositeConfig({
66860
- ratio: reward_factor
66861
- });
66862
- const reverse_config = await reversePosition.getConfig();
66863
- if ((reverse_config.entry !== opposite_config.entry || reverse_config.stop !== opposite_config.stop || reverse_config.risk !== opposite_config.risk || reverse_config.risk_reward !== opposite_config.risk_reward) && focusPosition.getInstance().quantity > 0) {
66864
- console.log("Updating reverse config for ", symbol, kind, "with opposite config", opposite_config);
66865
- await reversePosition.getConfig({
66866
- params: {
66867
- entry: opposite_config.entry,
66868
- stop: opposite_config.stop,
66869
- risk: opposite_config.risk,
66870
- risk_reward: opposite_config.risk_reward
66871
- }
66872
- });
66873
- console.log("Placing trade for ", symbol, reversePosition.kind);
66874
- await reversePosition.placeTrade({
66875
- ignore_config: true,
66876
- limit: true,
66877
- place: true
66863
+ if (reversePosition.getInstance().quantity > 0) {
66864
+ const opposite_config = focusPosition.getOppositeConfig({
66865
+ ratio: reward_factor
66878
66866
  });
66867
+ const reverse_config = await reversePosition.getConfig();
66868
+ if ((reverse_config.entry !== opposite_config.entry || reverse_config.stop !== opposite_config.stop || reverse_config.risk !== opposite_config.risk || reverse_config.risk_reward !== opposite_config.risk_reward) && focusPosition.getInstance().quantity > 0) {
66869
+ console.log("Updating reverse config for ", symbol, kind, "with opposite config", opposite_config);
66870
+ await reversePosition.getConfig({
66871
+ params: {
66872
+ entry: opposite_config.entry,
66873
+ stop: opposite_config.stop,
66874
+ risk: opposite_config.risk,
66875
+ risk_reward: opposite_config.risk_reward
66876
+ }
66877
+ });
66878
+ console.log("Placing trade for ", symbol, reversePosition.kind);
66879
+ await reversePosition.placeTrade({
66880
+ ignore_config: true,
66881
+ limit: true,
66882
+ place: true
66883
+ });
66884
+ }
66885
+ console.log("Opposite config for ", symbol, kind, opposite_config);
66879
66886
  }
66880
- console.log("Opposite config for ", symbol, kind, opposite_config);
66881
66887
  return {
66882
66888
  config_details: {
66883
66889
  app_config,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gbozee/ultimate",
3
3
  "type": "module",
4
- "version": "0.0.2-154",
4
+ "version": "0.0.2-156",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",