From bf11e5f84110fa27168088c3f3e111ba1877d37b Mon Sep 17 00:00:00 2001 From: adrienne-deriv <103016120+adrienne-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 11:35:26 +0800 Subject: [PATCH 01/41] adrienne/feat: added icons for add more wallets (#10123) * feat: added icons for add more wallets * chore: removed lazy loading currency icons * chore: refactored icon component * Revert "chore: removed lazy loading currency icons" This reverts commit cab994c6923b31b462bcf43585b4bde64df7dac3. * Revert "chore: refactored icon component" This reverts commit 954062c200c23544d0ba5f0c0e5da33e6f10b6e5. * Revert "Revert "chore: refactored icon component"" This reverts commit 92a0f5db76a83124fc3fa1a1f717b42a6b403627. * Revert "chore: refactored icon component" This reverts commit 954062c200c23544d0ba5f0c0e5da33e6f10b6e5. * chore: updated component name for add more icon * Update index.ts --- .../WalletAddMoreCurrencyIcon.scss | 13 ++++++ .../WalletAddMoreCurrencyIcon.tsx | 44 +++++++++++++++++++ .../WalletAddMoreCurrencyIcon/index.ts | 4 ++ .../WalletsAddMoreCard.scss | 6 +++ .../WalletsAddMoreCard/WalletsAddMoreCard.tsx | 6 ++- .../WalletsAddMoreCardBanner.scss | 16 ++++++- .../WalletsAddMoreCardBanner.tsx | 26 +++++++---- .../WalletsAddMoreCarousel.scss | 5 --- packages/wallets/src/public/images/check.svg | 3 ++ .../src/public/images/currencies/aud.svg | 1 + .../src/public/images/currencies/btc.svg | 5 +++ .../src/public/images/currencies/eth.svg | 16 +++++++ .../src/public/images/currencies/eur.svg | 15 +++++++ .../src/public/images/currencies/eusdt.svg | 9 ++++ .../src/public/images/currencies/gbp.svg | 5 +++ .../src/public/images/currencies/ltc.svg | 13 ++++++ .../src/public/images/currencies/usd.svg | 27 ++++++++++++ .../src/public/images/currencies/usdc.svg | 7 +++ packages/wallets/src/public/images/plus.svg | 3 ++ 19 files changed, 208 insertions(+), 16 deletions(-) create mode 100644 packages/wallets/src/components/WalletAddMoreCurrencyIcon/WalletAddMoreCurrencyIcon.scss create mode 100644 packages/wallets/src/components/WalletAddMoreCurrencyIcon/WalletAddMoreCurrencyIcon.tsx create mode 100644 packages/wallets/src/components/WalletAddMoreCurrencyIcon/index.ts create mode 100644 packages/wallets/src/public/images/check.svg create mode 100644 packages/wallets/src/public/images/currencies/aud.svg create mode 100644 packages/wallets/src/public/images/currencies/btc.svg create mode 100644 packages/wallets/src/public/images/currencies/eth.svg create mode 100644 packages/wallets/src/public/images/currencies/eur.svg create mode 100644 packages/wallets/src/public/images/currencies/eusdt.svg create mode 100644 packages/wallets/src/public/images/currencies/gbp.svg create mode 100644 packages/wallets/src/public/images/currencies/ltc.svg create mode 100644 packages/wallets/src/public/images/currencies/usd.svg create mode 100644 packages/wallets/src/public/images/currencies/usdc.svg create mode 100644 packages/wallets/src/public/images/plus.svg diff --git a/packages/wallets/src/components/WalletAddMoreCurrencyIcon/WalletAddMoreCurrencyIcon.scss b/packages/wallets/src/components/WalletAddMoreCurrencyIcon/WalletAddMoreCurrencyIcon.scss new file mode 100644 index 000000000000..fc1ea8a275bd --- /dev/null +++ b/packages/wallets/src/components/WalletAddMoreCurrencyIcon/WalletAddMoreCurrencyIcon.scss @@ -0,0 +1,13 @@ +.wallets-add-more-currency-icon { + width: 7rem; + height: fit-content; + + & > svg { + width: auto; + height: 3.5rem; + + @include mobile { + height: 3rem; + } + } +} diff --git a/packages/wallets/src/components/WalletAddMoreCurrencyIcon/WalletAddMoreCurrencyIcon.tsx b/packages/wallets/src/components/WalletAddMoreCurrencyIcon/WalletAddMoreCurrencyIcon.tsx new file mode 100644 index 000000000000..8ed6549b2d17 --- /dev/null +++ b/packages/wallets/src/components/WalletAddMoreCurrencyIcon/WalletAddMoreCurrencyIcon.tsx @@ -0,0 +1,44 @@ +import React from 'react'; +import AUDIcon from '../../public/images/currencies/aud.svg'; +import BTCIcon from '../../public/images/currencies/btc.svg'; +import ETHIcon from '../../public/images/currencies/eth.svg'; +import EURIcon from '../../public/images/currencies/eur.svg'; +import TetherIcon from '../../public/images/currencies/eusdt.svg'; +import GBPIcon from '../../public/images/currencies/gbp.svg'; +import LTCIcon from '../../public/images/currencies/ltc.svg'; +import USDIcon from '../../public/images/currencies/usd.svg'; +import USDCIcon from '../../public/images/currencies/usdc.svg'; + +const currencies = { + aud: AUDIcon, + btc: BTCIcon, + eth: ETHIcon, + eur: EURIcon, + eusdt: TetherIcon, + ltc: LTCIcon, + usd: USDIcon, + gbp: GBPIcon, + usdc: USDCIcon, + tusdt: TetherIcon, + ust: TetherIcon, +}; + +type TWalletCurrencyIconProps = { + currency: string; +}; + +const WalletAddMoreCurrencyIcon = ({ currency }: TWalletCurrencyIconProps) => { + const CurrencyIcon = React.useMemo(() => currencies[currency as keyof typeof currencies], [currency]); + + if (CurrencyIcon) { + return ( +
+ +
+ ); + } + + return LOGO; +}; + +export default WalletAddMoreCurrencyIcon; diff --git a/packages/wallets/src/components/WalletAddMoreCurrencyIcon/index.ts b/packages/wallets/src/components/WalletAddMoreCurrencyIcon/index.ts new file mode 100644 index 000000000000..9ebf3e624951 --- /dev/null +++ b/packages/wallets/src/components/WalletAddMoreCurrencyIcon/index.ts @@ -0,0 +1,4 @@ +import WalletAddMoreCurrencyIcon from './WalletAddMoreCurrencyIcon'; +import './WalletAddMoreCurrencyIcon.scss'; + +export default WalletAddMoreCurrencyIcon; diff --git a/packages/wallets/src/components/WalletsAddMoreCard/WalletsAddMoreCard.scss b/packages/wallets/src/components/WalletsAddMoreCard/WalletsAddMoreCard.scss index dae5d4c70704..b8d100718d12 100644 --- a/packages/wallets/src/components/WalletsAddMoreCard/WalletsAddMoreCard.scss +++ b/packages/wallets/src/components/WalletsAddMoreCard/WalletsAddMoreCard.scss @@ -11,10 +11,16 @@ border: 0.1rem solid var(--system-light-5-active-background, #d6dadb); background: var(--system-light-8-primary-background, #fff); box-shadow: 0px 4px 6px -2px rgba(14, 14, 14, 0.03), 0px 12px 16px -4px rgba(14, 14, 14, 0.08); + margin-right: 2rem; @include mobile { width: 19.2rem; gap: 1.6rem; + margin-right: 1.6rem; + } + + &:first-child { + margin-left: 1rem; } } } diff --git a/packages/wallets/src/components/WalletsAddMoreCard/WalletsAddMoreCard.tsx b/packages/wallets/src/components/WalletsAddMoreCard/WalletsAddMoreCard.tsx index 092f3935f8b3..3c2f66778375 100644 --- a/packages/wallets/src/components/WalletsAddMoreCard/WalletsAddMoreCard.tsx +++ b/packages/wallets/src/components/WalletsAddMoreCard/WalletsAddMoreCard.tsx @@ -10,7 +10,11 @@ const WalletsAddMoreCard = ({ currency, is_added, landing_company_name }: TWalle return (
- +
diff --git a/packages/wallets/src/components/WalletsAddMoreCardBanner/WalletsAddMoreCardBanner.scss b/packages/wallets/src/components/WalletsAddMoreCardBanner/WalletsAddMoreCardBanner.scss index 687b62fff39f..788f6b02b3c4 100644 --- a/packages/wallets/src/components/WalletsAddMoreCardBanner/WalletsAddMoreCardBanner.scss +++ b/packages/wallets/src/components/WalletsAddMoreCardBanner/WalletsAddMoreCardBanner.scss @@ -12,7 +12,7 @@ @include mobile { width: 16rem; height: 9.6rem; - padding: 0.8rem; + padding: 1rem; flex-shrink: 0; } &-header { @@ -20,20 +20,32 @@ justify-content: space-between; } &-button { + background-color: #ffffff; + border: none; + border-radius: 5px; cursor: pointer; + display: flex; + align-items: center; + justify-content: center; width: 100%; - padding: 0.6rem 1.6rem; + padding: 1rem; font-weight: 700; @include mobile { padding: 0.3rem 0.8rem; } + + &-icon { + margin-right: 0.5rem; + } + &--is-added { opacity: 0.3; cursor: default; } } &-landing-company { + align-self: flex-start; border: 0.1rem solid #000; border-radius: 0.2rem; padding: 0 0.4rem; diff --git a/packages/wallets/src/components/WalletsAddMoreCardBanner/WalletsAddMoreCardBanner.tsx b/packages/wallets/src/components/WalletsAddMoreCardBanner/WalletsAddMoreCardBanner.tsx index 55548b474937..befa56d1d45f 100644 --- a/packages/wallets/src/components/WalletsAddMoreCardBanner/WalletsAddMoreCardBanner.tsx +++ b/packages/wallets/src/components/WalletsAddMoreCardBanner/WalletsAddMoreCardBanner.tsx @@ -1,23 +1,33 @@ import React from 'react'; +import type { useAvailableWallets } from '@deriv/api'; +import CheckIcon from '../../public/images/check.svg'; +import PlusIcon from '../../public/images/plus.svg'; +import WalletAddMoreCurrencyIcon from '../WalletAddMoreCurrencyIcon'; -type TWalletsAddMoreCardBanner = { - is_added: boolean; - landing_company_name: string; -}; +type TWalletsAddMoreCardBannerProps = NonNullable['data']>[0]; -const WalletsAddMoreCardBanner = ({ is_added, landing_company_name }: TWalletsAddMoreCardBanner) => { +const WalletsAddMoreCardBanner = ({ currency, is_added, landing_company_name }: TWalletsAddMoreCardBannerProps) => { return (
- LOGO - {landing_company_name.toUpperCase()} + + + + + {landing_company_name ? landing_company_name.toUpperCase() : ''} +
); diff --git a/packages/wallets/src/components/WalletsAddMoreCarousel/WalletsAddMoreCarousel.scss b/packages/wallets/src/components/WalletsAddMoreCarousel/WalletsAddMoreCarousel.scss index 02bf4221cadd..856a17b2bdca 100644 --- a/packages/wallets/src/components/WalletsAddMoreCarousel/WalletsAddMoreCarousel.scss +++ b/packages/wallets/src/components/WalletsAddMoreCarousel/WalletsAddMoreCarousel.scss @@ -39,11 +39,6 @@ display: flex; align-items: center; justify-content: flex-start; - gap: 2.4rem; - - @include mobile { - gap: 1.6rem; - } } &-btn { diff --git a/packages/wallets/src/public/images/check.svg b/packages/wallets/src/public/images/check.svg new file mode 100644 index 000000000000..cd54362fa240 --- /dev/null +++ b/packages/wallets/src/public/images/check.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/wallets/src/public/images/currencies/aud.svg b/packages/wallets/src/public/images/currencies/aud.svg new file mode 100644 index 000000000000..35a7dfd2dc96 --- /dev/null +++ b/packages/wallets/src/public/images/currencies/aud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/wallets/src/public/images/currencies/btc.svg b/packages/wallets/src/public/images/currencies/btc.svg new file mode 100644 index 000000000000..864b71d2c230 --- /dev/null +++ b/packages/wallets/src/public/images/currencies/btc.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/packages/wallets/src/public/images/currencies/eth.svg b/packages/wallets/src/public/images/currencies/eth.svg new file mode 100644 index 000000000000..2d44b727e9d8 --- /dev/null +++ b/packages/wallets/src/public/images/currencies/eth.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/wallets/src/public/images/currencies/eur.svg b/packages/wallets/src/public/images/currencies/eur.svg new file mode 100644 index 000000000000..18edd9c10437 --- /dev/null +++ b/packages/wallets/src/public/images/currencies/eur.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/packages/wallets/src/public/images/currencies/eusdt.svg b/packages/wallets/src/public/images/currencies/eusdt.svg new file mode 100644 index 000000000000..f175521b3da5 --- /dev/null +++ b/packages/wallets/src/public/images/currencies/eusdt.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/packages/wallets/src/public/images/currencies/gbp.svg b/packages/wallets/src/public/images/currencies/gbp.svg new file mode 100644 index 000000000000..9f6e81c78097 --- /dev/null +++ b/packages/wallets/src/public/images/currencies/gbp.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/packages/wallets/src/public/images/currencies/ltc.svg b/packages/wallets/src/public/images/currencies/ltc.svg new file mode 100644 index 000000000000..97a0d887553b --- /dev/null +++ b/packages/wallets/src/public/images/currencies/ltc.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/packages/wallets/src/public/images/currencies/usd.svg b/packages/wallets/src/public/images/currencies/usd.svg new file mode 100644 index 000000000000..7e47b5363b5a --- /dev/null +++ b/packages/wallets/src/public/images/currencies/usd.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/wallets/src/public/images/currencies/usdc.svg b/packages/wallets/src/public/images/currencies/usdc.svg new file mode 100644 index 000000000000..625dee67fafb --- /dev/null +++ b/packages/wallets/src/public/images/currencies/usdc.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/packages/wallets/src/public/images/plus.svg b/packages/wallets/src/public/images/plus.svg new file mode 100644 index 000000000000..471968332c8b --- /dev/null +++ b/packages/wallets/src/public/images/plus.svg @@ -0,0 +1,3 @@ + + + From 52a79f2bd56b0f3707a3e4f3c0e7a6bf34dba611 Mon Sep 17 00:00:00 2001 From: Farzin Mirzaie <72082844+farzin-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 11:44:52 +0800 Subject: [PATCH 02/41] Farzin/chore: ESLint to Wallets (#10176) * feat(wallet): clean-up * feat(wallet): clean-up --------- Co-authored-by: Farzin --- packages/api/src/hooks/index.ts | 20 ++-- packages/api/src/hooks/useAccountStatus.ts | 109 ++++++++++++++++++ .../__test__/recommend-user.spec.tsx | 6 +- packages/wallets/.eslintrc.js | 14 ++- packages/wallets/package.json | 4 + .../components/ProgressBar/ProgressBar.tsx | 2 +- .../WalletGradientBackground.tsx | 4 +- .../WalletListCardIcon/WalletListCardIcon.tsx | 2 +- .../WalletsAccordion/WalletsAccordion.tsx | 2 +- packages/wallets/src/components/index.ts | 2 +- 10 files changed, 145 insertions(+), 20 deletions(-) create mode 100644 packages/api/src/hooks/useAccountStatus.ts diff --git a/packages/api/src/hooks/index.ts b/packages/api/src/hooks/index.ts index b1c220bb208c..9d5572d4ae3c 100644 --- a/packages/api/src/hooks/index.ts +++ b/packages/api/src/hooks/index.ts @@ -1,5 +1,5 @@ -export { default as useAccountsList } from './useAccountsList'; export { default as useAccountTypes } from './useAccountTypes'; +export { default as useAccountsList } from './useAccountsList'; export { default as useActiveAccount } from './useActiveAccount'; export { default as useActiveTradingAccount } from './useActiveTradingAccount'; export { default as useActiveWalletAccount } from './useActiveWalletAccount'; @@ -7,7 +7,14 @@ export { default as useAllAvailableAccounts } from './useAllAvailableAccounts'; export { default as useAuthorize } from './useAuthorize'; export { default as useAvailableWallets } from './useAvailableWallets'; export { default as useBalance } from './useBalance'; +export { default as useCFDAccountsList } from './useCFDAccountsList'; +export { default as useCreateMT5Account } from './useCreateMT5Account'; +export { default as useCreateOtherCFDAccount } from './useCreateOtherCFDAccount'; +export { default as useCtraderAccountsList } from './useCtraderAccountsList'; +export { default as useAccountStatus, default as useCtraderServiceToken } from './useCtraderServiceToken'; export { default as useCurrencyConfig } from './useCurrencyConfig'; +export { default as useDerivezAccountsList } from './useDerivezAccountsList'; +export { default as useDxtradeAccountsList } from './useDxtradeAccountsList'; export { default as useGetAccountStatus } from './useGetAccountStatus'; export { default as useLandingCompany } from './useLandingCompany'; export { default as useMT5AccountsList } from './useMT5AccountsList'; @@ -15,14 +22,7 @@ export { default as useSettings } from './useSettings'; export { default as useTradingAccountsList } from './useTradingAccountsList'; export { default as useTradingPlatformAccounts } from './useTradingPlatformAccounts'; export { default as useTradingPlatformAvailableAccounts } from './useTradingPlatformAvailableAccounts'; -export { default as useWalletAccountsList } from './useWalletAccountsList'; export { default as useTradingPlatformInvestorPasswordChange } from './useTradingPlatformInvestorPasswordChange'; -export { default as useCreateMT5Account } from './useCreateMT5Account'; -export { default as useCreateOtherCFDAccount } from './useCreateOtherCFDAccount'; -export { default as useTradingPlatformPasswordChange } from './useTradingPlatformPasswordChange'; export { default as useTradingPlatformInvestorPasswordReset } from './useTradingPlatformInvestorPasswordReset'; -export { default as useDxtradeAccountsList } from './useDxtradeAccountsList'; -export { default as useDerivezAccountsList } from './useDerivezAccountsList'; -export { default as useCFDAccountsList } from './useCFDAccountsList'; -export { default as useCtraderAccountsList } from './useCtraderAccountsList'; -export { default as useCtraderServiceToken } from './useCtraderServiceToken'; +export { default as useTradingPlatformPasswordChange } from './useTradingPlatformPasswordChange'; +export { default as useWalletAccountsList } from './useWalletAccountsList'; diff --git a/packages/api/src/hooks/useAccountStatus.ts b/packages/api/src/hooks/useAccountStatus.ts new file mode 100644 index 000000000000..02aa628584af --- /dev/null +++ b/packages/api/src/hooks/useAccountStatus.ts @@ -0,0 +1,109 @@ +import { useMemo } from 'react'; +import useGetAccountStatus from './useGetAccountStatus'; + +/** A custom hook to check the account status for the current user. */ +const useAccountStatus = () => { + const { data: get_account_status_data, ...rest } = useGetAccountStatus(); + + // Add additional information to the account status response. + const modified_account_status = useMemo(() => { + if (!get_account_status_data?.status) return; + + const status = new Set(get_account_status_data?.status); + + return { + /** Account status. */ + status: get_account_status_data?.status, + /** client's address is verified by third party services. */ + is_address_verified: status.has('address_verified'), + /** client is allowed to upload documents. */ + is_allow_document_upload: status.has('allow_document_upload'), + /** client is age-verified. */ + is_age_verification: status.has('age_verification'), + /** client is fully authenticated. */ + is_authenticated: status.has('authenticated'), + /** cashier is locked. */ + is_cashier_locked: status.has('cashier_locked'), + /** client has updated tax related information. */ + is_crs_tin_information: status.has('crs_tin_information'), + /** deposit is not allowed. */ + is_deposit_locked: status.has('deposit_locked'), + /** account is disabled. */ + is_disabled: status.has('disabled'), + /** client's submitted proof-of-identity documents have expired. */ + is_document_expired: status.has('document_expired'), + /** client's submitted proof-of-identity documents are expiring within a month. */ + is_document_expiring_soon: status.has('document_expiring_soon'), + /** Deriv X password is not set. */ + is_dxtrade_password_not_set: status.has('dxtrade_password_not_set'), + /** client should complete their financial assessment. */ + is_financial_assessment_not_complete: status.has('financial_assessment_not_complete'), + /** client has not completed financial assessment. */ + is_financial_information_not_complete: status.has('financial_information_not_complete'), + /** client has accepted financial risk disclosure. */ + is_financial_risk_approval: status.has('financial_risk_approval'), + /** client has not set financial limits on their account. Applies to UK and Malta clients. */ + is_max_turnover_limit_not_set: status.has('max_turnover_limit_not_set'), + /** MT5 password is not set. */ + is_mt5_password_not_set: status.has('mt5_password_not_set'), + /** MT5 deposits allowed, but withdrawal is not allowed. */ + is_mt5_withdrawal_locked: status.has('mt5_withdrawal_locked'), + /** user must approve the Affiliate's Code of Conduct Agreement. */ + is_needs_affiliate_coc_approval: status.has('needs_affiliate_coc_approval'), + /** trading is disabled. */ + is_no_trading: status.has('no_trading'), + /** client cannot trade or withdraw but can deposit. */ + is_no_withdrawal_or_trading: status.has('no_withdrawal_or_trading'), + /** p2p is blocked for the current payment agent client. */ + is_p2p_blocked_for_pa: status.has('p2p_blocked_for_pa'), + /** withdrawal through payment agent is allowed. */ + is_pa_withdrawal_explicitly_allowed: status.has('pa_withdrawal_explicitly_allowed'), + /** this client must reset their password. */ + is_password_reset_required: status.has('password_reset_required'), + /** this client has opted for a professional account. */ + is_professional: status.has('professional'), + /** this client has requested for a professional account. */ + is_professional_requested: status.has('professional_requested'), + /** this client's request for a professional account has been rejected. */ + is_professional_rejected: status.has('professional_rejected'), + /** this client is using social signup. */ + is_social_signup: status.has('social_signup'), + /** client has not completed the trading experience questionnaire. */ + is_trading_experience_not_complete: status.has('trading_experience_not_complete'), + /** client has acknowledged UKGC funds protection notice. */ + is_ukgc_funds_protection: status.has('ukgc_funds_protection'), + /** client cannot deposit or buy contracts, but can withdraw or sell contracts. */ + is_unwelcome: status.has('unwelcome'), + /** deposits allowed but withdrawals are not allowed. */ + is_withdrawal_locked: status.has('withdrawal_locked'), + /** this prevent a client from changing the account currency after deposit attempt. */ + is_deposit_attempt: status.has('deposit_attempt'), + /** client POI documents name mismatch. */ + is_poi_name_mismatch: status.has('poi_name_mismatch'), + /** the client can resubmit POA documents. */ + is_allow_poa_resubmission: status.has('allow_poa_resubmission'), + /** the client can resubmit POI documents. */ + is_allow_poi_resubmission: status.has('allow_poi_resubmission'), + /** the client has been sharing payment methods. */ + is_shared_payment_method: status.has('shared_payment_method'), + /** client is not allowed to edit personal profile details. */ + is_personal_details_locked: status.has('personal_details_locked'), + /** it block any transfer between two accounts. */ + is_transfers_blocked: status.has('transfers_blocked'), + /** the DF deposit will be blocked until the client gets age verified. */ + is_df_deposit_requires_poi: status.has('df_deposit_requires_poi'), + /** the client has been fully authenticated by IDV. */ + is_authenticated_with_idv_photoid: status.has('authenticated_with_idv_photoid'), + /** the client used to be fully authenticated by IDV but it was taken away due to compliance criteria. */ + is_idv_revoked: status.has('idv_revoked'), + }; + }, [get_account_status_data?.status]); + + return { + /** The account status response. */ + data: modified_account_status, + ...rest, + }; +}; + +export default useAccountStatus; diff --git a/packages/p2p/src/components/recommend-user/__test__/recommend-user.spec.tsx b/packages/p2p/src/components/recommend-user/__test__/recommend-user.spec.tsx index 6dfb0cc10f03..a36613049591 100644 --- a/packages/p2p/src/components/recommend-user/__test__/recommend-user.spec.tsx +++ b/packages/p2p/src/components/recommend-user/__test__/recommend-user.spec.tsx @@ -16,14 +16,14 @@ describe('', () => { render(); expect(screen.getByText('Would you recommend this buyer?')).toBeInTheDocument(); - expect(screen.getAllByRole('button').length).toBe(2); + expect(screen.getAllByRole('button')).toHaveLength(2); }); it('should render the component with correct message if it is a buy order for the user and both buttons', () => { render(); expect(screen.getByText('Would you recommend this seller?')).toBeInTheDocument(); - expect(screen.getAllByRole('button').length).toBe(2); + expect(screen.getAllByRole('button')).toHaveLength(2); }); it('should auto select the Yes button if the user was previously recommended', () => { @@ -88,4 +88,4 @@ describe('', () => { expect(yesText).toHaveStyle('color: var(--text-less-prominent)'); expect(recommend_user_props.onClickNotRecommended).toHaveBeenCalledTimes(2); }); -}); \ No newline at end of file +}); diff --git a/packages/wallets/.eslintrc.js b/packages/wallets/.eslintrc.js index 1e5ec93c8595..eb3118aacc92 100644 --- a/packages/wallets/.eslintrc.js +++ b/packages/wallets/.eslintrc.js @@ -1,6 +1,10 @@ module.exports = { root: true, - extends: '../../.eslintrc.js', + extends: ['../../.eslintrc.js', 'eslint:recommended', 'plugin:react/recommended'], + parserOptions: { + sourceType: 'module', + }, + env: { es6: true }, plugins: ['simple-import-sort'], rules: { 'simple-import-sort/imports': [ @@ -31,5 +35,13 @@ module.exports = { ], }, ], + 'simple-import-sort/exports': 'error', + 'import/first': 'error', + 'import/newline-after-import': 'error', + 'import/no-duplicates': 'error', + camelcase: 'warn', + '@typescript-eslint/array-type': 'error', + '@typescript-eslint/sort-type-constituents': 'error', + '@typescript-eslint/no-unused-vars': 'error', }, }; diff --git a/packages/wallets/package.json b/packages/wallets/package.json index d6b19712c477..96bf08624011 100644 --- a/packages/wallets/package.json +++ b/packages/wallets/package.json @@ -10,6 +10,10 @@ "usehooks-ts": "^2.7.0" }, "devDependencies": { + "@typescript-eslint/eslint-plugin": "5.45.0", + "@typescript-eslint/parser": "5.45.0", + "eslint-plugin-react": "^7.22.0", + "eslint-plugin-react-hooks": "^4.2.0", "eslint-plugin-simple-import-sort": "^10.0.0", "typescript": "^4.6.3" } diff --git a/packages/wallets/src/components/ProgressBar/ProgressBar.tsx b/packages/wallets/src/components/ProgressBar/ProgressBar.tsx index c55f651caed5..af6f503e5553 100644 --- a/packages/wallets/src/components/ProgressBar/ProgressBar.tsx +++ b/packages/wallets/src/components/ProgressBar/ProgressBar.tsx @@ -4,7 +4,7 @@ import './ProgressBar.scss'; type TProps = { is_transition?: boolean; active_index: number; - indexes: Array; + indexes: string[]; setActiveIndex: (index: string) => void; }; diff --git a/packages/wallets/src/components/WalletGradientBackground/WalletGradientBackground.tsx b/packages/wallets/src/components/WalletGradientBackground/WalletGradientBackground.tsx index 85326e6a8fec..12f01d333678 100644 --- a/packages/wallets/src/components/WalletGradientBackground/WalletGradientBackground.tsx +++ b/packages/wallets/src/components/WalletGradientBackground/WalletGradientBackground.tsx @@ -1,7 +1,7 @@ import React from 'react'; import './WalletGradientBackground.scss'; -type WalletGradientBackground = { +type TProps = { children: React.ReactNode; currency: string; device?: 'desktop' | 'mobile'; @@ -11,7 +11,7 @@ type WalletGradientBackground = { type?: 'card' | 'header'; }; -const WalletGradientBackground: React.FC = ({ +const WalletGradientBackground: React.FC = ({ has_shine = false, is_demo = false, currency, diff --git a/packages/wallets/src/components/WalletListCardIcon/WalletListCardIcon.tsx b/packages/wallets/src/components/WalletListCardIcon/WalletListCardIcon.tsx index de9d8a893559..64a72c45080e 100644 --- a/packages/wallets/src/components/WalletListCardIcon/WalletListCardIcon.tsx +++ b/packages/wallets/src/components/WalletListCardIcon/WalletListCardIcon.tsx @@ -37,7 +37,7 @@ const type_to_size_mapper = { }; type TProps = { - type: keyof typeof type_to_icon_mapper | Omit; + type: Omit | keyof typeof type_to_icon_mapper; }; const WalletListCardIcon: React.FC = ({ type }) => { diff --git a/packages/wallets/src/components/WalletsAccordion/WalletsAccordion.tsx b/packages/wallets/src/components/WalletsAccordion/WalletsAccordion.tsx index 4e89a2d17ffc..d5fafa1fc83f 100644 --- a/packages/wallets/src/components/WalletsAccordion/WalletsAccordion.tsx +++ b/packages/wallets/src/components/WalletsAccordion/WalletsAccordion.tsx @@ -34,7 +34,7 @@ const WalletsAccordion: React.FC = ({ account: { is_active, is_virtual, {header}
switchAccount(loginid)} + onClick={() => switchAccount(loginid)} >
diff --git a/packages/wallets/src/components/index.ts b/packages/wallets/src/components/index.ts index 482fb3980e7a..33f2361e7770 100644 --- a/packages/wallets/src/components/index.ts +++ b/packages/wallets/src/components/index.ts @@ -18,8 +18,8 @@ export * from './WalletListCard'; export * from './WalletListCardBadge'; export * from './WalletListCardIActions'; export * from './WalletListCardIBalance'; -export * from './WalletListCardIDetails'; export * from './WalletListCardIcon'; +export * from './WalletListCardIDetails'; export * from './WalletListCardTitle'; export * from './WalletsAccordion'; export * from './WalletsCarousel'; From 04b93d35b42302c880191fe9cd95e33004fca276 Mon Sep 17 00:00:00 2001 From: henry-deriv <118344354+henry-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 12:16:19 +0800 Subject: [PATCH 03/41] henry/dtra-397/fix: enable accumulators in open positions dropdown for real accounts (#10030) * fix: enable accumulators in open positions dropdown for real accounts * fix: resolve comment * fix: subtask --- packages/reports/src/Containers/open-positions.tsx | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/packages/reports/src/Containers/open-positions.tsx b/packages/reports/src/Containers/open-positions.tsx index 9e117c3a0f63..1c70d2d59706 100644 --- a/packages/reports/src/Containers/open-positions.tsx +++ b/packages/reports/src/Containers/open-positions.tsx @@ -138,7 +138,6 @@ type TOpenPositions = Pick< currency: string; is_accumulator: boolean; is_eu: boolean; - is_virtual: boolean; NotificationMessages: () => JSX.Element; server_time: moment.Moment; addToast: (obj: TAddToastProps) => void; @@ -464,10 +463,9 @@ const OpenPositions = ({ error, getPositionById, is_accumulator, - is_eu, + is_eu: hide_accu_in_dropdown, is_loading, is_multiplier, - is_virtual, NotificationMessages, onClickCancel, onClickSell, @@ -490,9 +488,8 @@ const OpenPositions = ({ const [accumulator_rate, setAccumulatorRate] = React.useState(accumulator_rates[0]); const is_accumulator_selected = contract_type_value === contract_types[2].text; const is_multiplier_selected = contract_type_value === contract_types[1].text; - const show_accu_in_dropdown = !is_eu && is_virtual; const contract_types_list = contract_types - .filter(contract_type => contract_type.text !== localize('Accumulators') || show_accu_in_dropdown) + .filter(contract_type => contract_type.text !== localize('Accumulators') || !hide_accu_in_dropdown) .map(({ text }) => ({ text, value: text })); const accumulators_rates_list = accumulator_rates.map(value => ({ text: value, value })); const active_positions_filtered = active_positions?.filter(({ contract_info }) => { @@ -643,7 +640,7 @@ const OpenPositions = ({ onChange={e => setContractTypeValue(e.target.value)} /> - {is_accumulator_selected && show_accu_in_dropdown && ( + {is_accumulator_selected && !hide_accu_in_dropdown && (
- {is_accumulator_selected && show_accu_in_dropdown && ( + {is_accumulator_selected && !hide_accu_in_dropdown && ( Date: Wed, 20 Sep 2023 07:18:50 +0300 Subject: [PATCH 04/41] Maryia/dtra-412/fix: Take profit update issue with non-Multipliers contract cards (#10091) * fix: Take profit ContractUpdateForm for Accumulators * style: typo --- packages/components/package.json | 3 + .../__tests__/contract-update-form.spec.tsx | 198 ++++++++++++++++++ .../contract-card-body.tsx | 2 +- .../contract-update-form.tsx | 7 +- .../input-with-checkbox.tsx | 2 +- .../shared/src/utils/contract/contract.ts | 2 +- 6 files changed, 207 insertions(+), 7 deletions(-) create mode 100644 packages/components/src/components/contract-card/contract-card-items/__tests__/contract-update-form.spec.tsx diff --git a/packages/components/package.json b/packages/components/package.json index f8b1734be02e..b998d1abcddd 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -41,7 +41,10 @@ "@storybook/manager-webpack5": "^6.5.10", "@storybook/react": "^6.5.10", "@storybook/testing-library": "^0.0.13", + "@testing-library/jest-dom": "^5.12.0", "@testing-library/react": "^12.0.0", + "@testing-library/react-hooks": "^7.0.2", + "@testing-library/user-event": "^13.5.0", "@types/lodash.throttle": "^4.1.7", "@types/react": "^18.0.7", "@types/react-dom": "^18.0.0", diff --git a/packages/components/src/components/contract-card/contract-card-items/__tests__/contract-update-form.spec.tsx b/packages/components/src/components/contract-card/contract-card-items/__tests__/contract-update-form.spec.tsx new file mode 100644 index 000000000000..1f6f981e1a53 --- /dev/null +++ b/packages/components/src/components/contract-card/contract-card-items/__tests__/contract-update-form.spec.tsx @@ -0,0 +1,198 @@ +import React from 'react'; +import { configure, render, screen } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; +import { TContractInfo } from '@deriv/shared'; +import ContractUpdateForm from '../contract-update-form'; +import { TGetCardLables } from '../../../types'; + +const mockCardLabels = () => ({ + APPLY: 'Apply', + DECREMENT_VALUE: 'Decrement value', + INCREMENT_VALUE: 'Increment value', + STOP_LOSS: 'Stop loss:', + TAKE_PROFIT: 'Take profit:', + TOTAL_PROFIT_LOSS: 'Total profit/loss:', +}); + +const contract_info: TContractInfo = { + contract_id: 1, + contract_type: 'ACCU', + is_sold: 0, + is_valid_to_cancel: 1, + profit: 50, +}; + +const contract = { + contract_update_config: { contract_update_stop_loss: '', contract_update_take_profit: '' }, //contains applied values + contract_update_stop_loss: '', // contains entered values + contract_update_take_profit: '', // contains entered values + has_contract_update_stop_loss: false, + has_contract_update_take_profit: false, + contract_info, + clearContractUpdateConfigValues: jest.fn(), + updateLimitOrder: jest.fn(), + validation_errors: { contract_update_stop_loss: [], contract_update_take_profit: [] }, + onChange: jest.fn(), +}; + +const el_modal = document.createElement('div'); + +describe('ContractUpdateForm', () => { + const mock_props: React.ComponentProps = { + addToast: jest.fn(), + contract, + current_focus: null, + getCardLabels: mockCardLabels as TGetCardLables, + getContractById: jest.fn(), + is_accumulator: true, + onMouseLeave: jest.fn(), + removeToast: jest.fn(), + setCurrentFocus: jest.fn(), + status: 'profit', + toggleDialog: jest.fn(), + }; + beforeAll(() => { + el_modal.setAttribute('id', 'modal_root'); + document.body.appendChild(el_modal); + }); + afterAll(() => { + document.body.removeChild(el_modal); + }); + it(`should render unchecked Take profit input with checkbox and disabled Apply button + for Accumulators when take profit is not selected or applied`, () => { + render(); + const take_profit_checkbox = screen.getByRole('checkbox', { name: mockCardLabels().TAKE_PROFIT }); + const stop_loss_checkbox = screen.queryByRole('checkbox', { name: mockCardLabels().STOP_LOSS }); + const take_profit_input = screen.getByRole('textbox'); + const decrement_button = screen.getByRole('button', { name: mockCardLabels().DECREMENT_VALUE }); + const increment_button = screen.getByRole('button', { name: mockCardLabels().INCREMENT_VALUE }); + const apply_button = screen.getByRole('button', { name: mockCardLabels().APPLY }); + expect(take_profit_checkbox).not.toBeChecked(); + expect(take_profit_input).toHaveDisplayValue(''); + expect(decrement_button).toBeInTheDocument(); + expect(increment_button).toBeInTheDocument(); + expect(stop_loss_checkbox).not.toBeInTheDocument(); + expect(apply_button).toBeDisabled(); + }); + it(`should render checked Take profit input with checkbox and enabled Apply button + when take profit is already applied`, () => { + const new_props = { + ...mock_props, + current_focus: 'contract_update_take_profit', + contract: { + ...contract, + contract_update_config: { contract_update_stop_loss: '', contract_update_take_profit: '56' }, + contract_update_take_profit: '56', + has_contract_update_take_profit: true, + limit_order: { + take_profit: { + order_amount: 56, + order_date: 1234560000, + }, + }, + }, + }; + render(); + const take_profit_checkbox = screen.getByRole('checkbox', { name: mockCardLabels().TAKE_PROFIT }); + const take_profit_input = screen.getByRole('textbox'); + const apply_button = screen.getByRole('button', { name: mockCardLabels().APPLY }); + expect(take_profit_checkbox).toBeChecked(); + expect(take_profit_input).toHaveDisplayValue('56'); + expect(apply_button).toBeEnabled(); + }); + it(`should render checked Take profit input with checkbox and diabled Apply button + when take profit is selected, but not entered`, () => { + const new_props = { + ...mock_props, + current_focus: 'contract_update_take_profit', + contract: { + ...contract, + has_contract_update_take_profit: true, + }, + }; + render(); + const take_profit_checkbox = screen.getByRole('checkbox', { name: mockCardLabels().TAKE_PROFIT }); + const apply_button = screen.getByRole('button', { name: mockCardLabels().APPLY }); + expect(take_profit_checkbox).toBeChecked(); + expect(apply_button).toBeDisabled(); + }); + it(`should render checked Take profit input with checkbox and enabled Apply button + when take profit is selected, entered, and there are no validation errors`, () => { + const new_props = { + ...mock_props, + current_focus: 'contract_update_take_profit', + contract: { + ...contract, + contract_update_config: { contract_update_stop_loss: '', contract_update_take_profit: '5' }, + contract_update_take_profit: '56', + has_contract_update_take_profit: true, + }, + }; + render(); + const take_profit_checkbox = screen.getByRole('checkbox', { name: mockCardLabels().TAKE_PROFIT }); + const take_profit_input = screen.getByRole('textbox'); + const apply_button = screen.getByRole('button', { name: mockCardLabels().APPLY }); + expect(take_profit_checkbox).toBeChecked(); + expect(take_profit_input).toHaveDisplayValue('56'); + expect(apply_button).toBeEnabled(); + // when chechbox is unchecked, Apply button should remain enabled: + userEvent.click(take_profit_checkbox); + expect(take_profit_checkbox).not.toBeChecked(); + expect(apply_button).toBeEnabled(); + // when Apply button is clicked, toggleDialog should be called: + userEvent.click(apply_button); + expect(new_props.toggleDialog).toHaveBeenCalled(); + }); + it(`should render checked Take profit input with checkbox, disabled Apply button & error message + when take profit is selected, entered, and there are validation errors`, () => { + const new_props = { + ...mock_props, + current_focus: 'contract_update_take_profit', + contract: { + ...contract, + contract_update_take_profit: '', + has_contract_update_take_profit: true, + validation_errors: { + contract_update_take_profit: ['Please enter a take profit amount.'], + contract_update_stop_loss: [], + }, + }, + }; + render(); + const take_profit_checkbox = screen.getByRole('checkbox', { name: mockCardLabels().TAKE_PROFIT }); + const take_profit_input = screen.getByRole('textbox'); + const apply_button = screen.getByRole('button', { name: mockCardLabels().APPLY }); + configure({ testIdAttribute: 'data-tooltip' }); + const error_message = screen.getByTestId('Please enter a take profit amount.'); + expect(take_profit_checkbox).toBeChecked(); + expect(take_profit_input).toHaveDisplayValue(''); + expect(apply_button).toBeDisabled(); + expect(error_message).toBeInTheDocument(); + // when typing a value, onChange should be called: + userEvent.type(take_profit_input, '5'); + expect(new_props.contract.onChange).toHaveBeenCalled(); + }); + it(`should render unchecked Take profit & Stop loss inputs with checkboxes and disabled Apply button + for Multipliers when neither take profit, nor stop loss is selected or applied`, () => { + const new_props = { + ...mock_props, + contract: { + ...contract, + contract_info: { + ...contract_info, + contract_type: 'MULTDOWN', + }, + }, + is_accumulator: false, + }; + render(); + const stop_loss_checkbox = screen.getByRole('checkbox', { name: mockCardLabels().STOP_LOSS }); + const take_profit_checkbox = screen.queryByRole('checkbox', { name: mockCardLabels().TAKE_PROFIT }); + const inputs = screen.getAllByRole('textbox'); + const apply_button = screen.getByRole('button', { name: mockCardLabels().APPLY }); + expect(stop_loss_checkbox).not.toBeChecked(); + expect(take_profit_checkbox).not.toBeChecked(); + expect(inputs).toHaveLength(2); + expect(apply_button).toBeDisabled(); + }); +}); diff --git a/packages/components/src/components/contract-card/contract-card-items/contract-card-body.tsx b/packages/components/src/components/contract-card/contract-card-items/contract-card-body.tsx index f9430a530f10..dad028c0ded2 100644 --- a/packages/components/src/components/contract-card/contract-card-items/contract-card-body.tsx +++ b/packages/components/src/components/contract-card/contract-card-items/contract-card-body.tsx @@ -23,7 +23,7 @@ export type TGeneralContractCardBodyProps = { contract_update: TContractInfo['contract_update']; connectWithContractUpdate?: (contract_update_form: React.ElementType) => React.ElementType; currency: string; - current_focus?: string; + current_focus?: string | null; error_message_alignment?: string; getCardLabels: TGetCardLables; getContractById: (contract_id?: number) => TContractStore; diff --git a/packages/components/src/components/contract-card/contract-card-items/contract-update-form.tsx b/packages/components/src/components/contract-card/contract-card-items/contract-update-form.tsx index c423695f5972..1e116c67e966 100644 --- a/packages/components/src/components/contract-card/contract-card-items/contract-update-form.tsx +++ b/packages/components/src/components/contract-card/contract-card-items/contract-update-form.tsx @@ -31,8 +31,7 @@ export type TContractUpdateFormProps = Pick< | 'status' > & { contract: TContractStore; - current_focus?: string; - error_message_alignment: string; + error_message_alignment?: string; getCardLabels: TGetCardLables; onMouseLeave: () => void; removeToast: (toast_id: string) => void; @@ -91,11 +90,11 @@ const ContractUpdateForm = (props: TContractUpdateFormProps) => { const isValid = (val?: number | null) => !(val === undefined || val === null); + const is_multiplier = isMultiplierContract(contract_info.contract_type || ''); const is_take_profit_valid = has_contract_update_take_profit ? +contract_update_take_profit > 0 - : isValid(stop_loss); + : isValid(is_multiplier ? stop_loss : take_profit); const is_stop_loss_valid = has_contract_update_stop_loss ? +contract_update_stop_loss > 0 : isValid(take_profit); - const is_multiplier = isMultiplierContract(contract_info.contract_type || ''); const is_valid_multiplier_contract_update = is_valid_to_cancel ? false : !!(is_take_profit_valid || is_stop_loss_valid); diff --git a/packages/components/src/components/input-wth-checkbox/input-with-checkbox.tsx b/packages/components/src/components/input-wth-checkbox/input-with-checkbox.tsx index 3464deacf2d2..a0ef89146120 100644 --- a/packages/components/src/components/input-wth-checkbox/input-with-checkbox.tsx +++ b/packages/components/src/components/input-wth-checkbox/input-with-checkbox.tsx @@ -15,7 +15,7 @@ type TInputWithCheckbox = { classNameInput?: string; classNamePrefix?: string; currency: string; - current_focus?: string; + current_focus?: string | null; defaultChecked: boolean; error_messages?: string[]; is_negative_disabled: boolean; diff --git a/packages/shared/src/utils/contract/contract.ts b/packages/shared/src/utils/contract/contract.ts index 0931087f4128..509c91ad2244 100644 --- a/packages/shared/src/utils/contract/contract.ts +++ b/packages/shared/src/utils/contract/contract.ts @@ -146,7 +146,7 @@ const createDigitInfo = (spot: string, spot_time: number) => { }; export const getLimitOrderAmount = (limit_order?: TLimitOrder) => { - if (!limit_order) return { stop_loss: 0, take_profit: 0 }; + if (!limit_order) return { stop_loss: null, take_profit: null }; const { stop_loss: { order_amount: stop_loss_order_amount } = {}, take_profit: { order_amount: take_profit_order_amount } = {}, From 20cbbca75a29cf8c94c476b63009fe130b41a1c1 Mon Sep 17 00:00:00 2001 From: kate-deriv <121025168+kate-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 07:36:48 +0300 Subject: [PATCH 05/41] Kate / OPT-329 / Accumulators: Sell button functionality (#9676) * feat: add sell button with functionality * feat: add disabling logic for trade params desktop * feat: add disabling for mobile trade params * feat: add initial styling to sell btn * refactor: add new tests cases * feat: add stake info on sell btn * fix: time gap berween sell btn and card, add style for bye btn * refactor: remove accum sell btn in a separate file * refactor: sell bnt and add text * refactor: change tooltips according to new design * feat: add tooltip for mobile widget * refactor: add tests * refactor: apply suggestions * chore: css chages of popover * refactor: apply suggestions * chore: remove persistent prop * chore: rename variable * fix: apply additional disabling logic * refactor: apply new disabled style * chore: replace color * fix: tests * fix: safari style * fix: update style for safari and ios * chore: rename class * chore: remove unnes check --- .../input-field/increment-buttons.tsx | 9 +- .../src/components/popover/popover.scss | 11 +++ packages/core/src/Stores/portfolio-store.js | 6 ++ packages/stores/src/mockStore.ts | 1 + packages/stores/types.ts | 1 + .../App/Components/Form/number-selector.jsx | 6 +- .../Components/Elements/purchase-button.tsx | 10 +-- .../Accumulator/__tests__/accumulator.spec.js | 14 ++++ .../accumulators-amount-mobile.spec.jsx | 50 +++++++++++ .../accumulators-info-display.spec.js | 13 +++ .../accumulators-sell-button.spec.tsx | 44 ++++++++++ .../TradeParams/Accumulator/accumulator.jsx | 12 ++- .../accumulators-amount-mobile.jsx | 3 +- .../Accumulator/accumulators-info-display.jsx | 15 ++-- .../Accumulator/accumulators-sell-button.tsx | 58 +++++++++++++ .../Multiplier/__tests__/widgets.spec.jsx | 67 +++++++++++++++ .../TradeParams/Multiplier/take-profit.jsx | 3 +- .../Form/TradeParams/Multiplier/widgets.jsx | 48 +++++++++-- .../Components/Form/TradeParams/amount.jsx | 4 + .../Modules/Trading/Containers/purchase.tsx | 83 +++++++++++++------ .../src/Stores/Modules/Trading/trade-store.js | 12 +++ .../_common/components/number-selector.scss | 6 +- .../_common/components/purchase-button.scss | 8 ++ .../src/sass/app/_common/mobile-widget.scss | 18 ++++ .../src/sass/app/modules/trading-mobile.scss | 3 + .../trader/src/sass/app/modules/trading.scss | 28 ++++++- 26 files changed, 477 insertions(+), 56 deletions(-) create mode 100644 packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-amount-mobile.spec.jsx create mode 100644 packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-sell-button.spec.tsx create mode 100644 packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-sell-button.tsx create mode 100644 packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/__tests__/widgets.spec.jsx diff --git a/packages/components/src/components/input-field/increment-buttons.tsx b/packages/components/src/components/input-field/increment-buttons.tsx index 1a2c244fb82c..c9388893c647 100644 --- a/packages/components/src/components/input-field/increment-buttons.tsx +++ b/packages/components/src/components/input-field/increment-buttons.tsx @@ -1,4 +1,5 @@ import React from 'react'; +import classNames from 'classnames'; import Button from '../button'; import Icon from '../icon'; import { TButtonType } from './input-field'; @@ -79,7 +80,9 @@ const IncrementButtons = ({
- {!is_turbos && !is_vanilla && ( + {!is_turbos && !is_vanilla && !is_accumulator && (
{ expect(screen.getByText('3%').getAttribute('class')).toContain('--selected'); expect(screen.getByText('1%').getAttribute('class')).not.toContain('--selected'); }); + + it('should not render the component if accumulator_range_list is empty', () => { + const new_mock_connect_props = { ...mock_connect_props }; + new_mock_connect_props.modules.trade = { accumulator_range_list: [], onChange: jest.fn(), growth_rate: 0.01 }; + render(, { + wrapper: ({ children }) => ( + {children} + ), + }); + + expect(screen.queryByText('Growth rate')).not.toBeInTheDocument(); + expect(screen.queryByText('1%')).not.toBeInTheDocument(); + expect(screen.queryByText('2%')).not.toBeInTheDocument(); + }); }); diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-amount-mobile.spec.jsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-amount-mobile.spec.jsx new file mode 100644 index 000000000000..264e8477511c --- /dev/null +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-amount-mobile.spec.jsx @@ -0,0 +1,50 @@ +import React from 'react'; +import { render, screen } from '@testing-library/react'; +import AccumulatorsAmountMobile from '../accumulators-amount-mobile'; +import { mockStore } from '@deriv/stores'; +import TraderProviders from '../../../../../../../trader-providers'; + +const default_mocked_props = { + is_nativepicker: false, +}; + +const default_mock_store = { + modules: { + trade: { + amount: 10, + currency: 'USD', + onChange: jest.fn(), + has_open_accu_contract: false, + }, + }, +}; + +jest.mock('@deriv/shared', () => ({ + ...jest.requireActual('@deriv/shared'), + isMobile: jest.fn(() => true), +})); + +describe('', () => { + const mockAccumulatorsAmountMobile = (mocked_store, mocked_props) => { + return ( + + + + ); + }; + it('should render child component', () => { + const mock_root_store = mockStore(default_mock_store); + render(mockAccumulatorsAmountMobile(mock_root_store, default_mocked_props)); + + expect(screen.getByText(/Stake/i)).toBeInTheDocument(); + }); + it('should render child component with inline prefix if is_single_currency is true', () => { + const new_mock_store = { ...default_mock_store }; + new_mock_store.client = { is_single_currency: true }; + const mock_root_store = mockStore(new_mock_store); + render(mockAccumulatorsAmountMobile(mock_root_store, default_mocked_props)); + + expect(screen.getByText(/Stake/i)).toBeInTheDocument(); + expect(screen.getByText(/USD/i)).toBeInTheDocument(); + }); +}); diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-info-display.spec.js b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-info-display.spec.js index cd3b55ca40d9..1a6aa7a35ccc 100644 --- a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-info-display.spec.js +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-info-display.spec.js @@ -27,4 +27,17 @@ describe('AccumulatorsInfoDisplay', () => { expect(screen.getByText(/max. ticks/i)).toBeInTheDocument(); expect(screen.getByText('250 ticks')).toBeInTheDocument(); }); + it('should render correct value Maximum payout and Maximum ticks if maximum_ticks === 1', () => { + const new_mock_connect_props = { ...mock_connect_props }; + new_mock_connect_props.modules.trade = { currency: 'USD', maximum_payout: 0, maximum_ticks: 1 }; + render(, { + wrapper: ({ children }) => ( + {children} + ), + }); + expect(screen.getByText(/max. payout/i)).toBeInTheDocument(); + expect(screen.getByText('0.00 USD')).toBeInTheDocument(); + expect(screen.getByText(/max. ticks/i)).toBeInTheDocument(); + expect(screen.getByText('1 tick')).toBeInTheDocument(); + }); }); diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-sell-button.spec.tsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-sell-button.spec.tsx new file mode 100644 index 000000000000..d50ebb2ba3b4 --- /dev/null +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/__tests__/accumulators-sell-button.spec.tsx @@ -0,0 +1,44 @@ +import React from 'react'; +import { render, screen } from '@testing-library/react'; +import AccumulatorsSellButton from '../accumulators-sell-button'; +import { mockStore } from '@deriv/stores'; +import { TCoreStores } from '@deriv/stores/types'; +import TraderProviders from '../../../../../../../trader-providers'; + +const mock_default_props: React.ComponentProps = { + is_disabled: false, + onClick: jest.fn(), + contract_info: { + is_valid_to_sell: 1, + status: 'open', + }, + current_stake: 10, + currency: 'USD', +}; + +describe('AccumulatorsSellButton', () => { + const mockAccumulatorsSellButton = (mocked_props: typeof mock_default_props) => { + return ( + + + + ); + }; + + it('should render component', () => { + render(mockAccumulatorsSellButton(mock_default_props)); + + expect(screen.getByRole('button')).toBeEnabled(); + expect(screen.getByText(/Sell/i)).toBeInTheDocument(); + expect(screen.getByText(/10.00/i)).toBeInTheDocument(); + expect(screen.getByText(/Note:/i)).toBeInTheDocument(); + }); + it('should render component with disabled button and without current stake', () => { + const new_mock_props = { ...mock_default_props, is_disabled: true, current_stake: null }; + render(mockAccumulatorsSellButton(new_mock_props)); + + expect(screen.getByRole('button')).toBeDisabled(); + expect(screen.getByText(/Sell/i)).toBeInTheDocument(); + expect(screen.queryByText(/10.00/i)).not.toBeInTheDocument(); + }); +}); diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulator.jsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulator.jsx index b802226fed17..fa2dc8d861bc 100644 --- a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulator.jsx +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulator.jsx @@ -8,8 +8,15 @@ import { observer } from '@deriv/stores'; import { useTraderStore } from 'Stores/useTraderStores'; const Accumulator = observer(() => { - const { accumulator_range_list, growth_rate, is_accumulator, onChange, tick_size_barrier, proposal_info } = - useTraderStore(); + const { + accumulator_range_list, + growth_rate, + is_accumulator, + onChange, + tick_size_barrier, + proposal_info, + has_open_accu_contract, + } = useTraderStore(); // splitting accumulator_range_list into rows containing 5 values each: const arr_arr_numbers = accumulator_range_list.reduce((acc, _el, index) => { @@ -41,6 +48,7 @@ const Accumulator = observer(() => { onChange={onChange} selected_number={growth_rate} should_show_in_percents + is_disabled={has_open_accu_contract} /> ); diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-amount-mobile.jsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-amount-mobile.jsx index 9d4242c8e5c1..74b3be43bd61 100644 --- a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-amount-mobile.jsx +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-amount-mobile.jsx @@ -12,7 +12,7 @@ const AccumulatorsAmountMobile = observer(({ is_nativepicker }) => { const { ui, client } = useStore(); const { current_focus, setCurrentFocus } = ui; const { is_single_currency } = client; - const { amount, currency, onChange } = useTraderStore(); + const { amount, currency, onChange, has_open_accu_contract } = useTraderStore(); return ( <> @@ -27,6 +27,7 @@ const AccumulatorsAmountMobile = observer(({ is_nativepicker }) => { id='dt_amount_input' inline_prefix={is_single_currency ? currency : null} is_autocomplete_disabled + is_disabled={has_open_accu_contract} is_float is_hj_whitelisted is_incrementable diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-info-display.jsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-info-display.jsx index b8a514f21595..03b4a15eaed6 100644 --- a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-info-display.jsx +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-info-display.jsx @@ -15,31 +15,34 @@ const AccumulatorsInfoDisplay = observer(() => { label: localize('Max. payout'), value: , tooltip_text: localize('Your contract will be automatically closed when your payout reaches this amount.'), + margin: 143, }, { label: localize('Max. ticks'), value: `${maximum_ticks || 0} ${maximum_ticks === 1 ? localize('tick') : localize('ticks')}`, tooltip_text: localize('Your contract will be automatically closed upon reaching this number of ticks.'), + margin: 175, }, ]; return (
- {content.map(({ label, value, tooltip_text }) => ( + {content.map(({ label, value, tooltip_text, margin }) => (
{label} - {value} + > + {value} +
))} diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-sell-button.tsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-sell-button.tsx new file mode 100644 index 000000000000..795a8491532b --- /dev/null +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Accumulator/accumulators-sell-button.tsx @@ -0,0 +1,58 @@ +import React from 'react'; +import { getCardLabels, isValidToSell } from '@deriv/shared'; +import { Button, Money, Text } from '@deriv/components'; +import { Localize } from '@deriv/translations'; +import Fieldset from 'App/Components/Form/fieldset.jsx'; +import { observer, useStore } from '@deriv/stores'; +import { TContractInfo } from '@deriv/shared/src/utils/contract/contract-types'; + +type TAccumSellButton = { + contract_info?: TContractInfo; + current_stake: number | null; + currency?: string; + is_disabled: boolean; + is_sell_requested?: boolean; + onClick: (e: React.MouseEvent) => void; +}; +const AccumulatorsSellButton = observer( + ({ contract_info, current_stake, currency, is_disabled, is_sell_requested, onClick }: TAccumSellButton) => { + const { ui } = useStore(); + const { is_dark_mode_on } = ui; + const is_valid_to_sell = contract_info && isValidToSell(contract_info); + return ( +
+ + + , + ]} + /> + +
+ ); + } +); + +export default AccumulatorsSellButton; diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/__tests__/widgets.spec.jsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/__tests__/widgets.spec.jsx new file mode 100644 index 000000000000..1b1b3a8bbc18 --- /dev/null +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/__tests__/widgets.spec.jsx @@ -0,0 +1,67 @@ +import React from 'react'; +import userEvent from '@testing-library/user-event'; +import { render, screen } from '@testing-library/react'; +import { mockStore } from '@deriv/stores'; +import TraderProviders from '../../../../../../../trader-providers'; +import { AccumulatorOptionsWidget } from '../widgets'; + +const default_mock_store = { + modules: { + trade: { + growth_rate: 0.01, + has_open_accu_contract: true, + tick_size_barrier: 0, + }, + }, +}; + +jest.mock('Modules/Trading/Containers/radio-group-options-modal.jsx', () => + jest.fn(prop => ( +
+ RadioGroupOptionsModal component +
+ )) +); + +describe('AccumulatorOptionsWidget', () => { + const mockAccumulatorOptionsWidget = mocked_store => { + return ( + + + + ); + }; + + it('should render component with extra tooltip', () => { + const mock_root_store = mockStore(default_mock_store); + render(mockAccumulatorOptionsWidget(mock_root_store)); + + expect(screen.getByText(/1%/i)).toBeInTheDocument(); + expect(screen.getByTestId(/dt_popover_wrapper/i)).toBeInTheDocument(); + }); + it('should render tooltip with text if user click on info icon, but should not open RadioGroupOptionsModal', () => { + const mock_root_store = mockStore(default_mock_store); + render(mockAccumulatorOptionsWidget(mock_root_store)); + + const info_icon = screen.getByTestId(/dt_popover_wrapper/i); + userEvent.click(info_icon); + + expect(screen.getByText(/Your stake will grow/i)).toBeInTheDocument(); + expect(screen.getByText(/RadioGroupOptionsModal/i)).toHaveAttribute('data-open', 'false'); + }); + it('if Accum contract is not open, user is able to open RadioGroupOptionsModal', () => { + const new_mock_store = { ...default_mock_store }; + new_mock_store.modules.trade = { + growth_rate: 0.01, + has_open_accu_contract: false, + tick_size_barrier: 0, + }; + const mock_root_store = mockStore(new_mock_store); + render(mockAccumulatorOptionsWidget(mock_root_store)); + + const toggle_button = screen.getByText(/RadioGroupOptionsModal/i); + userEvent.click(toggle_button); + + expect(screen.getByText(/RadioGroupOptionsModal/i)).toHaveAttribute('data-open', 'true'); + }); +}); diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/take-profit.jsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/take-profit.jsx index 5c826feba36d..2191d0da4e24 100644 --- a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/take-profit.jsx +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/take-profit.jsx @@ -13,7 +13,7 @@ const TakeProfit = observer(props => { const { addToast, removeToast, current_focus, setCurrentFocus } = ui; const { is_single_currency } = client; - const { is_accumulator, currency } = trade; + const { is_accumulator, currency, has_open_accu_contract } = trade; const validation_errors = props.validation_errors ?? trade.validation_errors; const take_profit = props.take_profit ?? trade.take_profit; @@ -47,6 +47,7 @@ const TakeProfit = observer(props => { current_focus={current_focus} defaultChecked={has_take_profit} error_messages={has_take_profit ? validation_errors.take_profit : undefined} + is_disabled={has_open_accu_contract} is_single_currency={is_single_currency} is_negative_disabled={true} is_input_hidden={!has_take_profit} diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/widgets.jsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/widgets.jsx index cfdd0305e532..b00d980223f8 100644 --- a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/widgets.jsx +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/Multiplier/widgets.jsx @@ -1,5 +1,6 @@ import React from 'react'; -import { Money, Text } from '@deriv/components'; +import classNames from 'classnames'; +import { Money, Text, Popover } from '@deriv/components'; import { useTraderStore } from 'Stores/useTraderStores'; import { observer } from '@deriv/stores'; import MultiplierAmountModal from 'Modules/Trading/Containers/Multiplier/multiplier-amount-modal.jsx'; @@ -7,8 +8,8 @@ import RadioGroupOptionsModal from 'Modules/Trading/Containers/radio-group-optio import MultipliersExpiration from 'Modules/Trading/Components/Form/TradeParams/Multiplier/expiration.jsx'; import MultipliersExpirationModal from 'Modules/Trading/Components/Form/TradeParams/Multiplier/expiration-modal.jsx'; import MultipliersInfo from 'Modules/Trading/Components/Form/TradeParams/Multiplier/info.jsx'; -import { localize } from '@deriv/translations'; -import { getGrowthRatePercentage } from '@deriv/shared'; +import { localize, Localize } from '@deriv/translations'; +import { getGrowthRatePercentage, getTickSizeBarrierPercentage } from '@deriv/shared'; const AmountWidget = ({ amount, currency, expiration, is_crypto_multiplier }) => { const [is_open, setIsOpen] = React.useState(false); @@ -67,10 +68,11 @@ export const MultiplierAmountWidget = observer(() => { return ; }); -const RadioGroupOptionsWidget = ({ displayed_trade_param, modal_title }) => { +const RadioGroupOptionsWidget = ({ displayed_trade_param, tooltip_message, is_disabled, modal_title }) => { const [is_open, setIsOpen] = React.useState(false); const toggleModal = () => { + if (is_disabled) return; setIsOpen(!is_open); }; @@ -78,9 +80,25 @@ const RadioGroupOptionsWidget = ({ displayed_trade_param, modal_title }) => {
-
+
{displayed_trade_param}
+ {!!tooltip_message && ( + e.stopPropagation()}> + + + )}
); @@ -94,8 +112,24 @@ export const MultiplierOptionsWidget = observer(() => { }); export const AccumulatorOptionsWidget = observer(() => { - const { growth_rate } = useTraderStore(); + const { growth_rate, has_open_accu_contract, tick_size_barrier } = useTraderStore(); const displayed_trade_param = `${getGrowthRatePercentage(growth_rate)}%`; const modal_title = localize('Growth rate'); - return ; + const tooltip_message = ( + + ); + return ( + + ); }); diff --git a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/amount.jsx b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/amount.jsx index 0e9ac8b72281..925defc720c2 100644 --- a/packages/trader/src/Modules/Trading/Components/Form/TradeParams/amount.jsx +++ b/packages/trader/src/Modules/Trading/Components/Form/TradeParams/amount.jsx @@ -20,6 +20,7 @@ export const Input = ({ error_messages, is_nativepicker, is_single_currency, + is_disabled, onChange, setCurrentFocus, }) => ( @@ -39,6 +40,7 @@ export const Input = ({ is_incrementable is_nativepicker={is_nativepicker} is_negative_disabled + is_disabled={is_disabled} max_length={AMOUNT_MAX_LENGTH} name='amount' onChange={onChange} @@ -69,6 +71,7 @@ const Amount = observer(({ is_minimized, is_nativepicker }) => { is_turbos, is_vanilla, has_equals_only, + has_open_accu_contract, onChange, validation_errors, } = useTraderStore(); @@ -159,6 +162,7 @@ const Amount = observer(({ is_minimized, is_nativepicker }) => { error_messages={error_messages} is_single_currency={is_single_currency} is_nativepicker={is_nativepicker} + is_disabled={has_open_accu_contract} onChange={onChange} setCurrentFocus={setCurrentFocus} /> diff --git a/packages/trader/src/Modules/Trading/Containers/purchase.tsx b/packages/trader/src/Modules/Trading/Containers/purchase.tsx index 91da6c5bed3a..bd8005f43760 100644 --- a/packages/trader/src/Modules/Trading/Containers/purchase.tsx +++ b/packages/trader/src/Modules/Trading/Containers/purchase.tsx @@ -1,7 +1,14 @@ import React from 'react'; -import { getContractTypePosition, getSupportedContracts, isAccumulatorContract, isEmptyObject } from '@deriv/shared'; -import { localize } from '@deriv/translations'; -import PurchaseButtonsOverlay from 'Modules/Trading/Components/Elements/purchase-buttons-overlay.jsx'; +import { + isAccumulatorContract, + isEmptyObject, + isOpen, + hasContractEntered, + getContractTypePosition, + getSupportedContracts, + getIndicativePrice, +} from '@deriv/shared'; +import AccumulatorsSellButton from '../Components/Form/TradeParams/Accumulator/accumulators-sell-button'; import PurchaseFieldset from 'Modules/Trading/Components/Elements/purchase-fieldset'; import { useTraderStore } from 'Stores/useTraderStores'; import { observer, useStore } from '@deriv/stores'; @@ -22,7 +29,7 @@ const getSortedIndex = (type: string, index: number) => { const Purchase = observer(({ is_market_closed }: { is_market_closed: boolean }) => { const { - portfolio: { active_positions }, + portfolio: { all_positions, onClickSell }, ui: { purchase_states: purchased_states_arr, is_mobile, setPurchaseState }, } = useStore(); const { @@ -45,6 +52,7 @@ const Purchase = observer(({ is_market_closed }: { is_market_closed: boolean }) vanilla_trade_type, trade_types, is_trade_enabled, + has_open_accu_contract, } = useTraderStore(); const is_high_low = /^high_low$/.test(contract_type.toLowerCase()); @@ -53,7 +61,26 @@ const Purchase = observer(({ is_market_closed }: { is_market_closed: boolean }) return !has_validation_error && !info?.has_error && !info.id; }; const is_proposal_empty = isEmptyObject(proposal_info); - const components = []; + const active_accu_contract = is_accumulator + ? all_positions.find( + ({ contract_info, type }) => + isAccumulatorContract(type) && contract_info.underlying === symbol && !contract_info.is_sold + ) + : undefined; + const is_valid_to_sell = active_accu_contract?.contract_info + ? hasContractEntered(active_accu_contract.contract_info) && isOpen(active_accu_contract.contract_info) + : false; + const indicative = + (is_valid_to_sell && active_accu_contract && getIndicativePrice(active_accu_contract.contract_info)) || null; + const onClickSellButton = (e: React.MouseEvent) => { + if (active_accu_contract && onClickSell) { + onClickSell(active_accu_contract.contract_info.contract_id); + e.stopPropagation(); + e.preventDefault(); + } + }; + + const components: JSX.Element[] = []; Object.keys(trade_types).forEach((type, index) => { const info = proposal_info?.[type] || {}; @@ -89,32 +116,34 @@ const Purchase = observer(({ is_market_closed }: { is_market_closed: boolean }) /> ); - if (!is_vanilla && getContractTypePosition(type as TGetSupportedContractsKey) === 'top') { - components.unshift(purchase_fieldset); - } else if ( - (!is_vanilla && getContractTypePosition(type as TGetSupportedContractsKey) !== 'top') || - vanilla_trade_type === type - ) { + if (!is_vanilla && (!is_accumulator || !has_open_accu_contract)) { + switch (getContractTypePosition(type as TGetSupportedContractsKey)) { + case 'top': + components.unshift(purchase_fieldset); + break; + case 'bottom': + components.push(purchase_fieldset); + break; + default: + components.push(purchase_fieldset); + break; + } + } else if (vanilla_trade_type === type) { components.push(purchase_fieldset); + } else if (is_accumulator && has_open_accu_contract) { + components.push( + + ); } }); - const should_disable_accu_purchase = - is_accumulator && - !!active_positions.find( - ({ contract_info, type }) => isAccumulatorContract(type) && contract_info.underlying === symbol - ); - - if (should_disable_accu_purchase) { - components.unshift( - - ); - } - return components as unknown as JSX.Element; }); diff --git a/packages/trader/src/Stores/Modules/Trading/trade-store.js b/packages/trader/src/Stores/Modules/Trading/trade-store.js index c5b45b9e05f9..b9b443338234 100644 --- a/packages/trader/src/Stores/Modules/Trading/trade-store.js +++ b/packages/trader/src/Stores/Modules/Trading/trade-store.js @@ -12,6 +12,7 @@ import { getPropertyValue, getContractSubtype, isBarrierSupported, + isAccumulatorContract, isCryptocurrency, isDesktop, isEmptyObject, @@ -243,6 +244,7 @@ export default class TradeStore extends BaseStore { growth_rate: observable, has_cancellation: observable, has_equals_only: observable, + has_open_accu_contract: computed, has_stop_loss: observable, has_take_profit: observable, hovered_barrier: observable, @@ -432,6 +434,16 @@ export default class TradeStore extends BaseStore { ); } + get has_open_accu_contract() { + return ( + this.is_accumulator && + !!this.root_store.portfolio.open_accu_contract && + !!this.root_store.portfolio.active_positions.find( + ({ contract_info, type }) => isAccumulatorContract(type) && contract_info.underlying === this.symbol + ) + ); + } + resetAccumulatorData() { if (!isEmptyObject(this.root_store.contract_trade.accumulator_barriers_data)) { this.root_store.contract_trade.clearAccumulatorBarriersData(); diff --git a/packages/trader/src/sass/app/_common/components/number-selector.scss b/packages/trader/src/sass/app/_common/components/number-selector.scss index 2c5acdf76a5e..3cee91808173 100644 --- a/packages/trader/src/sass/app/_common/components/number-selector.scss +++ b/packages/trader/src/sass/app/_common/components/number-selector.scss @@ -25,7 +25,11 @@ background-color: var(--state-active); color: var(--text-prominent); } - &:hover:not(&--selected) { + &--disabled { + color: var(--text-disabled); + cursor: not-allowed; + } + &:hover:not(&--disabled):not(&--selected) { cursor: pointer; background-color: var(--state-hover); } diff --git a/packages/trader/src/sass/app/_common/components/purchase-button.scss b/packages/trader/src/sass/app/_common/components/purchase-button.scss index 7c87e07510cd..38b0a6dffa18 100644 --- a/packages/trader/src/sass/app/_common/components/purchase-button.scss +++ b/packages/trader/src/sass/app/_common/components/purchase-button.scss @@ -384,6 +384,14 @@ } } @include mobile { + background: var(--purchase-section-1); + background: linear-gradient( + 0deg, + var(--purchase-section-1) 0%, + var(--purchase-section-1) 15%, + var(--purchase-main-1) 15%, + var(--purchase-main-1) 100% + ); .btn-purchase { &__bottom, &__top { diff --git a/packages/trader/src/sass/app/_common/mobile-widget.scss b/packages/trader/src/sass/app/_common/mobile-widget.scss index 51a8abb48a9c..eaacfdc482fb 100644 --- a/packages/trader/src/sass/app/_common/mobile-widget.scss +++ b/packages/trader/src/sass/app/_common/mobile-widget.scss @@ -9,6 +9,7 @@ align-items: center; margin: 0 0 0.8rem; flex: 1; + position: relative; &__amount { @include typeface(--paragraph-center-bold-black); @@ -26,10 +27,24 @@ color: var(--text-prominent); line-height: 1.4rem; + &-disabled { + color: var(--text-disabled); + } + &-value { font-weight: bold; font-size: 1.2rem; } + &-tooltip { + position: absolute; + top: 0; + right: 0; + height: 4rem; + width: 3rem; + display: flex; + justify-content: center; + align-items: center; + } } &__multiplier { display: flex; @@ -62,6 +77,9 @@ margin-left: 0.8rem; justify-content: center; min-width: 8.8rem; + &:has(.mobile-widget__item-tooltip) { + min-width: 9.9rem; + } .mobile-widget__item-label { color: var(--text-general); diff --git a/packages/trader/src/sass/app/modules/trading-mobile.scss b/packages/trader/src/sass/app/modules/trading-mobile.scss index acf3c0c67947..406fffe80911 100644 --- a/packages/trader/src/sass/app/modules/trading-mobile.scss +++ b/packages/trader/src/sass/app/modules/trading-mobile.scss @@ -107,6 +107,9 @@ transform: scale(1.4); stroke: var(--text-general); + &--disabled { + stroke: var(--text-disabled); + } &:hover, &:active { background: none; diff --git a/packages/trader/src/sass/app/modules/trading.scss b/packages/trader/src/sass/app/modules/trading.scss index b39a4a33958f..3038c9da32f3 100644 --- a/packages/trader/src/sass/app/modules/trading.scss +++ b/packages/trader/src/sass/app/modules/trading.scss @@ -140,7 +140,8 @@ align-items: center; gap: 0.8rem; .dc-popover__target { - height: 1.6rem; + height: 1.8rem; + border-bottom: 1px dotted var(--text-general); } } } @@ -548,6 +549,10 @@ } } &__amount { + .trade-container__input:disabled { + color: var(--text-general); + opacity: 0.5; + } &--multipliers { & .trade-container__input { left: 3.6rem; @@ -825,6 +830,27 @@ } } } + &__sell-button { + padding: 1.6rem 0.8rem; + &__stake { + padding-right: 0.5rem; + } + .dc-btn--sell { + margin-bottom: 0.5rem; + @include mobile { + margin-bottom: 1rem; + } + } + @include mobile { + padding: 0; + margin-bottom: 0; + } + } + &__notification { + @include mobile { + margin-bottom: 0.6rem; + } + } &__loading { background: rgba(255, 255, 255, 0.6); border-radius: $BORDER_RADIUS; From d42c79ad0c7b656619c5b2b07d8d2804a429064d Mon Sep 17 00:00:00 2001 From: Maryia <103177211+maryia-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 08:07:31 +0300 Subject: [PATCH 06/41] build: update deriv-charts version to 1.3.5 (#9928) --- package-lock.json | 14 +++++++------- packages/bot-web-ui/package.json | 2 +- packages/core/package.json | 2 +- packages/trader/package.json | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7fe304f31424..cef1435dc71a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@datadog/browser-rum": "^4.37.0", "@deriv/api-types": "^1.0.118", "@deriv/deriv-api": "^1.0.11", - "@deriv/deriv-charts": "1.3.2", + "@deriv/deriv-charts": "1.3.5", "@deriv/js-interpreter": "^3.0.0", "@deriv/ui": "^0.6.0", "@livechat/customer-sdk": "^2.0.4", @@ -2893,9 +2893,9 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@deriv/deriv-charts": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@deriv/deriv-charts/-/deriv-charts-1.3.2.tgz", - "integrity": "sha512-j1xgloqF9jVPiCsfQJGKduivU7r42vQCeT+URCKz82dltlJAw7dmfxY3GgQHjBobkG+SK7ANG/rBzK1vyZn7bA==", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@deriv/deriv-charts/-/deriv-charts-1.3.5.tgz", + "integrity": "sha512-qD4R/Lanf3xXBsOhTjubPcdXL6QMy7zR0O+Zq9KQiGx4lf3LES0FbQsLRlE2ebwAUK8hxD10jsUqTTS+zCpWBw==", "dependencies": { "@welldone-software/why-did-you-render": "^3.3.8", "classnames": "^2.3.1", @@ -51024,9 +51024,9 @@ } }, "@deriv/deriv-charts": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@deriv/deriv-charts/-/deriv-charts-1.3.2.tgz", - "integrity": "sha512-j1xgloqF9jVPiCsfQJGKduivU7r42vQCeT+URCKz82dltlJAw7dmfxY3GgQHjBobkG+SK7ANG/rBzK1vyZn7bA==", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@deriv/deriv-charts/-/deriv-charts-1.3.5.tgz", + "integrity": "sha512-qD4R/Lanf3xXBsOhTjubPcdXL6QMy7zR0O+Zq9KQiGx4lf3LES0FbQsLRlE2ebwAUK8hxD10jsUqTTS+zCpWBw==", "requires": { "@welldone-software/why-did-you-render": "^3.3.8", "classnames": "^2.3.1", diff --git a/packages/bot-web-ui/package.json b/packages/bot-web-ui/package.json index fd0956a77c8c..4fcbe2e52626 100644 --- a/packages/bot-web-ui/package.json +++ b/packages/bot-web-ui/package.json @@ -70,7 +70,7 @@ "@datadog/browser-logs": "^4.36.0", "@deriv/bot-skeleton": "^1.0.0", "@deriv/components": "^1.0.0", - "@deriv/deriv-charts": "1.3.2", + "@deriv/deriv-charts": "1.3.5", "@deriv/shared": "^1.0.0", "@deriv/stores": "^1.0.0", "@deriv/translations": "^1.0.0", diff --git a/packages/core/package.json b/packages/core/package.json index 057123ef90fa..6efd11c430ab 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -96,7 +96,7 @@ "@deriv/cfd": "^1.0.0", "@deriv/components": "^1.0.0", "@deriv/deriv-api": "^1.0.11", - "@deriv/deriv-charts": "1.3.2", + "@deriv/deriv-charts": "1.3.5", "@deriv/hooks": "^1.0.0", "@deriv/p2p": "^0.7.3", "@deriv/reports": "^1.0.0", diff --git a/packages/trader/package.json b/packages/trader/package.json index 32726a2bf57e..3dd67c666834 100644 --- a/packages/trader/package.json +++ b/packages/trader/package.json @@ -86,7 +86,7 @@ "dependencies": { "@deriv/components": "^1.0.0", "@deriv/deriv-api": "^1.0.11", - "@deriv/deriv-charts": "1.3.2", + "@deriv/deriv-charts": "1.3.5", "@deriv/reports": "^1.0.0", "@deriv/shared": "^1.0.0", "@deriv/stores": "^1.0.0", From 5e7e990dee1a5cd7f5506b75aa538b4f58d64009 Mon Sep 17 00:00:00 2001 From: Muhammad Hamza <120543468+hamza-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 13:23:39 +0800 Subject: [PATCH 07/41] chore: added ctrader coming soon banner for responsive + desktop (#10182) --- .../components/cfds-listing/cfds-listing.scss | 17 ++++++ .../cfd/src/Containers/mt5-trade-modal.tsx | 4 +- packages/cfd/src/Containers/trade-modal.tsx | 59 +++++++++++++------ 3 files changed, 62 insertions(+), 18 deletions(-) diff --git a/packages/appstore/src/components/cfds-listing/cfds-listing.scss b/packages/appstore/src/components/cfds-listing/cfds-listing.scss index e4f61d3270bf..f787c6a65185 100644 --- a/packages/appstore/src/components/cfds-listing/cfds-listing.scss +++ b/packages/appstore/src/components/cfds-listing/cfds-listing.scss @@ -558,6 +558,23 @@ } } } + &-ctrader { + &-container { + display: flex; + flex-direction: column; + margin-top: 4rem; + margin-bottom: 6rem; + @include mobile { + margin-top: 5rem; + margin-bottom: 0; + } + } + &__banner-text { + display: flex; + flex-direction: column; + } + } + &--windows { display: flex; gap: 1.6rem; diff --git a/packages/cfd/src/Containers/mt5-trade-modal.tsx b/packages/cfd/src/Containers/mt5-trade-modal.tsx index 57f112c0eb91..b8934502b8bc 100644 --- a/packages/cfd/src/Containers/mt5-trade-modal.tsx +++ b/packages/cfd/src/Containers/mt5-trade-modal.tsx @@ -23,10 +23,11 @@ type TMT5TradeModalProps = { const MT5TradeModal = observer( ({ is_eu_user, is_open, onPasswordManager, toggleModal, is_demo }: TMT5TradeModalProps) => { - const { traders_hub, common } = useStore(); + const { traders_hub, common, ui } = useStore(); const { show_eu_related_content } = traders_hub; const { platform } = common; + const { is_mobile } = ui; const { mt5_trade_account, dxtrade_tokens, derivez_tokens, ctrader_tokens } = useCfdStore(); @@ -52,6 +53,7 @@ const MT5TradeModal = observer( ctrader_tokens={ctrader_tokens} dxtrade_tokens={dxtrade_tokens} derivez_tokens={derivez_tokens} + is_mobile={is_mobile} /> ); }; diff --git a/packages/cfd/src/Containers/trade-modal.tsx b/packages/cfd/src/Containers/trade-modal.tsx index c15c5e65b269..16aca68d4150 100644 --- a/packages/cfd/src/Containers/trade-modal.tsx +++ b/packages/cfd/src/Containers/trade-modal.tsx @@ -26,6 +26,7 @@ type TTradeModalProps = { derivez_tokens: TCFDDashboardContainer['derivez_tokens']; is_demo: string; platform: TCFDsPlatformType; + is_mobile?: boolean; }; const PlatformIconsAndDescriptions = ( @@ -74,6 +75,7 @@ const TradeModal = ({ ctrader_tokens, is_demo, platform, + is_mobile, }: TTradeModalProps) => { const CTraderAndDerivEZDescription = () => { const platform_name = platform === 'derivez' ? 'Deriv EZ' : 'cTrader'; @@ -137,8 +139,10 @@ const TradeModal = ({ app_title = localize('Run Deriv X on your browser'); } else if (platform_type === 'derivez') { app_title = localize('Run Deriv EZ on your browser'); - } else if (platform_type === 'ctrader') { + } else if (platform_type === 'ctrader' && !is_mobile) { app_title = localize('Run cTrader on your browser'); + } else if (platform_type === 'ctrader' && is_mobile) { + return null; } else { return null; } @@ -242,23 +246,44 @@ const TradeModal = ({
{downloadCenterAppOption(platform)}
{platform === CFD_PLATFORMS.CTRADER && ( - +
)} {platform !== CFD_PLATFORMS.CTRADER && ( From a02c382a2a77b894b9aa061dff2d125eab7c4387 Mon Sep 17 00:00:00 2001 From: thisyahlen <104053934+thisyahlen-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 13:40:04 +0800 Subject: [PATCH 08/41] thisyahlen/feat: show mt5 accounts (#10173) * chore: show mt5 accounts v1 * chore: show proper accounts for added and non added mt5 accounts * chore: add loader and rename hook * chore: change key --- packages/api/src/hooks/index.ts | 3 +- .../api/src/hooks/useAvailableMT5Accounts.ts | 28 ++++++ .../api/src/hooks/useSortedMT5Accounts.ts | 73 +++++++++++++++ .../useTradingPlatformAvailableAccounts.ts | 38 -------- .../AddedMT5AccountsList.scss | 90 +++++++++++++++++++ .../AddedMT5AccountsList.tsx | 58 ++++++++++++ .../components/AddedMT5AccountsList/index.ts | 1 + .../AvailableMT5AccountsList.scss | 32 +++++++ .../AvailableMT5AccountsList.tsx | 58 ++++++++++++ .../AvailableMT5AccountsList/index.ts | 1 + .../src/components/MT5List/MT5List.scss | 20 +++++ .../src/components/MT5List/MT5List.tsx | 71 +++++---------- .../TradingAccountCard/TradingAccountCard.tsx | 4 +- packages/wallets/src/components/index.ts | 2 + 14 files changed, 389 insertions(+), 90 deletions(-) create mode 100644 packages/api/src/hooks/useAvailableMT5Accounts.ts create mode 100644 packages/api/src/hooks/useSortedMT5Accounts.ts delete mode 100644 packages/api/src/hooks/useTradingPlatformAvailableAccounts.ts create mode 100644 packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.scss create mode 100644 packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.tsx create mode 100644 packages/wallets/src/components/AddedMT5AccountsList/index.ts create mode 100644 packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.scss create mode 100644 packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx create mode 100644 packages/wallets/src/components/AvailableMT5AccountsList/index.ts diff --git a/packages/api/src/hooks/index.ts b/packages/api/src/hooks/index.ts index 9d5572d4ae3c..93fd6320b71d 100644 --- a/packages/api/src/hooks/index.ts +++ b/packages/api/src/hooks/index.ts @@ -5,6 +5,7 @@ export { default as useActiveTradingAccount } from './useActiveTradingAccount'; export { default as useActiveWalletAccount } from './useActiveWalletAccount'; export { default as useAllAvailableAccounts } from './useAllAvailableAccounts'; export { default as useAuthorize } from './useAuthorize'; +export { default as useAvailableMT5Accounts } from './useAvailableMT5Accounts'; export { default as useAvailableWallets } from './useAvailableWallets'; export { default as useBalance } from './useBalance'; export { default as useCFDAccountsList } from './useCFDAccountsList'; @@ -19,9 +20,9 @@ export { default as useGetAccountStatus } from './useGetAccountStatus'; export { default as useLandingCompany } from './useLandingCompany'; export { default as useMT5AccountsList } from './useMT5AccountsList'; export { default as useSettings } from './useSettings'; +export { default as useSortedMT5Accounts } from './useSortedMT5Accounts'; export { default as useTradingAccountsList } from './useTradingAccountsList'; export { default as useTradingPlatformAccounts } from './useTradingPlatformAccounts'; -export { default as useTradingPlatformAvailableAccounts } from './useTradingPlatformAvailableAccounts'; export { default as useTradingPlatformInvestorPasswordChange } from './useTradingPlatformInvestorPasswordChange'; export { default as useTradingPlatformInvestorPasswordReset } from './useTradingPlatformInvestorPasswordReset'; export { default as useTradingPlatformPasswordChange } from './useTradingPlatformPasswordChange'; diff --git a/packages/api/src/hooks/useAvailableMT5Accounts.ts b/packages/api/src/hooks/useAvailableMT5Accounts.ts new file mode 100644 index 000000000000..08a69b5283ba --- /dev/null +++ b/packages/api/src/hooks/useAvailableMT5Accounts.ts @@ -0,0 +1,28 @@ +import { useMemo } from 'react'; +import useFetch from '../useFetch'; + +/** @description This hook is used to get all the available MT5 accounts. */ +const useAvailableMT5Accounts = () => { + const { data: mt5_available_accounts, ...rest } = useFetch('trading_platform_available_accounts', { + payload: { platform: 'mt5' }, + }); + + const modified_mt5_available_accounts = useMemo( + () => + mt5_available_accounts?.trading_platform_available_accounts?.map(account => { + return { + ...account, + market_type: account.market_type === 'gaming' ? 'synthetic' : account.market_type, + } as const; + }), + [mt5_available_accounts?.trading_platform_available_accounts] + ); + + return { + /** The available MT5 accounts grouped by market type */ + data: modified_mt5_available_accounts, + ...rest, + }; +}; + +export default useAvailableMT5Accounts; diff --git a/packages/api/src/hooks/useSortedMT5Accounts.ts b/packages/api/src/hooks/useSortedMT5Accounts.ts new file mode 100644 index 000000000000..1a1507890abc --- /dev/null +++ b/packages/api/src/hooks/useSortedMT5Accounts.ts @@ -0,0 +1,73 @@ +import { useMemo } from 'react'; +import useMT5AccountsList from './useMT5AccountsList'; +import useAvailableMT5Accounts from './useAvailableMT5Accounts'; + +const useSortedMT5Accounts = () => { + const { data: all_available_mt5_accounts } = useAvailableMT5Accounts(); + const { data: mt5_accounts, ...rest } = useMT5AccountsList(); + + const modified_data = useMemo(() => { + if (!all_available_mt5_accounts || !mt5_accounts) return; + + return all_available_mt5_accounts?.map(available_account => { + const created_account = mt5_accounts?.find(account => { + return ( + available_account.market_type === account.market_type && + available_account.shortcode === account.landing_company_short + ); + }); + if (created_account) + return { + ...created_account, + /** Determine if the account is added or not */ + is_added: true, + } as const; + + return { + ...available_account, + /** Determine if the account is added or not */ + is_added: false, + } as const; + }); + }, [all_available_mt5_accounts, mt5_accounts]); + + // // Reduce out the added and non added accounts to make sure only one of each market_type is shown for not added + const filtered_data = useMemo(() => { + if (!modified_data) return; + + const added_accounts = modified_data.filter(account => account.is_added); + const non_added_accounts = modified_data.filter(account => !account.is_added); + + const filtered_non_added_accounts = non_added_accounts.reduce((acc, account) => { + const existing_account = acc.find(acc_account => acc_account.market_type === account.market_type); + const added_account = added_accounts.find(acc_account => acc_account.market_type === account.market_type); + if (existing_account || added_account) return acc; + + return [...acc, account]; + }, [] as typeof non_added_accounts); + + return [...added_accounts, ...filtered_non_added_accounts]; + }, [modified_data]); + + // Sort the data by market_type to make sure the order is 'synthetic', 'financial', 'all' + const sorted_data = useMemo(() => { + const market_type_order = ['synthetic', 'financial', 'all']; + + if (!filtered_data) return; + + const sorted_data = market_type_order.reduce((acc, market_type) => { + const accounts = filtered_data.filter(account => account.market_type === market_type); + if (!accounts.length) return acc; + return [...acc, ...accounts]; + }, [] as typeof filtered_data); + + return sorted_data; + }, [filtered_data]); + + return { + data: sorted_data, + ...rest, + }; +}; + +export default useSortedMT5Accounts; diff --git a/packages/api/src/hooks/useTradingPlatformAvailableAccounts.ts b/packages/api/src/hooks/useTradingPlatformAvailableAccounts.ts deleted file mode 100644 index d69d4a75a722..000000000000 --- a/packages/api/src/hooks/useTradingPlatformAvailableAccounts.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { useMemo } from 'react'; -import useFetch from '../useFetch'; - -/** @description This hook is used to get all the available MT5 accounts. */ -const useTradingPlatformAvailableAccounts = () => { - const { data: mt5_available_accounts, ...rest } = useFetch('trading_platform_available_accounts', { - payload: { platform: 'mt5' }, - }); - - const modified_mt5_available_accounts = useMemo( - () => - mt5_available_accounts?.trading_platform_available_accounts?.map(account => { - return { - ...account, - }; - }), - [mt5_available_accounts?.trading_platform_available_accounts] - ); - - /** This function is used to group the available MT5 accounts by market type. */ - const grouped_mt5_available_accounts = useMemo(() => { - return modified_mt5_available_accounts?.reduce((acc, account) => { - const { market_type } = account; - const marketType = market_type as keyof typeof acc; - const marketTypeArray = acc[marketType] || (acc[marketType] = []); - marketTypeArray.push(account); - return acc; - }, {} as Record); - }, [modified_mt5_available_accounts]); - - return { - /** The available MT5 accounts grouped by market type */ - data: grouped_mt5_available_accounts, - ...rest, - }; -}; - -export default useTradingPlatformAvailableAccounts; diff --git a/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.scss b/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.scss new file mode 100644 index 000000000000..478c7b3de2d0 --- /dev/null +++ b/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.scss @@ -0,0 +1,90 @@ +.wallets-added-mt5 { + &__transfer_button { + display: flex; + height: 32px; + padding: 6px 16px; + justify-content: center; + align-items: center; + border-radius: 4px; + border: 1px solid var(--system-light-3-less-prominent-text, #999); + cursor: pointer; + background: #fff; + } + + &__transfer_text { + color: var(--system-light-1-prominent-text, #333); + text-align: center; + + /* desktop/paragraph/P2 - bold */ + font-family: 'IBM Plex Sans'; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: 20px; /* 142.857% */ + } + + &__open_text { + color: var(--system-dark-1-prominent-text, #fff); + text-align: center; + + /* desktop/paragraph/P2 - bold */ + font-family: 'IBM Plex Sans'; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: 20px; /* 142.857% */ + } + + &__actions { + display: flex; + flex-direction: column; + gap: 4px; + } + + &__details { + flex-grow: 1; + + &-loginid { + color: var(--system-light-3-less-prominent-text, #999); + + /* desktop/small/S - bold */ + font-family: 'IBM Plex Sans'; + font-size: 12px; + font-style: normal; + font-weight: 700; + line-height: 18px; /* 150% */ + } + + &-title { + color: var(--system-light-2-general-text, #333); + + /* desktop/paragraph/P2 - bold */ + font-family: 'IBM Plex Sans'; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: 20px; /* 142.857% */ + } + + &-balance { + color: var(--system-light-1-prominent-text, #333); + + /* desktop/paragraph/P2 - bold */ + font-family: 'IBM Plex Sans'; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: 20px; /* 142.857% */ + } + + &-description { + font-size: 1.2rem; + line-height: 14px; + + @include mobile { + font-size: 1.4rem; + line-height: 20px; + } + } + } +} diff --git a/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.tsx b/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.tsx new file mode 100644 index 000000000000..1edc356e43c1 --- /dev/null +++ b/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.tsx @@ -0,0 +1,58 @@ +import React from 'react'; +import { useMT5AccountsList } from '@deriv/api'; +import DerivedMT5 from '../../public/images/mt5-derived.svg'; +import FinancialMT5 from '../../public/images/mt5-financial.svg'; +import SwapFreeMT5 from '../../public/images/mt5-swap-free.svg'; +import { PrimaryActionButton } from '../PrimaryActionButton'; +import { TradingAccountCard } from '../TradingAccountCard'; +import './AddedMT5AccountsList.scss'; + +const market_type_to_name_mapper = { + all: 'Swap-Free', + financial: 'Financial', + synthetic: 'Derived', +}; + +const market_type_to_icon_mapper = { + all: , + financial: , + synthetic: , +}; + +type TProps = { + account: NonNullable['data']>[number]; +}; + +const AddedMT5AccountsList: React.FC = ({ account }) => { + return ( + ( +
+ {market_type_to_icon_mapper[account.market_type || 'all']} +
+ )} + trailing={() => ( +
+ +

Transfer

+
+ +

Open

+
+
+ )} + > +
+

+ {market_type_to_name_mapper[account.market_type || 'all']} +

+

+ {account.display_balance} {account.currency} +

+

{account.display_login}

+
+
+ ); +}; + +export default AddedMT5AccountsList; diff --git a/packages/wallets/src/components/AddedMT5AccountsList/index.ts b/packages/wallets/src/components/AddedMT5AccountsList/index.ts new file mode 100644 index 000000000000..43e1b757622e --- /dev/null +++ b/packages/wallets/src/components/AddedMT5AccountsList/index.ts @@ -0,0 +1 @@ +export { default as AddedMT5AccountsList } from './AddedMT5AccountsList'; diff --git a/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.scss b/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.scss new file mode 100644 index 000000000000..250d4501fbd0 --- /dev/null +++ b/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.scss @@ -0,0 +1,32 @@ +.wallets-available-mt5 { + &__text { + color: var(--brand-coral, #ff444f); + text-align: center; + + /* desktop/paragraph/P2 - bold */ + font-family: 'IBM Plex Sans'; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: 20px; /* 142.857% */ + } + + &__details { + flex-grow: 1; + &-title { + font-weight: bold; + font-size: 1.4rem; + line-height: 20px; + } + + &-description { + font-size: 1.2rem; + line-height: 14px; + + @include mobile { + font-size: 1.4rem; + line-height: 20px; + } + } + } +} diff --git a/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx b/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx new file mode 100644 index 000000000000..a12e120f4b8b --- /dev/null +++ b/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx @@ -0,0 +1,58 @@ +import React from 'react'; +import { useSortedMT5Accounts } from '@deriv/api'; +import DerivedMT5 from '../../public/images/mt5-derived.svg'; +import FinancialMT5 from '../../public/images/mt5-financial.svg'; +import SwapFreeMT5 from '../../public/images/mt5-swap-free.svg'; +import { SecondaryActionButton } from '../SecondaryActionButton'; +import { TradingAccountCard } from '../TradingAccountCard'; +import './AvailableMT5AccountsList.scss'; + +const market_type_to_description_mapper = { + all: 'Trade swap-free CFDs on MT5 with synthetics, forex, stocks, stock indices, cryptocurrencies and ETFs', + financial: 'This account offers CFDs on financial instruments.', + synthetic: 'This account offers CFDs on derived instruments.', +}; + +const market_type_to_name_mapper = { + all: 'Swap-Free', + financial: 'Financial', + synthetic: 'Derived', +}; + +const market_type_to_icon_mapper = { + all: , + financial: , + synthetic: , +}; + +type TProps = { + account: NonNullable['data']>[number]; +}; + +const AvailableMT5AccountsList: React.FC = ({ account }) => { + return ( + ( +
+ {market_type_to_icon_mapper[account.market_type || 'all']} +
+ )} + trailing={() => ( + +

Get

+
+ )} + > +
+

+ {market_type_to_name_mapper[account.market_type || 'all']} +

+

+ {market_type_to_description_mapper[account.market_type || 'all']} +

+
+
+ ); +}; + +export default AvailableMT5AccountsList; diff --git a/packages/wallets/src/components/AvailableMT5AccountsList/index.ts b/packages/wallets/src/components/AvailableMT5AccountsList/index.ts new file mode 100644 index 000000000000..9cadcb2ce057 --- /dev/null +++ b/packages/wallets/src/components/AvailableMT5AccountsList/index.ts @@ -0,0 +1 @@ +export { default as AvailableMT5AccountsList } from './AvailableMT5AccountsList'; diff --git a/packages/wallets/src/components/MT5List/MT5List.scss b/packages/wallets/src/components/MT5List/MT5List.scss index 1383d137cd58..8fd78b1c2a3b 100644 --- a/packages/wallets/src/components/MT5List/MT5List.scss +++ b/packages/wallets/src/components/MT5List/MT5List.scss @@ -33,3 +33,23 @@ } } } + +.wallets-mt5-loader { + width: 48px; + height: 48px; + border: 5px solid #fff; + border-bottom-color: #ff3d00; + border-radius: 50%; + display: inline-block; + box-sizing: border-box; + animation: rotation 1s linear infinite; +} + +@keyframes rotation { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} diff --git a/packages/wallets/src/components/MT5List/MT5List.tsx b/packages/wallets/src/components/MT5List/MT5List.tsx index 648868d7b29c..a1c176033dbc 100644 --- a/packages/wallets/src/components/MT5List/MT5List.tsx +++ b/packages/wallets/src/components/MT5List/MT5List.tsx @@ -1,64 +1,37 @@ import React from 'react'; -import DerivedMT5 from '../../public/images/mt5-derived.svg'; -import FinancialMT5 from '../../public/images/mt5-financial.svg'; -import SwapFreeMT5 from '../../public/images/mt5-swap-free.svg'; -import { SecondaryActionButton } from '../SecondaryActionButton'; -import { TradingAccountCard } from '../TradingAccountCard'; +import { useSortedMT5Accounts } from '@deriv/api'; +import { AddedMT5AccountsList } from '../AddedMT5AccountsList'; +import { AvailableMT5AccountsList } from '../AvailableMT5AccountsList'; import './MT5List.scss'; -const mt5_mapper = [ - { - title: 'Derived', - description: 'This account offers CFDs on derived instruments.', - icon: , - }, - { - title: 'Financial', - description: 'This account offers CFDs on financial instruments.', - icon: , - }, - { - title: 'Swap-Free', - description: - 'Trade swap-free CFDs on MT5 with synthetics, forex, stocks, stock indices, cryptocurrencies and ETFs', - icon: , - }, -]; - const MT5List: React.FC = () => { + const { data } = useSortedMT5Accounts(); + + if (!data) return ; + return ( - <> +

Deriv MT5

- {mt5_mapper.map(account => ( - ( -
{account.icon}
- )} - trailing={() => ( - -

Get

-
- )} - > -
-

- {account.title} -

-

- {account.description} -

-
-
- ))} + {data?.map((account, index) => { + if (account.is_added) + return ( + + ); + + return ( + + ); + })}
- +
); }; diff --git a/packages/wallets/src/components/TradingAccountCard/TradingAccountCard.tsx b/packages/wallets/src/components/TradingAccountCard/TradingAccountCard.tsx index c1ffe625917c..8d8269f91f7d 100644 --- a/packages/wallets/src/components/TradingAccountCard/TradingAccountCard.tsx +++ b/packages/wallets/src/components/TradingAccountCard/TradingAccountCard.tsx @@ -2,8 +2,8 @@ import React from 'react'; import './TradingAccountCard.scss'; type TProps = { - leading: () => React.ReactNode; - trailing: () => React.ReactNode; + leading?: () => React.ReactNode; + trailing?: () => React.ReactNode; }; const TradingAccountCard: React.FC> = ({ children, leading, trailing }) => { diff --git a/packages/wallets/src/components/index.ts b/packages/wallets/src/components/index.ts index 33f2361e7770..38ca43104406 100644 --- a/packages/wallets/src/components/index.ts +++ b/packages/wallets/src/components/index.ts @@ -1,7 +1,9 @@ export * from './AccountsList'; export * from './AddedDxtradeAccountsList'; +export * from './AddedMT5AccountsList'; export * from './AvailableDerivezAccountsList'; export * from './AvailableDxtradeAccountsList'; +export * from './AvailableMT5AccountsList'; export * from './CFDList'; export * from './CTraderList'; export * from './DesktopWalletsList'; From eef34c67d993ce56c1b34eb88e60f3d53746e8c2 Mon Sep 17 00:00:00 2001 From: thisyahlen <104053934+thisyahlen-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 15:30:58 +0800 Subject: [PATCH 09/41] thisyahlen/refactor: move cfd components to its own folder(wallets package) (#10187) * refactor: move cfd components to its own folder * chore: rename some cfd file name --- .../src/components/AccountsList/AccountsList.tsx | 4 ++-- packages/wallets/src/components/CFDList/index.ts | 1 - .../AddedDxtradeAccountsList.scss | 0 .../AddedDxtradeAccountsList.tsx | 6 +++--- .../AddedDxtradeAccountsList/index.ts | 0 .../AddedMT5AccountsList/AddedMT5AccountsList.scss | 0 .../AddedMT5AccountsList/AddedMT5AccountsList.tsx | 10 +++++----- .../AddedMT5AccountsList/index.ts | 0 .../AvailableDerivezAccountsList.scss | 0 .../AvailableDerivezAccountsList.tsx | 6 +++--- .../AvailableDerivezAccountsList/index.ts | 0 .../AvailableDxtradeAccountsList.scss | 0 .../AvailableDxtradeAccountsList.tsx | 6 +++--- .../AvailableDxtradeAccountsList/index.ts | 0 .../AvailableMT5AccountsList.scss | 0 .../AvailableMT5AccountsList.tsx | 10 +++++----- .../AvailableMT5AccountsList/index.ts | 0 .../CFDPlatformsList/CFDPlatformsList.scss} | 0 .../CFDPlatformsList/CFDPlatformsList.tsx} | 10 +++++----- .../ExternalTradingPlatforms/CFDPlatformsList/index.ts | 1 + .../CTraderList/CTraderList.scss | 0 .../CTraderList/CTraderList.tsx | 6 +++--- .../CTraderList/index.ts | 0 .../MT5PlatformsList/MT5PlatformsList.scss} | 0 .../MT5PlatformsList/MT5PlatformsList.tsx} | 6 +++--- .../ExternalTradingPlatforms/MT5PlatformsList/index.ts | 1 + .../OtherCFDPlatformsList/OtherCFDPlatformsList.scss | 0 .../OtherCFDPlatformsList/OtherCFDPlatformsList.tsx | 0 .../OtherCFDPlatformsList/index.ts | 0 .../src/components/ExternalTradingPlatforms/index.ts | 9 +++++++++ packages/wallets/src/components/MT5List/index.ts | 1 - packages/wallets/src/components/index.ts | 10 +--------- 32 files changed, 44 insertions(+), 43 deletions(-) delete mode 100644 packages/wallets/src/components/CFDList/index.ts rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AddedDxtradeAccountsList/AddedDxtradeAccountsList.scss (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx (89%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AddedDxtradeAccountsList/index.ts (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AddedMT5AccountsList/AddedMT5AccountsList.scss (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AddedMT5AccountsList/AddedMT5AccountsList.tsx (84%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AddedMT5AccountsList/index.ts (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableDerivezAccountsList/AvailableDerivezAccountsList.scss (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableDerivezAccountsList/AvailableDerivezAccountsList.tsx (83%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableDerivezAccountsList/index.ts (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.scss (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.tsx (84%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableDxtradeAccountsList/index.ts (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableMT5AccountsList/AvailableMT5AccountsList.scss (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx (84%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/AvailableMT5AccountsList/index.ts (100%) rename packages/wallets/src/components/{CFDList/CFDList.scss => ExternalTradingPlatforms/CFDPlatformsList/CFDPlatformsList.scss} (100%) rename packages/wallets/src/components/{CFDList/CFDList.tsx => ExternalTradingPlatforms/CFDPlatformsList/CFDPlatformsList.tsx} (84%) create mode 100644 packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/index.ts rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/CTraderList/CTraderList.scss (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/CTraderList/CTraderList.tsx (88%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/CTraderList/index.ts (100%) rename packages/wallets/src/components/{MT5List/MT5List.scss => ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.scss} (100%) rename packages/wallets/src/components/{MT5List/MT5List.tsx => ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.tsx} (91%) create mode 100644 packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/index.ts rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/OtherCFDPlatformsList/OtherCFDPlatformsList.scss (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/OtherCFDPlatformsList/OtherCFDPlatformsList.tsx (100%) rename packages/wallets/src/components/{ => ExternalTradingPlatforms}/OtherCFDPlatformsList/index.ts (100%) create mode 100644 packages/wallets/src/components/ExternalTradingPlatforms/index.ts delete mode 100644 packages/wallets/src/components/MT5List/index.ts diff --git a/packages/wallets/src/components/AccountsList/AccountsList.tsx b/packages/wallets/src/components/AccountsList/AccountsList.tsx index c79d5e2b4ee8..10c1afa74c95 100644 --- a/packages/wallets/src/components/AccountsList/AccountsList.tsx +++ b/packages/wallets/src/components/AccountsList/AccountsList.tsx @@ -1,6 +1,6 @@ import React from 'react'; import useDevice from '../../hooks/useDevice'; -import { CFDList } from '../CFDList'; +import { CFDPlatformsList } from '../ExternalTradingPlatforms'; import { OptionsAndMultipliersListing } from '../OptionsAndMultipliersListing'; import { TabList, TabPanel, TabPanels, Tabs } from '../Tabs'; import './AccountsList.scss'; @@ -28,7 +28,7 @@ const AccountsList = () => { return (
- +
diff --git a/packages/wallets/src/components/CFDList/index.ts b/packages/wallets/src/components/CFDList/index.ts deleted file mode 100644 index 5f685688ecdd..000000000000 --- a/packages/wallets/src/components/CFDList/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { default as CFDList } from './CFDList'; diff --git a/packages/wallets/src/components/AddedDxtradeAccountsList/AddedDxtradeAccountsList.scss b/packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.scss similarity index 100% rename from packages/wallets/src/components/AddedDxtradeAccountsList/AddedDxtradeAccountsList.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.scss diff --git a/packages/wallets/src/components/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx similarity index 89% rename from packages/wallets/src/components/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx index 3d3419be894b..02b08f5d427e 100644 --- a/packages/wallets/src/components/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx +++ b/packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx @@ -1,8 +1,8 @@ import React from 'react'; import { useDxtradeAccountsList } from '@deriv/api'; -import DerivX from '../../public/images/derivx.svg'; -import { PrimaryActionButton } from '../PrimaryActionButton'; -import { TradingAccountCard } from '../TradingAccountCard'; +import DerivX from '../../../public/images/derivx.svg'; +import { PrimaryActionButton } from '../../PrimaryActionButton'; +import { TradingAccountCard } from '../../TradingAccountCard'; import './AddedDxtradeAccountsList.scss'; const AddedDxtradeAccountsList: React.FC = () => { diff --git a/packages/wallets/src/components/AddedDxtradeAccountsList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/index.ts similarity index 100% rename from packages/wallets/src/components/AddedDxtradeAccountsList/index.ts rename to packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/index.ts diff --git a/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.scss b/packages/wallets/src/components/ExternalTradingPlatforms/AddedMT5AccountsList/AddedMT5AccountsList.scss similarity index 100% rename from packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/AddedMT5AccountsList/AddedMT5AccountsList.scss diff --git a/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/AddedMT5AccountsList/AddedMT5AccountsList.tsx similarity index 84% rename from packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/AddedMT5AccountsList/AddedMT5AccountsList.tsx index 1edc356e43c1..d938db9e3d58 100644 --- a/packages/wallets/src/components/AddedMT5AccountsList/AddedMT5AccountsList.tsx +++ b/packages/wallets/src/components/ExternalTradingPlatforms/AddedMT5AccountsList/AddedMT5AccountsList.tsx @@ -1,10 +1,10 @@ import React from 'react'; import { useMT5AccountsList } from '@deriv/api'; -import DerivedMT5 from '../../public/images/mt5-derived.svg'; -import FinancialMT5 from '../../public/images/mt5-financial.svg'; -import SwapFreeMT5 from '../../public/images/mt5-swap-free.svg'; -import { PrimaryActionButton } from '../PrimaryActionButton'; -import { TradingAccountCard } from '../TradingAccountCard'; +import DerivedMT5 from '../../../public/images/mt5-derived.svg'; +import FinancialMT5 from '../../../public/images/mt5-financial.svg'; +import SwapFreeMT5 from '../../../public/images/mt5-swap-free.svg'; +import { PrimaryActionButton } from '../../PrimaryActionButton'; +import { TradingAccountCard } from '../../TradingAccountCard'; import './AddedMT5AccountsList.scss'; const market_type_to_name_mapper = { diff --git a/packages/wallets/src/components/AddedMT5AccountsList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/AddedMT5AccountsList/index.ts similarity index 100% rename from packages/wallets/src/components/AddedMT5AccountsList/index.ts rename to packages/wallets/src/components/ExternalTradingPlatforms/AddedMT5AccountsList/index.ts diff --git a/packages/wallets/src/components/AvailableDerivezAccountsList/AvailableDerivezAccountsList.scss b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableDerivezAccountsList/AvailableDerivezAccountsList.scss similarity index 100% rename from packages/wallets/src/components/AvailableDerivezAccountsList/AvailableDerivezAccountsList.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableDerivezAccountsList/AvailableDerivezAccountsList.scss diff --git a/packages/wallets/src/components/AvailableDerivezAccountsList/AvailableDerivezAccountsList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableDerivezAccountsList/AvailableDerivezAccountsList.tsx similarity index 83% rename from packages/wallets/src/components/AvailableDerivezAccountsList/AvailableDerivezAccountsList.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableDerivezAccountsList/AvailableDerivezAccountsList.tsx index bc0b935dd5e9..951e9a6a084d 100644 --- a/packages/wallets/src/components/AvailableDerivezAccountsList/AvailableDerivezAccountsList.tsx +++ b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableDerivezAccountsList/AvailableDerivezAccountsList.tsx @@ -1,7 +1,7 @@ import React from 'react'; -import DerivEZ from '../../public/images/derivez.svg'; -import { SecondaryActionButton } from '../SecondaryActionButton'; -import { TradingAccountCard } from '../TradingAccountCard'; +import DerivEZ from '../../../public/images/derivez.svg'; +import { SecondaryActionButton } from '../../SecondaryActionButton'; +import { TradingAccountCard } from '../../TradingAccountCard'; import './AvailableDerivezAccountsList.scss'; const AvailableDerivezAccountsList: React.FC = () => { diff --git a/packages/wallets/src/components/AvailableDerivezAccountsList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableDerivezAccountsList/index.ts similarity index 100% rename from packages/wallets/src/components/AvailableDerivezAccountsList/index.ts rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableDerivezAccountsList/index.ts diff --git a/packages/wallets/src/components/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.scss b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.scss similarity index 100% rename from packages/wallets/src/components/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.scss diff --git a/packages/wallets/src/components/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.tsx similarity index 84% rename from packages/wallets/src/components/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.tsx index dfb7fadb55ae..4862073f930f 100644 --- a/packages/wallets/src/components/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.tsx +++ b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableDxtradeAccountsList/AvailableDxtradeAccountsList.tsx @@ -1,7 +1,7 @@ import React from 'react'; -import DerivX from '../../public/images/derivx.svg'; -import { SecondaryActionButton } from '../SecondaryActionButton'; -import { TradingAccountCard } from '../TradingAccountCard'; +import DerivX from '../../../public/images/derivx.svg'; +import { SecondaryActionButton } from '../../SecondaryActionButton'; +import { TradingAccountCard } from '../../TradingAccountCard'; import './AvailableDxtradeAccountsList.scss'; const AvailableDxtradeAccountsList: React.FC = () => { diff --git a/packages/wallets/src/components/AvailableDxtradeAccountsList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableDxtradeAccountsList/index.ts similarity index 100% rename from packages/wallets/src/components/AvailableDxtradeAccountsList/index.ts rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableDxtradeAccountsList/index.ts diff --git a/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.scss b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableMT5AccountsList/AvailableMT5AccountsList.scss similarity index 100% rename from packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableMT5AccountsList/AvailableMT5AccountsList.scss diff --git a/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx similarity index 84% rename from packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx index a12e120f4b8b..b950487c0cfe 100644 --- a/packages/wallets/src/components/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx +++ b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableMT5AccountsList/AvailableMT5AccountsList.tsx @@ -1,10 +1,10 @@ import React from 'react'; import { useSortedMT5Accounts } from '@deriv/api'; -import DerivedMT5 from '../../public/images/mt5-derived.svg'; -import FinancialMT5 from '../../public/images/mt5-financial.svg'; -import SwapFreeMT5 from '../../public/images/mt5-swap-free.svg'; -import { SecondaryActionButton } from '../SecondaryActionButton'; -import { TradingAccountCard } from '../TradingAccountCard'; +import DerivedMT5 from '../../../public/images/mt5-derived.svg'; +import FinancialMT5 from '../../../public/images/mt5-financial.svg'; +import SwapFreeMT5 from '../../../public/images/mt5-swap-free.svg'; +import { SecondaryActionButton } from '../../SecondaryActionButton'; +import { TradingAccountCard } from '../../TradingAccountCard'; import './AvailableMT5AccountsList.scss'; const market_type_to_description_mapper = { diff --git a/packages/wallets/src/components/AvailableMT5AccountsList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/AvailableMT5AccountsList/index.ts similarity index 100% rename from packages/wallets/src/components/AvailableMT5AccountsList/index.ts rename to packages/wallets/src/components/ExternalTradingPlatforms/AvailableMT5AccountsList/index.ts diff --git a/packages/wallets/src/components/CFDList/CFDList.scss b/packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/CFDPlatformsList.scss similarity index 100% rename from packages/wallets/src/components/CFDList/CFDList.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/CFDPlatformsList.scss diff --git a/packages/wallets/src/components/CFDList/CFDList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/CFDPlatformsList.tsx similarity index 84% rename from packages/wallets/src/components/CFDList/CFDList.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/CFDPlatformsList.tsx index 18986b870477..5f2647efc9dd 100644 --- a/packages/wallets/src/components/CFDList/CFDList.tsx +++ b/packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/CFDPlatformsList.tsx @@ -1,11 +1,11 @@ import React from 'react'; import { useActiveWalletAccount } from '@deriv/api'; import { CTraderList } from '../CTraderList'; -import { MT5List } from '../MT5List'; +import { MT5PlatformsList } from '../MT5PlatformsList'; import { OtherCFDPlatformsList } from '../OtherCFDPlatformsList'; -import './CFDList.scss'; +import './CFDPlatformsList.scss'; -const CFDList = () => { +const CFDPlatformsList = () => { const { data: active_wallet } = useActiveWalletAccount(); return (
@@ -22,11 +22,11 @@ const CFDList = () => {
- + {active_wallet?.is_virtual && }
); }; -export default CFDList; +export default CFDPlatformsList; diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/index.ts new file mode 100644 index 000000000000..f9bb9b4f0baa --- /dev/null +++ b/packages/wallets/src/components/ExternalTradingPlatforms/CFDPlatformsList/index.ts @@ -0,0 +1 @@ +export { default as CFDPlatformsList } from './CFDPlatformsList'; diff --git a/packages/wallets/src/components/CTraderList/CTraderList.scss b/packages/wallets/src/components/ExternalTradingPlatforms/CTraderList/CTraderList.scss similarity index 100% rename from packages/wallets/src/components/CTraderList/CTraderList.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/CTraderList/CTraderList.scss diff --git a/packages/wallets/src/components/CTraderList/CTraderList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/CTraderList/CTraderList.tsx similarity index 88% rename from packages/wallets/src/components/CTraderList/CTraderList.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/CTraderList/CTraderList.tsx index f105bfbce3c4..3d2f22d289d2 100644 --- a/packages/wallets/src/components/CTraderList/CTraderList.tsx +++ b/packages/wallets/src/components/ExternalTradingPlatforms/CTraderList/CTraderList.tsx @@ -1,7 +1,7 @@ import React from 'react'; -import CTrader from '../../public/images/ctrader.svg'; -import { SecondaryActionButton } from '../SecondaryActionButton'; -import { TradingAccountCard } from '../TradingAccountCard'; +import CTrader from '../../../public/images/ctrader.svg'; +import { SecondaryActionButton } from '../../SecondaryActionButton'; +import { TradingAccountCard } from '../../TradingAccountCard'; import './CTraderList.scss'; const ctrader_mapper = [ diff --git a/packages/wallets/src/components/CTraderList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/CTraderList/index.ts similarity index 100% rename from packages/wallets/src/components/CTraderList/index.ts rename to packages/wallets/src/components/ExternalTradingPlatforms/CTraderList/index.ts diff --git a/packages/wallets/src/components/MT5List/MT5List.scss b/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.scss similarity index 100% rename from packages/wallets/src/components/MT5List/MT5List.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.scss diff --git a/packages/wallets/src/components/MT5List/MT5List.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.tsx similarity index 91% rename from packages/wallets/src/components/MT5List/MT5List.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.tsx index a1c176033dbc..8ab24afecedb 100644 --- a/packages/wallets/src/components/MT5List/MT5List.tsx +++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.tsx @@ -2,9 +2,9 @@ import React from 'react'; import { useSortedMT5Accounts } from '@deriv/api'; import { AddedMT5AccountsList } from '../AddedMT5AccountsList'; import { AvailableMT5AccountsList } from '../AvailableMT5AccountsList'; -import './MT5List.scss'; +import './MT5PlatformsList.scss'; -const MT5List: React.FC = () => { +const MT5PlatformsList: React.FC = () => { const { data } = useSortedMT5Accounts(); if (!data) return ; @@ -35,4 +35,4 @@ const MT5List: React.FC = () => { ); }; -export default MT5List; +export default MT5PlatformsList; diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/index.ts new file mode 100644 index 000000000000..3874ee4d73ef --- /dev/null +++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/index.ts @@ -0,0 +1 @@ +export { default as MT5PlatformsList } from './MT5PlatformsList'; diff --git a/packages/wallets/src/components/OtherCFDPlatformsList/OtherCFDPlatformsList.scss b/packages/wallets/src/components/ExternalTradingPlatforms/OtherCFDPlatformsList/OtherCFDPlatformsList.scss similarity index 100% rename from packages/wallets/src/components/OtherCFDPlatformsList/OtherCFDPlatformsList.scss rename to packages/wallets/src/components/ExternalTradingPlatforms/OtherCFDPlatformsList/OtherCFDPlatformsList.scss diff --git a/packages/wallets/src/components/OtherCFDPlatformsList/OtherCFDPlatformsList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/OtherCFDPlatformsList/OtherCFDPlatformsList.tsx similarity index 100% rename from packages/wallets/src/components/OtherCFDPlatformsList/OtherCFDPlatformsList.tsx rename to packages/wallets/src/components/ExternalTradingPlatforms/OtherCFDPlatformsList/OtherCFDPlatformsList.tsx diff --git a/packages/wallets/src/components/OtherCFDPlatformsList/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/OtherCFDPlatformsList/index.ts similarity index 100% rename from packages/wallets/src/components/OtherCFDPlatformsList/index.ts rename to packages/wallets/src/components/ExternalTradingPlatforms/OtherCFDPlatformsList/index.ts diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/index.ts new file mode 100644 index 000000000000..b610ac21ae77 --- /dev/null +++ b/packages/wallets/src/components/ExternalTradingPlatforms/index.ts @@ -0,0 +1,9 @@ +export * from './AddedDxtradeAccountsList'; +export * from './AddedMT5AccountsList'; +export * from './AvailableDerivezAccountsList'; +export * from './AvailableDxtradeAccountsList'; +export * from './AvailableMT5AccountsList'; +export * from './CFDPlatformsList'; +export * from './CTraderList'; +export * from './MT5PlatformsList'; +export * from './OtherCFDPlatformsList'; diff --git a/packages/wallets/src/components/MT5List/index.ts b/packages/wallets/src/components/MT5List/index.ts deleted file mode 100644 index 103f4e9653b9..000000000000 --- a/packages/wallets/src/components/MT5List/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { default as MT5List } from './MT5List'; diff --git a/packages/wallets/src/components/index.ts b/packages/wallets/src/components/index.ts index 38ca43104406..ef83646f3c73 100644 --- a/packages/wallets/src/components/index.ts +++ b/packages/wallets/src/components/index.ts @@ -1,16 +1,8 @@ export * from './AccountsList'; -export * from './AddedDxtradeAccountsList'; -export * from './AddedMT5AccountsList'; -export * from './AvailableDerivezAccountsList'; -export * from './AvailableDxtradeAccountsList'; -export * from './AvailableMT5AccountsList'; -export * from './CFDList'; -export * from './CTraderList'; export * from './DesktopWalletsList'; +export * from './ExternalTradingPlatforms'; export * from './Loader'; -export * from './MT5List'; export * from './OptionsAndMultipliersListing'; -export * from './OtherCFDPlatformsList'; export * from './PrimaryActionButton'; export * from './ProgressBar'; export * from './SecondaryActionButton'; From f58572eacc2a5dc8bd2b415ea5cc7e809e75ebec Mon Sep 17 00:00:00 2001 From: Jim Daniels Wasswa <104334373+jim-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 15:34:14 +0800 Subject: [PATCH 10/41] =?UTF-8?q?translations:=20=F0=9F=93=9A=20sync=20tra?= =?UTF-8?q?nslations=20with=20crowdin=20(#10188)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: DerivFE <80095553+DerivFE@users.noreply.github.com> --- packages/p2p/crowdin/messages.json | 2 +- packages/p2p/src/translations/ar.json | 2 - packages/p2p/src/translations/bn.json | 2 - packages/p2p/src/translations/de.json | 2 - packages/p2p/src/translations/es.json | 2 - packages/p2p/src/translations/fr.json | 2 - packages/p2p/src/translations/id.json | 2 - packages/p2p/src/translations/it.json | 2 - packages/p2p/src/translations/ko.json | 2 - packages/p2p/src/translations/pl.json | 2 - packages/p2p/src/translations/pt.json | 2 - packages/p2p/src/translations/ru.json | 2 - packages/p2p/src/translations/si.json | 2 - packages/p2p/src/translations/th.json | 2 - packages/p2p/src/translations/tr.json | 2 - packages/p2p/src/translations/vi.json | 2 - packages/p2p/src/translations/zh_cn.json | 2 - packages/p2p/src/translations/zh_tw.json | 2 - packages/translations/crowdin/messages.json | 2 +- .../translations/src/translations/ach.json | 4 +- .../translations/src/translations/ar.json | 4 +- .../translations/src/translations/bn.json | 4 +- .../translations/src/translations/de.json | 4 +- .../translations/src/translations/es.json | 4 +- .../translations/src/translations/fr.json | 4 +- .../translations/src/translations/id.json | 4 +- .../translations/src/translations/it.json | 4 +- .../translations/src/translations/ko.json | 4 +- .../translations/src/translations/pl.json | 4 +- .../translations/src/translations/pt.json | 4 +- .../translations/src/translations/ru.json | 4 +- .../translations/src/translations/si.json | 126 +++++++++--------- .../translations/src/translations/th.json | 4 +- .../translations/src/translations/tr.json | 4 +- .../translations/src/translations/vi.json | 4 +- .../translations/src/translations/zh_cn.json | 4 +- .../translations/src/translations/zh_tw.json | 4 +- 37 files changed, 117 insertions(+), 115 deletions(-) diff --git a/packages/p2p/crowdin/messages.json b/packages/p2p/crowdin/messages.json index 2a6f276a34ed..2339eb58d96d 100644 --- a/packages/p2p/crowdin/messages.json +++ b/packages/p2p/crowdin/messages.json @@ -1 +1 @@ -{"6794664":"Ads that match your Deriv P2P balance and limit.","19789721":"Nobody has blocked you. Yay!","24711354":"Total orders <0>30d | <1>lifetime","47573834":"Fixed rate (1 {{account_currency}})","50672601":"Bought","51881712":"You already have an ad with the same exchange rate for this currency pair and order type.

Please set a different rate for your ad.","55916349":"All","68867477":"Order ID {{ id }}","81450871":"We couldn’t find that page","121738739":"Send","122280248":"Avg release time <0>30d","134205943":"Your ads with fixed rates have been deactivated. Set floating rates to reactivate them.","140800401":"Float","145959105":"Choose a nickname","150156106":"Save changes","159757877":"You won't see {{advertiser_name}}'s ads anymore and they won't be able to place orders on your ads.","170072126":"Seen {{ duration }} days ago","173939998":"Avg. pay time <0>30d","197477687":"Edit {{ad_type}} ad","203271702":"Try again","231473252":"Preferred currency","233677840":"of the market rate","246815378":"Once set, your nickname cannot be changed.","276261353":"Avg pay time <0>30d","277542386":"Please use <0>live chat to contact our Customer Support team for help.","316725580":"You can no longer rate this transaction.","323002325":"Post ad","324970564":"Seller's contact details","338910048":"You will appear to other users as","358133589":"Unblock {{advertiser_name}}?","364681129":"Contact details","367579676":"Blocked","392469164":"You have blocked {{advertiser_name}}.","416167062":"You'll receive","424668491":"expired","439264204":"Please set a different minimum and/or maximum order limit.

The range of your ad should not overlap with any of your active ads.","452752527":"Rate (1 {{ currency }})","459886707":"E-wallets","460477293":"Enter message","464044457":"Buyer's nickname","473688701":"Enter a valid amount","476023405":"Didn't receive the email?","488150742":"Resend email","498500965":"Seller's nickname","500514593":"Hide my ads","501523417":"You have no orders.","517202770":"Set fixed rate","523301614":"Release {{amount}} {{currency}}","525380157":"Buy {{offered_currency}} order","531912261":"Bank name, account number, beneficiary name","554135844":"Edit","555447610":"You won't be able to change your buy and sell limits again after this. Do you want to continue?","560402954":"User rating","565060416":"Exchange rate","580715136":"Please register with us!","587882987":"Advertisers","611376642":"Clear","612069973":"Would you recommend this buyer?","628581263":"The {{local_currency}} market rate has changed.","639382772":"Please upload supported file type.","649549724":"I’ve not received any payment.","654193846":"The verification link appears to be invalid. Hit the button below to request for a new one","655733440":"Others","661808069":"Resend email {{remaining_time}}","662578726":"Available","683273691":"Rate (1 {{ account_currency }})","723172934":"Looking to buy or sell USD? You can post your own ad for others to respond.","728383001":"I’ve received more than the agreed amount.","733311523":"P2P transactions are locked. This feature is not available for payment agents.","767789372":"Wait for payment","782834680":"Time left","783454335":"Yes, remove","830703311":"My profile","834075131":"Blocked advertisers","838024160":"Bank details","842911528":"Don’t show this message again.","846659545":"Your ad is not listed on <0>Buy/Sell because the amount exceeds your daily limit of {{limit}} {{currency}}.\n <1 /><1 />You can still see your ad on <0>My ads. If you’d like to increase your daily limit, please contact us via <2>live chat.","847028402":"Check your email","858027714":"Seen {{ duration }} minutes ago","873437248":"Instructions (optional)","876086855":"Complete the financial assessment form","881351325":"Would you recommend this seller?","887667868":"Order","892431976":"If you cancel your order {{cancellation_limit}} times in {{cancellation_period}} hours, you will be blocked from using Deriv P2P for {{block_duration}} hours.
({{number_of_cancels_remaining}} cancellations remaining)","949859957":"Submit","954233511":"Sold","957529514":"To place an order, add one of the advertiser’s preferred payment methods:","957807235":"Blocking wasn't possible as {{name}} is not using Deriv P2P anymore.","988380202":"Your instructions","1001160515":"Sell","1002264993":"Seller's real name","1020552673":"You're creating an ad to buy <0>{{ target_amount }} {{ target_currency }}...","1030390916":"You already have an ad with this range","1035893169":"Delete","1052094244":"Max order","1056821534":"Are you sure?","1057127276":"{{- avg_release_time_in_minutes}} min","1065551550":"Set floating rate","1080990424":"Confirm","1089110190":"You accidentally gave us another email address (usually a work or a personal one instead of the one you meant).","1091533736":"Don't risk your funds with cash transactions. Use bank transfers or e-wallets instead.","1106073960":"You've created an ad","1106485202":"Available Deriv P2P balance","1109217274":"Success!","1119887091":"Verification","1121630246":"Block","1137964885":"Can only contain letters, numbers, and special characters .- _ @.","1151608942":"Total amount","1157877436":"{{field_name}} should not exceed Amount","1161621759":"Choose your nickname","1162965175":"Buyer","1163072833":"<0>ID verified","1164771858":"I’ve received payment from 3rd party.","1191941618":"Enter a value that's within -{{limit}}% to +{{limit}}%","1192337383":"Seen {{ duration }} hour ago","1202500203":"Pay now","1228352589":"Not rated yet","1229976478":"You will be able to see {{ advertiser_name }}'s ads. They'll be able to place orders on your ads, too.","1236083813":"Your payment details","1258285343":"Oops, something went wrong","1265751551":"Deriv P2P Balance","1286797620":"Active","1287051975":"Nickname is too long","1300767074":"{{name}} is no longer on Deriv P2P","1303016265":"Yes","1313218101":"Rate this transaction","1314266187":"Joined today","1320670806":"Leave page","1326475003":"Activate","1328352136":"Sell {{ account_currency }}","1330528524":"Seen {{ duration }} month ago","1337027601":"You sold {{offered_amount}} {{offered_currency}}","1347322213":"How would you rate this transaction?","1347724133":"I have paid {{amount}} {{currency}}.","1366244749":"Limits","1370999551":"Floating rate","1371193412":"Cancel","1381949324":"<0>Address verified","1398938904":"We can't deliver the email to this address (usually because of firewalls or filtering).","1422356389":"No results for \"{{text}}\".","1430413419":"Maximum is {{value}} {{currency}}","1438103743":"Floating rates are enabled for {{local_currency}}. Ads with fixed rates will be deactivated. Switch to floating rates by {{end_date}}.","1448855725":"Add payment methods","1452260922":"Too many failed attempts","1467483693":"Past orders","1474532322":"Sort by","1480915523":"Skip","1497156292":"No ads for this currency 😞","1505293001":"Trade partners","1568512719":"Your daily limits have been increased to {{daily_buy_limit}} {{currency}} (buy) and {{daily_sell_limit}} {{currency}} (sell).","1583335572":"If the ad doesn't receive an order for {{adverts_archive_period}} days, it will be deactivated.","1587250288":"Ad ID {{advert_id}} ","1607051458":"Search by nickname","1612595358":"Cannot upload a file over 2MB","1615530713":"Something's not right","1620858613":"You're editing an ad to sell <0>{{ target_amount }} {{ target_currency }} for <0>{{ local_amount }} {{ local_currency }} <1>({{ price_rate }} {{local_currency}}/{{ target_currency }})","1623916605":"I wasn’t able to make full payment.","1654365787":"Unknown","1660278694":"The advertiser changed the rate before you confirmed the order.","1671725772":"If you choose to cancel, the edited details will be lost.","1675716253":"Min limit","1678804253":"Buy {{ currency }}","1685888862":"An internal error occurred","1691540875":"Edit payment method","1703154819":"You're editing an ad to sell <0>{{ target_amount }} {{ target_currency }}...","1721422292":"Show my real name","1734661732":"Your DP2P balance is {{ dp2p_balance }}","1747523625":"Go back","1752096323":"{{field_name}} should not be below Min limit","1767817594":"Buy completion <0>30d","1784151356":"at","1791767028":"Set a fixed rate for your ad.","1794470010":"I’ve made full payment, but the seller hasn’t released the funds.","1794474847":"I've received payment","1798116519":"Available amount","1809099720":"Expand all","1810217569":"Please refresh this page to continue.","1842172737":"You've received {{offered_amount}} {{offered_currency}}","1848044659":"You have no ads.","1859308030":"Give feedback","1874956952":"Hit the button below to add payment methods.","1902229457":"Unable to block advertiser","1908023954":"Sorry, an error occurred while processing your request.","1923443894":"Inactive","1928240840":"Sell {{ currency }}","1929119945":"There are no ads yet","1976156928":"You'll send","1992961867":"Rate (1 {{currency}})","1994023526":"The email address you entered had a mistake or typo (happens to the best of us).","2020104747":"Filter","2029375371":"Payment instructions","2032274854":"Recommended by {{recommended_count}} traders","2039361923":"You're creating an ad to sell...","2040110829":"Increase my limits","2060873863":"Your order {{order_id}} is complete","2063890788":"Cancelled","2091671594":"Status","2096014107":"Apply","2104905634":"No one has recommended this trader yet","2108340400":"Hello! This is where you can chat with the counterparty to confirm the order details.nNote: In case of a dispute, we'll use this chat as a reference.","2121837513":"Minimum is {{value}} {{currency}}","2142425493":"Ad ID","2142752968":"Please ensure you've received {{amount}} {{local_currency}} in your account and hit Confirm to complete the transaction.","2145292295":"Rate","-1837059346":"Buy / Sell","-1845037007":"Advertiser's page","-494667560":"Orders","-679691613":"My ads","-526636259":"Error 404","-1540251249":"Buy {{ account_currency }}","-1267880283":"{{field_name}} is required","-2019083683":"{{field_name}} can only include letters, numbers, spaces, and any of these symbols: -+.,'#@():;","-222920564":"{{field_name}} has exceeded maximum length","-2093768906":"{{name}} has released your funds.
Would you like to give your feedback?","-857786650":"Check your verification status.","-612892886":"We’ll need you to upload your documents to verify your identity.","-2090325029":"Identity verification is complete.","-1101273282":"Nickname is required","-919203928":"Nickname is too short","-1907100457":"Cannot start, end with, or repeat special characters.","-270502067":"Cannot repeat a character more than 4 times.","-499872405":"You have open orders for this ad. Complete all open orders before deleting this ad.","-2125702445":"Instructions","-1274358564":"Max limit","-1995606668":"Amount","-1965472924":"Fixed rate","-1081775102":"{{field_name}} should not be below Max limit","-885044836":"{{field_name}} should not exceed Max limit","-1921077416":"All ({{list_value}})","-608125128":"Blocked ({{list_value}})","-1764050750":"Payment details","-2021135479":"This field is required.","-2005205076":"{{field_name}} has exceeded maximum length of 200 characters.","-480724783":"You already have an ad with this rate","-1117584385":"Seen more than 6 months ago","-1766199849":"Seen {{ duration }} months ago","-591593016":"Seen {{ duration }} day ago","-1586918919":"Seen {{ duration }} hours ago","-664781013":"Seen {{ duration }} minute ago","-1717650468":"Online","-1948369500":"File uploaded is not supported","-1207312691":"Completed","-688728873":"Expired","-1951641340":"Under dispute","-1738697484":"Confirm payment","-1611857550":"Waiting for the seller to confirm","-1452684930":"Buyer's real name","-1597110099":"Receive","-892663026":"Your contact details","-1875343569":"Seller's payment details","-92830427":"Seller's instructions","-1940034707":"Buyer's instructions","-471384801":"Sorry, we're unable to increase your limits right now. Please try again in a few minutes.","-329713179":"Ok","-231863107":"No","-150224710":"Yes, continue","-205277874":"Your ad is not listed on Buy/Sell because its minimum order is higher than your Deriv P2P available balance ({{balance}} {{currency}}).","-971817673":"Your ad isn't visible to others","-1735126907":"This could be because your account balance is insufficient, your ad amount exceeds your daily limit, or both. You can still see your ad on <0>My ads.","-674715853":"Your ad exceeds the daily limit","-1530773708":"Block {{advertiser_name}}?","-1689905285":"Unblock","-2035037071":"Your Deriv P2P balance isn't enough. Please increase your balance before trying again.","-412680608":"Add payment method","-293182503":"Cancel adding this payment method?","-1850127397":"If you choose to cancel, the details you’ve entered will be lost.","-1601971804":"Cancel your edits?","-1571737200":"Don't cancel","-1072444041":"Update ad","-1088454544":"Get new link","-2124584325":"We've verified your order","-848068683":"Hit the link in the email we sent you to authorise this transaction.","-1238182882":"The link will expire in 10 minutes.","-142727028":"The email is in your spam folder (sometimes things get lost there).","-1306639327":"Payment methods","-227512949":"Check your spelling or use a different term.","-1554938377":"Search payment method","-1285759343":"Search","-75934135":"Matching ads","-1856204727":"Reset","-1728351486":"Invalid verification link","-433946201":"Leave page?","-818345434":"Are you sure you want to leave this page? Changes made will not be saved.","-392043307":"Do you want to delete this ad?","-854930519":"You will NOT be able to restore it.","-1600783504":"Set a floating rate for your ad.","-2008992756":"Do you want to cancel this order?","-1618084450":"If you cancel this order, you'll be blocked from using Deriv P2P for {{block_duration}} hours.","-2026176944":"Please do not cancel if you have already made payment.","-1989544601":"Cancel this order","-492996224":"Do not cancel","-1447732068":"Payment confirmation","-1951344681":"Please make sure that you've paid {{amount}} {{currency}} to {{other_user_name}}, and upload the receipt as proof of your payment","-919988505":"We accept JPG, PDF, or PNG (up to 2MB).","-670364940":"Upload receipt here","-937707753":"Go Back","-984140537":"Add","-1220275347":"You may choose up to 3 payment methods for this ad.","-871975082":"You may add up to 3 payment methods.","-1340125291":"Done","-510341549":"I’ve received less than the agreed amount.","-650030360":"I’ve paid more than the agreed amount.","-1192446042":"If your complaint isn't listed here, please contact our Customer Support team.","-573132778":"Complaint","-792338456":"What's your complaint?","-418870584":"Cancel order","-1392383387":"I've paid","-727273667":"Complain","-2016990049":"Sell {{offered_currency}} order","-811190405":"Time","-961632398":"Collapse all","-415476028":"Not rated","-26434257":"You have until {{remaining_review_time}} GMT to rate this transaction.","-768709492":"Your transaction experience","-652933704":"Recommended","-84139378":"Not Recommended","-2139303636":"You may have followed a broken link, or the page has moved to a new address.","-1448368765":"Error code: {{error_code}} page not found","-1660552437":"Return to P2P","-849068301":"Loading...","-2061807537":"Something’s not right","-1354983065":"Refresh","-137444201":"Buy","-904197848":"Limits {{min_order_amount_limit_display}}-{{max_order_amount_limit_display}} {{currency}}","-464361439":"{{- avg_buy_time_in_minutes}} min","-2109576323":"Sell completion <0>30d","-165392069":"Avg. release time <0>30d","-1154208372":"Trade volume <0>30d","-1887970998":"Unblocking wasn't possible as {{name}} is not using Deriv P2P anymore.","-2017825013":"Got it","-1070228546":"Joined {{days_since_joined}}d","-2015102262":"({{number_of_ratings}} rating)","-1412298133":"({{number_of_ratings}} ratings)","-260332243":"{{user_blocked_count}} person has blocked you","-117094654":"{{user_blocked_count}} people have blocked you","-1148912768":"If the market rate changes from the rate shown here, we won't be able to process your order.","-55126326":"Seller","-835196958":"Receive payment to","-1218007718":"You may choose up to 3.","-1933432699":"Enter {{transaction_type}} amount","-2021730616":"{{ad_type}}","-490637584":"Limit: {{min}}–{{max}} {{currency}}","-1974067943":"Your bank details","-1657433201":"There are no matching ads.","-1862812590":"Limits {{ min_order }}–{{ max_order }} {{ currency }}","-375836822":"Buy {{account_currency}}","-1035421133":"Sell {{account_currency}}","-1503997652":"No ads for this currency.","-1048001140":"No results for \"{{value}}\".","-1179827369":"Create new ad","-73663931":"Create ad","-141315849":"No ads for this currency at the moment 😞","-1889014820":"<0>Don’t see your payment method? <1>Add new.","-1406830100":"Payment method","-1561775203":"Buy {{currency}}","-1527285935":"Sell {{currency}}","-592818187":"Your Deriv P2P balance is {{ dp2p_balance }}","-1654157453":"Fixed rate (1 {{currency}})","-379708059":"Min order","-1459289144":"This information will be visible to everyone.","-207756259":"You may tap and choose up to 3.","-1282343703":"You're creating an ad to buy <0>{{ target_amount }} {{ target_currency }} for <0>{{ local_amount }} {{ local_currency }} <1>({{ price_rate }} {{local_currency}}/{{ target_currency }})","-2139632895":"You're creating an ad to sell <0>{{ target_amount }} {{ target_currency }} for <0>{{ local_amount }} {{ local_currency }} <1>({{ price_rate }} {{local_currency}}/{{ target_currency }})","-40669120":"You're creating an ad to sell <0>{{ target_amount }} {{ target_currency }}...","-514789442":"You're creating an ad to buy...","-230677679":"{{text}}","-1914431773":"You're editing an ad to buy <0>{{ target_amount }} {{ target_currency }} for <0>{{ local_amount }} {{ local_currency }} <1>({{ price_rate }} {{local_currency}}/{{ target_currency }})","-107996509":"You're editing an ad to buy <0>{{ target_amount }} {{ target_currency }}...","-863580260":"You're editing an ad to buy...","-1396464057":"You're editing an ad to sell...","-1526367101":"There are no matching payment methods.","-372210670":"Rate (1 {{account_currency}})","-1318334333":"Deactivate","-1667041441":"Rate (1 {{ offered_currency }})","-1886565882":"Your ads with floating rates have been deactivated. Set fixed rates to reactivate them.","-792015701":"Deriv P2P cashier is unavailable in your country.","-1241719539":"When you block someone, you won't see their ads, and they can't see yours. Your ads will be hidden from their search results, too.","-1007339977":"There are no matching name.","-1298666786":"My counterparties","-179005984":"Save","-2059312414":"Ad details","-1769584466":"Stats","-808161760":"Deriv P2P balance = deposits that can’t be reversed","-684271315":"OK","-2090878601":"Daily limit","-474123616":"Want to increase your daily limits to <0>{{max_daily_buy}} {{currency}} (buy) and <1>{{max_daily_sell}} {{currency}} (sell)?","-130547447":"Trade volume <0>30d | <1>lifetime","-1792280476":"Choose your payment method","-383030149":"You haven’t added any payment methods yet","-1156559889":"Bank Transfers","-1269362917":"Add new","-1983512566":"This conversation is closed.","-283017497":"Retry","-979459594":"Buy/Sell","-2052184983":"Order ID","-2096350108":"Counterparty","-750202930":"Active orders","-1626659964":"I've received {{amount}} {{currency}}.","-1638172550":"To enable this feature you must complete the following:","-559300364":"Your Deriv P2P cashier is blocked","-740038242":"Your rate is","-146021156":"Delete {{payment_method_name}}?","-1846700504":"Are you sure you want to remove this payment method?","-1422779483":"That payment method cannot be deleted","-532709160":"Your nickname","-237014436":"Recommended by {{recommended_count}} trader","-2054589794":"You've been temporarily barred from using our services due to multiple cancellation attempts. Try again after {{date_time}} GMT.","-1079963355":"trades","-930400128":"To use Deriv P2P, you need to choose a display name (a nickname) and verify your identity.","-992568889":"No one to show here"} \ No newline at end of file +{"6794664":"Ads that match your Deriv P2P balance and limit.","19789721":"Nobody has blocked you. Yay!","24711354":"Total orders <0>30d | <1>lifetime","47573834":"Fixed rate (1 {{account_currency}})","50672601":"Bought","51881712":"You already have an ad with the same exchange rate for this currency pair and order type.

Please set a different rate for your ad.","55916349":"All","68867477":"Order ID {{ id }}","81450871":"We couldn’t find that page","121738739":"Send","122280248":"Avg release time <0>30d","134205943":"Your ads with fixed rates have been deactivated. Set floating rates to reactivate them.","140800401":"Float","145959105":"Choose a nickname","150156106":"Save changes","159757877":"You won't see {{advertiser_name}}'s ads anymore and they won't be able to place orders on your ads.","170072126":"Seen {{ duration }} days ago","173939998":"Avg. pay time <0>30d","197477687":"Edit {{ad_type}} ad","203271702":"Try again","231473252":"Preferred currency","233677840":"of the market rate","246815378":"Once set, your nickname cannot be changed.","276261353":"Avg pay time <0>30d","277542386":"Please use <0>live chat to contact our Customer Support team for help.","316725580":"You can no longer rate this transaction.","323002325":"Post ad","324970564":"Seller's contact details","338910048":"You will appear to other users as","358133589":"Unblock {{advertiser_name}}?","364681129":"Contact details","367579676":"Blocked","392469164":"You have blocked {{advertiser_name}}.","416167062":"You'll receive","424668491":"expired","439264204":"Please set a different minimum and/or maximum order limit.

The range of your ad should not overlap with any of your active ads.","452752527":"Rate (1 {{ currency }})","459886707":"E-wallets","460477293":"Enter message","464044457":"Buyer's nickname","473688701":"Enter a valid amount","476023405":"Didn't receive the email?","488150742":"Resend email","498500965":"Seller's nickname","500514593":"Hide my ads","501523417":"You have no orders.","517202770":"Set fixed rate","523301614":"Release {{amount}} {{currency}}","525380157":"Buy {{offered_currency}} order","531912261":"Bank name, account number, beneficiary name","554135844":"Edit","555447610":"You won't be able to change your buy and sell limits again after this. Do you want to continue?","560402954":"User rating","565060416":"Exchange rate","580715136":"Please register with us!","587882987":"Advertisers","611376642":"Clear","612069973":"Would you recommend this buyer?","628581263":"The {{local_currency}} market rate has changed.","639382772":"Please upload supported file type.","649549724":"I’ve not received any payment.","654193846":"The verification link appears to be invalid. Hit the button below to request for a new one","655733440":"Others","661808069":"Resend email {{remaining_time}}","662578726":"Available","683273691":"Rate (1 {{ account_currency }})","723172934":"Looking to buy or sell USD? You can post your own ad for others to respond.","728383001":"I’ve received more than the agreed amount.","733311523":"P2P transactions are locked. This feature is not available for payment agents.","767789372":"Wait for payment","782834680":"Time left","783454335":"Yes, remove","830703311":"My profile","834075131":"Blocked advertisers","838024160":"Bank details","842911528":"Don’t show this message again.","846659545":"Your ad is not listed on <0>Buy/Sell because the amount exceeds your daily limit of {{limit}} {{currency}}.\n <1 /><1 />You can still see your ad on <0>My ads. If you’d like to increase your daily limit, please contact us via <2>live chat.","847028402":"Check your email","858027714":"Seen {{ duration }} minutes ago","873437248":"Instructions (optional)","876086855":"Complete the financial assessment form","881351325":"Would you recommend this seller?","887667868":"Order","892431976":"If you cancel your order {{cancellation_limit}} times in {{cancellation_period}} hours, you will be blocked from using Deriv P2P for {{block_duration}} hours.
({{number_of_cancels_remaining}} cancellations remaining)","949859957":"Submit","954233511":"Sold","957529514":"To place an order, add one of the advertiser’s preferred payment methods:","957807235":"Blocking wasn't possible as {{name}} is not using Deriv P2P anymore.","988380202":"Your instructions","1001160515":"Sell","1002264993":"Seller's real name","1020552673":"You're creating an ad to buy <0>{{ target_amount }} {{ target_currency }}...","1030390916":"You already have an ad with this range","1035893169":"Delete","1052094244":"Max order","1056821534":"Are you sure?","1057127276":"{{- avg_release_time_in_minutes}} min","1065551550":"Set floating rate","1080990424":"Confirm","1089110190":"You accidentally gave us another email address (usually a work or a personal one instead of the one you meant).","1091533736":"Don't risk your funds with cash transactions. Use bank transfers or e-wallets instead.","1106073960":"You've created an ad","1106485202":"Available Deriv P2P balance","1109217274":"Success!","1119887091":"Verification","1121630246":"Block","1137964885":"Can only contain letters, numbers, and special characters .- _ @.","1151608942":"Total amount","1157877436":"{{field_name}} should not exceed Amount","1161621759":"Choose your nickname","1162965175":"Buyer","1163072833":"<0>ID verified","1164771858":"I’ve received payment from 3rd party.","1191941618":"Enter a value that's within -{{limit}}% to +{{limit}}%","1192337383":"Seen {{ duration }} hour ago","1202500203":"Pay now","1228352589":"Not rated yet","1229976478":"You will be able to see {{ advertiser_name }}'s ads. They'll be able to place orders on your ads, too.","1236083813":"Your payment details","1258285343":"Oops, something went wrong","1265751551":"Deriv P2P Balance","1286797620":"Active","1287051975":"Nickname is too long","1300767074":"{{name}} is no longer on Deriv P2P","1303016265":"Yes","1313218101":"Rate this transaction","1314266187":"Joined today","1320670806":"Leave page","1326475003":"Activate","1328352136":"Sell {{ account_currency }}","1330528524":"Seen {{ duration }} month ago","1337027601":"You sold {{offered_amount}} {{offered_currency}}","1347322213":"How would you rate this transaction?","1347724133":"I have paid {{amount}} {{currency}}.","1366244749":"Limits","1370999551":"Floating rate","1371193412":"Cancel","1381949324":"<0>Address verified","1398938904":"We can't deliver the email to this address (usually because of firewalls or filtering).","1422356389":"No results for \"{{text}}\".","1430413419":"Maximum is {{value}} {{currency}}","1438103743":"Floating rates are enabled for {{local_currency}}. Ads with fixed rates will be deactivated. Switch to floating rates by {{end_date}}.","1448855725":"Add payment methods","1452260922":"Too many failed attempts","1467483693":"Past orders","1474532322":"Sort by","1480915523":"Skip","1497156292":"No ads for this currency 😞","1505293001":"Trade partners","1568512719":"Your daily limits have been increased to {{daily_buy_limit}} {{currency}} (buy) and {{daily_sell_limit}} {{currency}} (sell).","1583335572":"If the ad doesn't receive an order for {{adverts_archive_period}} days, it will be deactivated.","1587250288":"Ad ID {{advert_id}} ","1607051458":"Search by nickname","1612595358":"Cannot upload a file over 2MB","1615530713":"Something's not right","1620858613":"You're editing an ad to sell <0>{{ target_amount }} {{ target_currency }} for <0>{{ local_amount }} {{ local_currency }} <1>({{ price_rate }} {{local_currency}}/{{ target_currency }})","1623916605":"I wasn’t able to make full payment.","1654365787":"Unknown","1660278694":"The advertiser changed the rate before you confirmed the order.","1671725772":"If you choose to cancel, the edited details will be lost.","1675716253":"Min limit","1678804253":"Buy {{ currency }}","1685888862":"An internal error occurred","1691540875":"Edit payment method","1703154819":"You're editing an ad to sell <0>{{ target_amount }} {{ target_currency }}...","1721422292":"Show my real name","1734661732":"Your DP2P balance is {{ dp2p_balance }}","1747523625":"Go back","1752096323":"{{field_name}} should not be below Min limit","1767817594":"Buy completion <0>30d","1784151356":"at","1791767028":"Set a fixed rate for your ad.","1794470010":"I’ve made full payment, but the seller hasn’t released the funds.","1794474847":"I've received payment","1798116519":"Available amount","1809099720":"Expand all","1810217569":"Please refresh this page to continue.","1842172737":"You've received {{offered_amount}} {{offered_currency}}","1848044659":"You have no ads.","1859308030":"Give feedback","1874956952":"Hit the button below to add payment methods.","1902229457":"Unable to block advertiser","1908023954":"Sorry, an error occurred while processing your request.","1923443894":"Inactive","1928240840":"Sell {{ currency }}","1929119945":"There are no ads yet","1976156928":"You'll send","1992961867":"Rate (1 {{currency}})","1994023526":"The email address you entered had a mistake or typo (happens to the best of us).","2020104747":"Filter","2029375371":"Payment instructions","2032274854":"Recommended by {{recommended_count}} traders","2039361923":"You're creating an ad to sell...","2040110829":"Increase my limits","2060873863":"Your order {{order_id}} is complete","2063890788":"Cancelled","2091671594":"Status","2096014107":"Apply","2104905634":"No one has recommended this trader yet","2108340400":"Hello! This is where you can chat with the counterparty to confirm the order details.nNote: In case of a dispute, we'll use this chat as a reference.","2121837513":"Minimum is {{value}} {{currency}}","2142425493":"Ad ID","2142752968":"Please ensure you've received {{amount}} {{local_currency}} in your account and hit Confirm to complete the transaction.","2145292295":"Rate","-1837059346":"Buy / Sell","-1845037007":"Advertiser's page","-494667560":"Orders","-679691613":"My ads","-526636259":"Error 404","-1540251249":"Buy {{ account_currency }}","-1267880283":"{{field_name}} is required","-2019083683":"{{field_name}} can only include letters, numbers, spaces, and any of these symbols: -+.,'#@():;","-222920564":"{{field_name}} has exceeded maximum length","-2093768906":"{{name}} has released your funds.
Would you like to give your feedback?","-857786650":"Check your verification status.","-612892886":"We’ll need you to upload your documents to verify your identity.","-2090325029":"Identity verification is complete.","-1101273282":"Nickname is required","-919203928":"Nickname is too short","-1907100457":"Cannot start, end with, or repeat special characters.","-270502067":"Cannot repeat a character more than 4 times.","-499872405":"You have open orders for this ad. Complete all open orders before deleting this ad.","-2125702445":"Instructions","-1274358564":"Max limit","-1995606668":"Amount","-1965472924":"Fixed rate","-1081775102":"{{field_name}} should not be below Max limit","-885044836":"{{field_name}} should not exceed Max limit","-1921077416":"All ({{list_value}})","-608125128":"Blocked ({{list_value}})","-1764050750":"Payment details","-2021135479":"This field is required.","-2005205076":"{{field_name}} has exceeded maximum length of 200 characters.","-480724783":"You already have an ad with this rate","-1117584385":"Seen more than 6 months ago","-1766199849":"Seen {{ duration }} months ago","-591593016":"Seen {{ duration }} day ago","-1586918919":"Seen {{ duration }} hours ago","-664781013":"Seen {{ duration }} minute ago","-1717650468":"Online","-1948369500":"File uploaded is not supported","-1207312691":"Completed","-688728873":"Expired","-1951641340":"Under dispute","-1738697484":"Confirm payment","-1611857550":"Waiting for the seller to confirm","-1452684930":"Buyer's real name","-1597110099":"Receive","-892663026":"Your contact details","-1875343569":"Seller's payment details","-92830427":"Seller's instructions","-1940034707":"Buyer's instructions","-471384801":"Sorry, we're unable to increase your limits right now. Please try again in a few minutes.","-329713179":"Ok","-231863107":"No","-150224710":"Yes, continue","-205277874":"Your ad is not listed on Buy/Sell because its minimum order is higher than your Deriv P2P available balance ({{balance}} {{currency}}).","-971817673":"Your ad isn't visible to others","-1735126907":"This could be because your account balance is insufficient, your ad amount exceeds your daily limit, or both. You can still see your ad on <0>My ads.","-674715853":"Your ad exceeds the daily limit","-1530773708":"Block {{advertiser_name}}?","-1689905285":"Unblock","-2035037071":"Your Deriv P2P balance isn't enough. Please increase your balance before trying again.","-412680608":"Add payment method","-293182503":"Cancel adding this payment method?","-1850127397":"If you choose to cancel, the details you’ve entered will be lost.","-1601971804":"Cancel your edits?","-1571737200":"Don't cancel","-1072444041":"Update ad","-1088454544":"Get new link","-2124584325":"We've verified your order","-848068683":"Hit the link in the email we sent you to authorise this transaction.","-1238182882":"The link will expire in 10 minutes.","-142727028":"The email is in your spam folder (sometimes things get lost there).","-1306639327":"Payment methods","-227512949":"Check your spelling or use a different term.","-1554938377":"Search payment method","-1285759343":"Search","-75934135":"Matching ads","-1856204727":"Reset","-1728351486":"Invalid verification link","-433946201":"Leave page?","-818345434":"Are you sure you want to leave this page? Changes made will not be saved.","-392043307":"Do you want to delete this ad?","-854930519":"You will NOT be able to restore it.","-1600783504":"Set a floating rate for your ad.","-2008992756":"Do you want to cancel this order?","-1618084450":"If you cancel this order, you'll be blocked from using Deriv P2P for {{block_duration}} hours.","-2026176944":"Please do not cancel if you have already made payment.","-1989544601":"Cancel this order","-492996224":"Do not cancel","-1447732068":"Payment confirmation","-1951344681":"Please make sure that you've paid {{amount}} {{currency}} to {{other_user_name}}, and upload the receipt as proof of your payment","-919988505":"We accept JPG, PDF, or PNG (up to 2MB).","-670364940":"Upload receipt here","-937707753":"Go Back","-984140537":"Add","-1220275347":"You may choose up to 3 payment methods for this ad.","-1340125291":"Done","-510341549":"I’ve received less than the agreed amount.","-650030360":"I’ve paid more than the agreed amount.","-1192446042":"If your complaint isn't listed here, please contact our Customer Support team.","-573132778":"Complaint","-792338456":"What's your complaint?","-418870584":"Cancel order","-1392383387":"I've paid","-727273667":"Complain","-2016990049":"Sell {{offered_currency}} order","-811190405":"Time","-961632398":"Collapse all","-415476028":"Not rated","-26434257":"You have until {{remaining_review_time}} GMT to rate this transaction.","-768709492":"Your transaction experience","-652933704":"Recommended","-84139378":"Not Recommended","-2139303636":"You may have followed a broken link, or the page has moved to a new address.","-1448368765":"Error code: {{error_code}} page not found","-1660552437":"Return to P2P","-849068301":"Loading...","-2061807537":"Something’s not right","-1354983065":"Refresh","-137444201":"Buy","-904197848":"Limits {{min_order_amount_limit_display}}-{{max_order_amount_limit_display}} {{currency}}","-464361439":"{{- avg_buy_time_in_minutes}} min","-2109576323":"Sell completion <0>30d","-165392069":"Avg. release time <0>30d","-1154208372":"Trade volume <0>30d","-1887970998":"Unblocking wasn't possible as {{name}} is not using Deriv P2P anymore.","-2017825013":"Got it","-1070228546":"Joined {{days_since_joined}}d","-2015102262":"({{number_of_ratings}} rating)","-1412298133":"({{number_of_ratings}} ratings)","-260332243":"{{user_blocked_count}} person has blocked you","-117094654":"{{user_blocked_count}} people have blocked you","-1148912768":"If the market rate changes from the rate shown here, we won't be able to process your order.","-55126326":"Seller","-835196958":"Receive payment to","-1218007718":"You may choose up to 3.","-1933432699":"Enter {{transaction_type}} amount","-2021730616":"{{ad_type}}","-490637584":"Limit: {{min}}–{{max}} {{currency}}","-1974067943":"Your bank details","-1657433201":"There are no matching ads.","-1862812590":"Limits {{ min_order }}–{{ max_order }} {{ currency }}","-375836822":"Buy {{account_currency}}","-1035421133":"Sell {{account_currency}}","-1503997652":"No ads for this currency.","-1048001140":"No results for \"{{value}}\".","-1179827369":"Create new ad","-73663931":"Create ad","-141315849":"No ads for this currency at the moment 😞","-1889014820":"<0>Don’t see your payment method? <1>Add new.","-1406830100":"Payment method","-1561775203":"Buy {{currency}}","-1527285935":"Sell {{currency}}","-592818187":"Your Deriv P2P balance is {{ dp2p_balance }}","-1654157453":"Fixed rate (1 {{currency}})","-379708059":"Min order","-1459289144":"This information will be visible to everyone.","-207756259":"You may tap and choose up to 3.","-1282343703":"You're creating an ad to buy <0>{{ target_amount }} {{ target_currency }} for <0>{{ local_amount }} {{ local_currency }} <1>({{ price_rate }} {{local_currency}}/{{ target_currency }})","-2139632895":"You're creating an ad to sell <0>{{ target_amount }} {{ target_currency }} for <0>{{ local_amount }} {{ local_currency }} <1>({{ price_rate }} {{local_currency}}/{{ target_currency }})","-40669120":"You're creating an ad to sell <0>{{ target_amount }} {{ target_currency }}...","-514789442":"You're creating an ad to buy...","-230677679":"{{text}}","-1914431773":"You're editing an ad to buy <0>{{ target_amount }} {{ target_currency }} for <0>{{ local_amount }} {{ local_currency }} <1>({{ price_rate }} {{local_currency}}/{{ target_currency }})","-107996509":"You're editing an ad to buy <0>{{ target_amount }} {{ target_currency }}...","-863580260":"You're editing an ad to buy...","-1396464057":"You're editing an ad to sell...","-372210670":"Rate (1 {{account_currency}})","-1318334333":"Deactivate","-1667041441":"Rate (1 {{ offered_currency }})","-1886565882":"Your ads with floating rates have been deactivated. Set fixed rates to reactivate them.","-792015701":"Deriv P2P cashier is unavailable in your country.","-1241719539":"When you block someone, you won't see their ads, and they can't see yours. Your ads will be hidden from their search results, too.","-1007339977":"There are no matching name.","-1298666786":"My counterparties","-179005984":"Save","-2059312414":"Ad details","-1769584466":"Stats","-808161760":"Deriv P2P balance = deposits that can’t be reversed","-684271315":"OK","-2090878601":"Daily limit","-474123616":"Want to increase your daily limits to <0>{{max_daily_buy}} {{currency}} (buy) and <1>{{max_daily_sell}} {{currency}} (sell)?","-130547447":"Trade volume <0>30d | <1>lifetime","-1792280476":"Choose your payment method","-383030149":"You haven’t added any payment methods yet","-1156559889":"Bank Transfers","-1269362917":"Add new","-1983512566":"This conversation is closed.","-283017497":"Retry","-979459594":"Buy/Sell","-2052184983":"Order ID","-2096350108":"Counterparty","-750202930":"Active orders","-1626659964":"I've received {{amount}} {{currency}}.","-1638172550":"To enable this feature you must complete the following:","-559300364":"Your Deriv P2P cashier is blocked","-740038242":"Your rate is","-146021156":"Delete {{payment_method_name}}?","-1846700504":"Are you sure you want to remove this payment method?","-1422779483":"That payment method cannot be deleted","-532709160":"Your nickname","-237014436":"Recommended by {{recommended_count}} trader","-2054589794":"You've been temporarily barred from using our services due to multiple cancellation attempts. Try again after {{date_time}} GMT.","-1079963355":"trades","-930400128":"To use Deriv P2P, you need to choose a display name (a nickname) and verify your identity.","-992568889":"No one to show here"} \ No newline at end of file diff --git a/packages/p2p/src/translations/ar.json b/packages/p2p/src/translations/ar.json index 0e18e1d008f8..4d8f56039ebb 100644 --- a/packages/p2p/src/translations/ar.json +++ b/packages/p2p/src/translations/ar.json @@ -297,7 +297,6 @@ "-937707753": "ارجع", "-984140537": "أضف", "-1220275347": "يمكنك اختيار ما يصل إلى 3 طرق دفع لهذا الإعلان.", - "-871975082": "يمكنك إضافة ما يصل إلى 3 طرق دفع.", "-1340125291": "تم", "-510341549": "لقد استلمت أقل من المبلغ المتفق عليه.", "-650030360": "لقد دفعت أكثر من المبلغ المتفق عليه.", @@ -369,7 +368,6 @@ "-107996509": "أنت تقوم بتحرير إعلان لشراء <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "أنت تقوم بتحرير إعلان للشراء...", "-1396464057": "أنت تقوم بتحرير إعلان للبيع...", - "-1526367101": "لا توجد طرق دفع مطابقة.", "-372210670": "معدل (1 {{account_currency}})", "-1318334333": "قم بإلغاء التنشيط", "-1667041441": "معدل (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/bn.json b/packages/p2p/src/translations/bn.json index 728f4ca32247..d7d0d1234cbd 100644 --- a/packages/p2p/src/translations/bn.json +++ b/packages/p2p/src/translations/bn.json @@ -297,7 +297,6 @@ "-937707753": "ফিরে যাও", "-984140537": "যোগ করুন", "-1220275347": "আপনি এই বিজ্ঞাপনটির জন্য সর্বোচ্চ ৩টি মূল্যপরিশোধের পদ্ধতি বেছে নিতে পারেন।", - "-871975082": "আপনি 3 টি মূল্যপরিশোধের পদ্ধতি যোগ করতে পারেন।", "-1340125291": "সম্পন্ন", "-510341549": "আমি সম্মত পরিমাণের চেয়ে কম পেয়েছি।", "-650030360": "আমি সম্মত পরিমাণের চেয়েও বেশি টাকা দিয়েছি।", @@ -369,7 +368,6 @@ "-107996509": "আপনি <0>{{ target_amount }} : {{ target_currency }} কিনতে একটি বিজ্ঞাপন সম্পাদনা করছেন...", "-863580260": "আপনি কিনতে একটি বিজ্ঞাপন সম্পাদনা করছেন...", "-1396464057": "আপনি বিক্রি করার জন্য একটি বিজ্ঞাপন সম্পাদনা করছেন...", - "-1526367101": "কোন মেলানো পেমেন্ট পদ্ধতি নেই।", "-372210670": "হার (1 {{account_currency}})", "-1318334333": "নিষ্ক্রিয় করুন", "-1667041441": "হার (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/de.json b/packages/p2p/src/translations/de.json index 1069db910fb8..59c117480dad 100644 --- a/packages/p2p/src/translations/de.json +++ b/packages/p2p/src/translations/de.json @@ -297,7 +297,6 @@ "-937707753": "Geh zurück", "-984140537": "Hinzufügen", "-1220275347": "Sie können für diese Anzeige bis zu 3 Zahlungsmethoden wählen.", - "-871975082": "Sie können bis zu 3 Zahlungsarten hinzufügen.", "-1340125291": "Erledigt", "-510341549": "Ich habe weniger als den vereinbarten Betrag erhalten.", "-650030360": "Ich habe mehr als den vereinbarten Betrag bezahlt.", @@ -369,7 +368,6 @@ "-107996509": "Sie bearbeiten eine Anzeige, um <0>{{ target_amount }} {{ target_currency }} zu kaufen...", "-863580260": "Sie bearbeiten eine Anzeige, um zu kaufen...", "-1396464057": "Sie bearbeiten eine Anzeige, um zu verkaufen...", - "-1526367101": "Es gibt keine passenden Zahlungsarten.", "-372210670": "Bewerten (1 {{account_currency}})", "-1318334333": "Deaktiviere", "-1667041441": "Bewerten (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/es.json b/packages/p2p/src/translations/es.json index f45f816db46c..bfde9a9fe105 100644 --- a/packages/p2p/src/translations/es.json +++ b/packages/p2p/src/translations/es.json @@ -297,7 +297,6 @@ "-937707753": "Volver atrás", "-984140537": "Añadir", "-1220275347": "Puede elegir hasta 3 métodos de pago para este anuncio.", - "-871975082": "Puede añadir hasta 3 métodos de pago.", "-1340125291": "Finalizado", "-510341549": "He recibido menos de la cantidad acordada.", "-650030360": "He pagado más de la cantidad acordada.", @@ -369,7 +368,6 @@ "-107996509": "Está editando un anuncio para comprar <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "Está creando un anuncio para comprar...", "-1396464057": "Está editando un anuncio para vender...", - "-1526367101": "No hay métodos de pago coincidentes.", "-372210670": "Tasa (1 {{account_currency}})", "-1318334333": "Desactivar", "-1667041441": "Tasa (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/fr.json b/packages/p2p/src/translations/fr.json index e33c20e3c726..038af7fbc1aa 100644 --- a/packages/p2p/src/translations/fr.json +++ b/packages/p2p/src/translations/fr.json @@ -297,7 +297,6 @@ "-937707753": "Retour", "-984140537": "Ajouter", "-1220275347": "Vous pouvez choisir jusqu'à 3 méthodes de paiement pour cette annonce.", - "-871975082": "Vous pouvez ajouter jusqu'à 3 modes de paiement.", "-1340125291": "Terminé", "-510341549": "J'ai reçu moins que le montant convenu.", "-650030360": "J'ai payé plus que le montant convenu.", @@ -369,7 +368,6 @@ "-107996509": "Vous modifiez une annonce pour acheter <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "Vous modifiez une annonce pour acheter...", "-1396464057": "Vous modifiez une annonce pour vendre...", - "-1526367101": "Il n'y a pas de mode de paiement correspondant.", "-372210670": "Taux (1 {{account_currency}})", "-1318334333": "Désactiver", "-1667041441": "Taux (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/id.json b/packages/p2p/src/translations/id.json index 4e219786cde2..29116fc8b7d0 100644 --- a/packages/p2p/src/translations/id.json +++ b/packages/p2p/src/translations/id.json @@ -297,7 +297,6 @@ "-937707753": "Kembali", "-984140537": "Tambah", "-1220275347": "Anda dapat memilih hingga 3 metode pembayaran untuk iklan ini.", - "-871975082": "Anda dapat menambahkan hingga 3 metode pembayaran.", "-1340125291": "Selesai", "-510341549": "Dana yang saya terima kurang dari jumlah yang disepakati.", "-650030360": "Saya sudah membayar lebih dari jumlah yang disepakati.", @@ -369,7 +368,6 @@ "-107996509": "Anda mengedit iklan untuk membeli <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "Anda mengedit iklan untuk membeli...", "-1396464057": "Anda mengedit iklan untuk menjual...", - "-1526367101": "Tidak ada metode pembayaran yang cocok.", "-372210670": "Harga (1 {{account_currency}})", "-1318334333": "Menonaktifkan", "-1667041441": "Harga (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/it.json b/packages/p2p/src/translations/it.json index 9c9faa3d2b20..6dc9b5e609c1 100644 --- a/packages/p2p/src/translations/it.json +++ b/packages/p2p/src/translations/it.json @@ -297,7 +297,6 @@ "-937707753": "Torna indietro", "-984140537": "Aggiungi", "-1220275347": "Puoi scegliere fino a 3 modalità di pagamento per questo annuncio.", - "-871975082": "Può aggiungere fino a 3 metodi di pagamento.", "-1340125291": "Fatto", "-510341549": "Ho ricevuto un importo inferiore a quello stabilito.", "-650030360": "Ho pagato più dell'importo stabilito.", @@ -369,7 +368,6 @@ "-107996509": "Stai modificando un annuncio per acquistare <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "Stai modificando un annuncio per acquistare...", "-1396464057": "Stai modificando un annuncio per vendere...", - "-1526367101": "Non ci sono metodi di pagamento corrispondenti.", "-372210670": "Tasso (1 {{account_currency}})", "-1318334333": "Disattiva", "-1667041441": "Tasso (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/ko.json b/packages/p2p/src/translations/ko.json index c421f89fd935..843dadf442d6 100644 --- a/packages/p2p/src/translations/ko.json +++ b/packages/p2p/src/translations/ko.json @@ -297,7 +297,6 @@ "-937707753": "뒤로 가기", "-984140537": "추가", "-1220275347": "이 광고에는 최대 3개의 결제 방법을 선택할 수 있습니다.", - "-871975082": "결제 수단을 최대 3개까지 추가할 수 있습니다.", "-1340125291": "완료", "-510341549": "합의된 금액보다 적게 받았습니다.", "-650030360": "합의된 금액보다 더 많이 지불했습니다.", @@ -369,7 +368,6 @@ "-107996509": "구매를 위한 광고를 편집 중입니다. <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "구매를 위해 광고를 편집하고 계십니다...", "-1396464057": "판매하기 위해 광고를 편집하고 계시군요...", - "-1526367101": "일치하는 결제 수단이 없습니다.", "-372210670": "요금 (1 {{account_currency}})", "-1318334333": "비활성화", "-1667041441": "요금 (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/pl.json b/packages/p2p/src/translations/pl.json index caf7e088a624..d57f75514e68 100644 --- a/packages/p2p/src/translations/pl.json +++ b/packages/p2p/src/translations/pl.json @@ -297,7 +297,6 @@ "-937707753": "Wstecz", "-984140537": "Dodaj", "-1220275347": "Możesz wybrać do 3 metod płatności dla tego ogłoszenia.", - "-871975082": "Mogą Państwo dodać maksymalnie 3 metody płatności.", "-1340125291": "Gotowe", "-510341549": "Otrzymano mniejszą kwotę niż ustalono.", "-650030360": "Zapłacono więcej niż ustalona kwota.", @@ -369,7 +368,6 @@ "-107996509": "Edytujesz reklamę, aby kupić <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "Edytujesz reklamę, aby kupić...", "-1396464057": "Edytujesz reklamę, aby sprzedać...", - "-1526367101": "Nie ma pasujących metod płatności.", "-372210670": "Opłata (1 {{account_currency}})", "-1318334333": "Deaktywuj", "-1667041441": "Opłata (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/pt.json b/packages/p2p/src/translations/pt.json index d18761ebb561..0e0d05033da2 100644 --- a/packages/p2p/src/translations/pt.json +++ b/packages/p2p/src/translations/pt.json @@ -297,7 +297,6 @@ "-937707753": "Voltar", "-984140537": "Adicionar", "-1220275347": "Você pode escolher até 3 formas de pagamento para este anúncio.", - "-871975082": "Pode adicionar até 3 métodos de pagamento.", "-1340125291": "Concluído", "-510341549": "Eu recebi menos do que o valor combinado.", "-650030360": "Eu paguei mais do que o valor combinado.", @@ -369,7 +368,6 @@ "-107996509": "Você está editando um anúncio para comprar <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "Você está editando um anúncio para comprar...", "-1396464057": "Você está editando um anúncio para vender...", - "-1526367101": "Não existem métodos de pagamento correspondentes.", "-372210670": "Taxa (1 {{account_currency}})", "-1318334333": "Desativar", "-1667041441": "Taxa (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/ru.json b/packages/p2p/src/translations/ru.json index 1a4ad94d5983..7e4e60e38fb2 100644 --- a/packages/p2p/src/translations/ru.json +++ b/packages/p2p/src/translations/ru.json @@ -297,7 +297,6 @@ "-937707753": "Назад", "-984140537": "Добавить", "-1220275347": "Для этого объявления можно выбрать до 3 платежных методов.", - "-871975082": "Вы можете добавить до 3 способов оплаты.", "-1340125291": "Готово", "-510341549": "Я получил(а) меньше оговоренной суммы.", "-650030360": "Я заплатил(а) больше оговоренной суммы.", @@ -369,7 +368,6 @@ "-107996509": "Вы редактируете объявление о покупке <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "Вы редактируете объявление о покупке...", "-1396464057": "Вы редактируете объявление о продаже...", - "-1526367101": "Не существует подходящих способов оплаты.", "-372210670": "Курс (1 {{account_currency}})", "-1318334333": "Деактивировать", "-1667041441": "Курс (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/si.json b/packages/p2p/src/translations/si.json index 488eb1307149..84ae2573e849 100644 --- a/packages/p2p/src/translations/si.json +++ b/packages/p2p/src/translations/si.json @@ -297,7 +297,6 @@ "-937707753": "ආපසු යන්න", "-984140537": "එකතු කරන්න", "-1220275347": "මෙම දැන්වීම සඳහා ඔබට ගෙවීම් ක්රම 3 ක් දක්වා තෝරා ගත හැකිය.", - "-871975082": "ඔබට ගෙවීම් ක්රම 3 ක් දක්වා එකතු කළ හැකිය.", "-1340125291": "සිදු කළා", "-510341549": "මට එකඟ වූ මුදලට වඩා අඩු මුදලක් ලැබී ඇත.", "-650030360": "මම එකඟ වූ මුදලට වඩා වැඩි මුදලක් ගෙවා ඇත.", @@ -369,7 +368,6 @@ "-107996509": "ඔබ <0>{{ target_amount }} {{ target_currency }} මිලදී ගැනීම සඳහා දැන්වීමක් සංස්කරණය කරයි...", "-863580260": "ඔබ මිලදී ගැනීම සඳහා දැන්වීමක් සංස්කරණය කරයි...", "-1396464057": "ඔබ විකිණීම සඳහා දැන්වීමක් සංස්කරණය කරයි...", - "-1526367101": "ගැලපෙන ගෙවීම් ක්රම නොමැත.", "-372210670": "අනුපාතය (1 {{account_currency}})", "-1318334333": "අක්‍රිය කරන්න", "-1667041441": "අනුපාතය (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/th.json b/packages/p2p/src/translations/th.json index 3eac4fa6dace..62c483a146e3 100644 --- a/packages/p2p/src/translations/th.json +++ b/packages/p2p/src/translations/th.json @@ -297,7 +297,6 @@ "-937707753": "ย้อนกลับไป", "-984140537": "เพิ่ม", "-1220275347": "คุณสามารถเลือกวิธีการชำระเงินได้ถึง 3 วิธีสำหรับโฆษณานี้", - "-871975082": "คุณสามารถเพิ่มวิธีการชำระเงินได้สูงสุด 3 วิธี", "-1340125291": "เสร็จสิ้นแล้ว", "-510341549": "ฉันได้รับจำนวนเงินน้อยกว่าที่ตกลงกัน", "-650030360": "ฉันจ่ายเงินเกินกว่าจำนวนเงินที่ตกลงกัน", @@ -369,7 +368,6 @@ "-107996509": "คุณกำลังแก้ไขโฆษณาเพื่อซื้อ <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "คุณกำลังแก้ไขโฆษณาเพื่อซื้อ...", "-1396464057": "คุณกำลังแก้ไขโฆษณาเพื่อขาย...", - "-1526367101": "ไม่มีวิธีการชำระเงินที่ตรงกัน", "-372210670": "อัตรา (1 {{account_currency}})", "-1318334333": "ปิดใช้งาน", "-1667041441": "อัตรา (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/tr.json b/packages/p2p/src/translations/tr.json index 9ba1bac14932..37f888c791bc 100644 --- a/packages/p2p/src/translations/tr.json +++ b/packages/p2p/src/translations/tr.json @@ -297,7 +297,6 @@ "-937707753": "Geri dön", "-984140537": "Ekle", "-1220275347": "Bu ilan için en fazla 3 ödeme yöntemi seçebilirsiniz.", - "-871975082": "En fazla 3 ödeme yöntemi ekleyebilirsiniz.", "-1340125291": "Bitti", "-510341549": "Kabul edilen tutardan daha azını aldım.", "-650030360": "Kabul edilen tutardan daha fazla para ödedim.", @@ -369,7 +368,6 @@ "-107996509": "<0>{{ target_amount }} {{ target_currency }} satın almak için bir ilan oluşturuyorsunuz...", "-863580260": "Satın almak için bir ilan oluşturuyorsunuz...", "-1396464057": "Satmak için bir ilan oluşturuyorsunuz...", - "-1526367101": "Eşleşen ödeme yöntemi bulunmamaktadır.", "-372210670": "Oran (1 {{account_currency}})", "-1318334333": "Devre dışı bırak", "-1667041441": "Oran (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/vi.json b/packages/p2p/src/translations/vi.json index ccc2ed5c6158..955d86c79292 100644 --- a/packages/p2p/src/translations/vi.json +++ b/packages/p2p/src/translations/vi.json @@ -297,7 +297,6 @@ "-937707753": "Quay lại", "-984140537": "Thêm", "-1220275347": "Bạn có thể chọn tối đa 3 phương thức thanh toán cho quảng cáo này.", - "-871975082": "Bạn có thể thêm tối đa 3 phương thức thanh toán.", "-1340125291": "Hoàn tất", "-510341549": "Tôi đã nhận được ít hơn khoản thỏa thuận.", "-650030360": "Tôi đã trả nhiều hơn khoản thỏa thuận.", @@ -369,7 +368,6 @@ "-107996509": "Bạn đang chỉnh sửa một quảng cáo để mua <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "Bạn đang chỉnh sửa một quảng cáo để mua...", "-1396464057": "Bạn đang chỉnh sửa một quảng cáo để bán...", - "-1526367101": "Không có phương thức thanh toán phù hợp.", "-372210670": "Tỷ giá (1 {{account_currency}})", "-1318334333": "Hủy tài khoản", "-1667041441": "Tỷ lệ (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/zh_cn.json b/packages/p2p/src/translations/zh_cn.json index a3fa91de91f0..57cbe019fffa 100644 --- a/packages/p2p/src/translations/zh_cn.json +++ b/packages/p2p/src/translations/zh_cn.json @@ -297,7 +297,6 @@ "-937707753": "返回", "-984140537": "添加", "-1220275347": "此广告有多达 3 种付款方式供选择。", - "-871975082": "您最多可添加 3 种付款方式。", "-1340125291": "完成", "-510341549": "我收到的金额比约定的金额更小。", "-650030360": "我支付的金额比约定的金额更大。", @@ -369,7 +368,6 @@ "-107996509": "您正在编辑广告以买入<0>{{ target_amount }} {{ target_currency }}...", "-863580260": "您正在编辑广告以买入...", "-1396464057": "您正在编辑广告以卖出...", - "-1526367101": "没有匹配的付款方式。", "-372210670": "费率 (1 {{account_currency}})", "-1318334333": "停用", "-1667041441": "费率 (1 {{ offered_currency }})", diff --git a/packages/p2p/src/translations/zh_tw.json b/packages/p2p/src/translations/zh_tw.json index 1e8543c40502..d9a1b2f7ef57 100644 --- a/packages/p2p/src/translations/zh_tw.json +++ b/packages/p2p/src/translations/zh_tw.json @@ -297,7 +297,6 @@ "-937707753": "返回", "-984140537": "新增", "-1220275347": "此廣告有多達 3 種付款方式供選擇。", - "-871975082": "您最多可以添加 3 種付款方式。", "-1340125291": "完成", "-510341549": "我收到的金額比約定的金額更小。", "-650030360": "我支付的金額比約定的金額更大。", @@ -369,7 +368,6 @@ "-107996509": "您正在編輯廣告以買入 <0>{{ target_amount }} {{ target_currency }}...", "-863580260": "您正在編輯廣告以買入...", "-1396464057": "您正在編輯廣告以賣出...", - "-1526367101": "沒有匹配的付款方式。", "-372210670": "費率 (1 {{account_currency}})", "-1318334333": "停用", "-1667041441": "費率 (1 {{ offered_currency }})", diff --git a/packages/translations/crowdin/messages.json b/packages/translations/crowdin/messages.json index d06b35c910e5..0c9043ec91e0 100644 --- a/packages/translations/crowdin/messages.json +++ b/packages/translations/crowdin/messages.json @@ -1 +1 @@ -{"0":"","1014140":"You may also call <0>+447723580049 to place your complaint.","1485191":"1:1000","2091451":"Deriv Bot - your automated trading partner","3125515":"Your Deriv MT5 password is for logging in to your Deriv MT5 accounts on the desktop, web, and mobile apps.","3215342":"Last 30 days","3420069":"To avoid delays, enter your <0>name and <0>date of birth exactly as they appear on your identity document.","7100308":"Hour must be between 0 and 23.","9488203":"Deriv Bot is a web-based strategy builder for trading digital options. It’s a platform where you can build your own automated trading bot using drag-and-drop 'blocks'.","11539750":"set {{ variable }} to Relative Strength Index Array {{ dummy }}","11872052":"Yes, I'll come back later","14365404":"Request failed for: {{ message_type }}, retrying in {{ delay }}s","15377251":"Profit amount: {{profit}}","17843034":"Check proof of identity document verification status","19424289":"Username","19552684":"USD Basket","21035405":"Please tell us why you’re leaving. (Select up to {{ allowed_reasons }} reasons.)","24900606":"Gold Basket","25854018":"This block displays messages in the developer’s console with an input that can be either a string of text, a number, boolean, or an array of data.","26566655":"Summary","26596220":"Finance","27582767":"{{amount}} {{currency}}","27731356":"Your account is temporarily disabled. Please contact us via <0>live chat to enable deposits and withdrawals again.","27830635":"Deriv (V) Ltd","28581045":"Add a real MT5 account","30801950":"Your account will be opened with {{legal_entity_name}}, regulated by the Malta Gaming Authority, and will be subject to the laws of Malta.","33433576":"Please use an e-wallet to withdraw your funds.","35089987":"Upload the front and back of your driving licence.","41737927":"Thank you","44877997":"Residence permit","45453595":"Binary Coin","45941470":"Where would you like to start?","46523711":"Your proof of identity is verified","49404821":"If you buy a \"<0>{{trade_type}}\" option, you receive a payout at expiry if the final price is {{payout_status}} the strike price. Otherwise, your “<0>{{trade_type}}” option will expire worthless.","50200731":"FX majors (standard/micro lots), FX minors, basket indices, commodities, and cryptocurrencies","53801223":"Hong Kong 50","53964766":"5. Hit Save to download your bot. You can choose to download your bot to your device or your Google Drive.","54185751":"Less than $100,000","55340304":"Keep your current contract?","55916349":"All","56764670":"Deriv Bot will not proceed with any new trades. Any ongoing trades will be completed by our system. Any unsaved changes will be lost.<0>Note: Please check your statement to view completed transactions.","58254854":"Scopes","59169515":"If you select \"Asian Rise\", you will win the payout if the last tick is higher than the average of the ticks.","59341501":"Unrecognized file format","59662816":"Stated limits are subject to change without prior notice.","62748351":"List Length","63869411":"This block tests a given number according to the selection","64402604":"Check transfer information","65185694":"Fiat onramp","65982042":"Total","66519591":"Investor password","67923436":"No, Deriv Bot will stop running when your web browser is closed.","68885999":"Repeats the previous trade when an error is encountered.","69005593":"The example below restarts trading after 30 or more seconds after 1 minute candle was started.","71016232":"OMG/USD","71445658":"Open","71563326":"A fast and secure fiat-to-crypto payment service. Deposit cryptocurrencies from anywhere in the world using your credit/debit cards and bank transfers.","71853457":"$100,001 - $500,000","72500774":"Please fill in Tax residence.","73086872":"You have self-excluded from trading","73326375":"The low is the lowest point ever reached by the market during the contract period.","74963864":"Under","76916358":"You have reached the withdrawal limit.<0/>Please upload your proof of identity and address to lift the limit to continue your withdrawal.","76925355":"Check your bot’s performance","77945356":"Trade on the go with our mobile app.","77982950":"Vanilla options allow you to predict an upward (bullish) or downward (bearish) direction of the underlying asset by purchasing a \"Call\" or a \"Put\".","81450871":"We couldn’t find that page","82839270":"Upload the page of your passport that contains your photo.","83202647":"Collapse Block","84402478":"Where do I find the blocks I need?","85343079":"Financial assessment","85359122":"40 or more","85389154":"Steps required to continue verification on your mobile","89062902":"Trade on MT5","90266322":"2. Start a chat with your newly created Telegram bot and make sure to send it some messages before proceeding to the next step. (e.g. Hello Bot!)","91993812":"The Martingale Strategy is a classic trading technique that has been used for more than a hundred years, popularised by the French mathematician Paul Pierre Levy in the 18th century.","93154671":"1. Hit Reset at the bottom of stats panel.","96381225":"ID verification failed","98473502":"We’re not obliged to conduct an appropriateness test, nor provide you with any risk warnings.","98972777":"random item","100239694":"Upload front of card from your computer","102226908":"Field cannot be empty","108916570":"Duration: {{duration}} days","109073671":"Please use an e-wallet that you have used for deposits previously. Ensure the e-wallet supports withdrawal. See the list of e-wallets that support withdrawals <0>here.","111215238":"Move away from direct light","111718006":"End date","111931529":"Max. total stake over 7 days","113378532":"ETH/USD","115032488":"Buy price and P/L","116005488":"Indicators","117056711":"We’re updating our site","117318539":"Password should have lower and uppercase English letters with numbers.","118158064":"2. Use a logic block to check if current profit/loss exceeds maximum loss. If it does, set trade again to false to prevent the bot from running another cycle.","118586231":"Document number (identity card, passport)","119261701":"Prediction:","119446122":"Contract type is not selected","120340777":"Complete your personal details","123454801":"{{withdraw_amount}} {{currency_symbol}}","124723298":"Upload a proof of address to verify your address","125443840":"6. Restart last trade on error","127307725":"A politically exposed person (PEP) is someone appointed with a prominent public position. Close associates and family members of a PEP are also considered to be PEPs.","129729742":"Tax Identification Number*","130567238":"THEN","132596476":"In providing our services to you, we are required to ask you for some information to assess if a given product or service is appropriate for you and whether you have the experience and knowledge to understand the risks involved.<0/><0/>","132689841":"Trade on web terminal","133284316":"Supported formats: JPEG, JPG, PNG, PDF and GIF only","133523018":"Please go to the Deposit page to get an address.","133536621":"and","133655768":"Note: If you wish to learn more about the Bot Builder, you can proceed to the <0>Tutorials tab.","139454343":"Confirm my limits","141265840":"Funds transfer information","141626595":"Make sure your device has a working camera","142050447":"set {{ variable }} to create text with","142390699":"Connected to your mobile","143970826":"Payment problems?","145146541":"Our accounts and services are unavailable for the Jersey postal code","145736466":"Take a selfie","149616444":"cTrader Demo","150486954":"Token name","151344063":"The exit spot is the market price when the contract is closed.","151646545":"Unable to read file {{name}}","152415091":"Math","152524253":"Trade the world’s markets with our popular user-friendly platform.","154545319":"Country of residence is where you currently live.","157593038":"random integer from {{ start_number }} to {{ end_number }}","157871994":"Link expired","158355408":"Some services may be temporarily unavailable.","160746023":"Tether as an Omni token (USDT) is a version of Tether that is hosted on the Omni layer on the Bitcoin blockchain.","160863687":"Camera not detected","164112826":"This block allows you to load blocks from a URL if you have them stored on a remote server, and they will be loaded only when your bot runs.","164564432":"Deposits are temporarily unavailable due to system maintenance. You can make your deposits when the maintenance is complete.","165294347":"Please set your country of residence in your account settings to access the cashier.","165312615":"Continue on phone","165682516":"If you don’t mind sharing, which other trading platforms do you use?","170185684":"Ignore","170244199":"I’m closing my account for other reasons.","171307423":"Recovery","171579918":"Go to Self-exclusion","171638706":"Variables","173991459":"We’re sending your request to the blockchain.","174793462":"Strike","176078831":"Added","176319758":"Max. total stake over 30 days","176327749":"- Android: Tap the account, open <0>Options, and tap <0>Delete.","176654019":"$100,000 - $250,000","177099483":"Your address verification is pending, and we’ve placed some restrictions on your account. The restrictions will be lifted once your address is verified.","178413314":"First name should be between 2 and 50 characters.","179083332":"Date","179737767":"Our legacy options trading platform.","181346014":"Notes ","181881956":"Contract Type: {{ contract_type }}","184024288":"lower case","189705706":"This block uses the variable \"i\" to control the iterations. With each iteration, the value of \"i\" is determined by the items in a given list.","189759358":"Creates a list by repeating a given item","190834737":"Guide","191372501":"Accumulation of Income/Savings","192436105":"No need for symbols, digits, or uppercase letters","192573933":"Verification complete","195972178":"Get character","196810983":"If the duration is more than 24 hours, the Cut-off time and Expiry date will apply instead.","196998347":"We hold customer funds in bank accounts separate from our operational accounts which would not, in the event of insolvency, form part of the company's assets. This meets the <0>Gambling Commission's requirements for the segregation of customer funds at the level: <1>medium protection.","197190401":"Expiry date","201091938":"30 days","203108063":"Congratulations, you have successfully created your {{category}} <0>{{platform}} <1>{{type}} account. ","203179929":"<0>You can open this account once your submitted documents have been verified.","203271702":"Try again","203297887":"The Quick Strategy you just created will be loaded to the workspace.","203924654":"Hit the <0>Start button to begin and follow the tutorial.","204797764":"Transfer to client","204863103":"Exit time","206010672":"Delete {{ delete_count }} Blocks","207824122":"Please withdraw your funds from the following Deriv account(s):","209533725":"You’ve transferred {{amount}} {{currency}}","210385770":"If you have an active account, please log in to continue. Otherwise, please sign up.","211224838":"Investment","211461880":"Common names and surnames are easy to guess","211847965":"Your <0>personal details are incomplete. Please go to your account settings and complete your personal details to enable withdrawals.","216650710":"You are using a demo account","217403651":"St. Vincent & Grenadines","217504255":"Financial assessment submitted successfully","218441288":"Identity card number","220014242":"Upload a selfie from your computer","220019594":"Need more help? Contact us through live chat for assistance.","220186645":"Text Is empty","220232017":"demo CFDs","221261209":"A Deriv account will allow you to fund (and withdraw from) your CFDs account(s).","223120514":"In this example, each point of the SMA line is an arithmetic average of close prices for the last 50 days.","223607908":"Last digit stats for latest 1000 ticks for {{underlying_name}}","224650827":"IOT/USD","224929714":"Virtual events based bets in the UK and the Isle of Man are offered by {{legal_entity_name}}, Millennium House, Level 1, Victoria Road, Douglas IM2 4RW, Isle of Man, licensed and regulated in Great Britain by the Gambling Commission under <0>account no. 39172 and by the Gambling Supervision Commission in the Isle of Man (<1>view licence).","225887649":"This block is mandatory. It's added to your strategy by default when you create new strategy. You can not add more than one copy of this block to the canvas.","227591929":"To timestamp {{ input_datetime }} {{ dummy }}","227903202":"We’ll charge a 1% transfer fee for transfers in different currencies between your Deriv fiat and {{platform_name_mt5}} accounts.","228521812":"Tests whether a string of text is empty. Returns a boolean value (true or false).","229355215":"Trade on {{platform_name_dbot}}","233500222":"- High: the highest price","235583807":"SMA is a frequently used indicator in technical analysis. It calculates the average market price over a specified period, and is usually used to identify market trend direction: up or down. For example, if the SMA is moving upwards, it means the market trend is up. ","236642001":"Journal","238496287":"Leverage trading is high-risk, so it's a good idea to use risk management features such as stop loss. Stop loss allows you to","243537306":"1. Under the Blocks menu, go to Utility > Variables.","243614144":"This is only available for existing clients.","245005091":"lower","245187862":"The DRC will make a <0>decision on the complaint (please note that the DRC mentions no timeframe for announcing its decision).","245812353":"if {{ condition }} return {{ value }}","246428134":"Step-by-step guides","247418415":"Gaming trading can become a real addiction, as can any other activity pushed to its limits. To avoid the danger of such an addiction, we provide a reality-check that gives you a summary of your trades and accounts on a regular basis.","248153700":"Reset your password","248565468":"Check your {{ identifier_title }} account email and click the link in the email to proceed.","248909149":"Send a secure link to your phone","251134918":"Account Information","251322536":"Deriv EZ accounts","251445658":"Dark theme","251882697":"Thank you! Your response has been recorded into our system.<0/><0/>Please click ‘OK’ to continue.","254912581":"This block is similar to EMA, except that it gives you the entire EMA line based on the input list and the given period.","256031314":"Cash Business","256602726":"If you close your account:","258448370":"MT5","258912192":"Trading assessment","260069181":"An error occured while trying to load the URL","260086036":"Place blocks here to perform tasks once when your bot starts running.","260361841":"Tax Identification Number can't be longer than 25 characters.","261074187":"4. Once the blocks are loaded onto the workspace, tweak the parameters if you want, or hit Run to start trading.","261250441":"Drag the <0>Trade again block and add it into the <0>do part of the <0>Repeat until block.","262095250":"If you select <0>\"Put\", you’ll earn a payout if the final price is below the strike price at expiry. Otherwise, you won’t receive a payout.","264976398":"3. 'Error' displays a message in red to highlight something that needs to be resolved immediately.","265644304":"Trade types","267992618":"The platforms lack key features or functionality.","268940240":"Your balance ({{format_balance}} {{currency}}) is less than the current minimum withdrawal allowed ({{format_min_withdraw_amount}} {{currency}}). Please top up your account to continue with your withdrawal.","269322978":"Deposit with your local currency via peer-to-peer exchange with fellow traders in your country.","269607721":"Upload","270339490":"If you select \"Over\", you will win the payout if the last digit of the last tick is greater than your prediction.","270610771":"In this example, the open price of a candle is assigned to the variable \"candle_open_price\".","270712176":"descending","270780527":"You've reached the limit for uploading your documents.","272042258":"When you set your limits, they will be aggregated across all your account types in {{platform_name_trader}}, {{platform_name_dbot}}, {{platform_name_smarttrader}} and {{platform_name_bbot}} on Deriv. For example, the losses made on all four platforms will add up and be counted towards the loss limit you set.","272179372":"This block is commonly used to adjust the parameters of your next trade and to implement stop loss/take profit logic.","273350342":"Copy and paste the token into the app.","273728315":"Should not be 0 or empty","274268819":"Volatility 100 Index","275116637":"Deriv X","277469417":"Exclude time cannot be for more than five years.","278684544":"get sub-list from # from end","280021988":"Use these shortcuts","282319001":"Check your image","282564053":"Next, we'll need your proof of address.","283830551":"Your address doesn’t match your profile","283986166":"Self-exclusion on the website only applies to your {{brand_website_name}} account and does not include other companies or websites.","284527272":"antimode","284772879":"Contract","284809500":"Financial Demo","287934290":"Are you sure you want to cancel this transaction?","289898640":"TERMS OF USE","291744889":"<0>1. Trade parameters:<0>","291817757":"Go to our Deriv community and learn about APIs, API tokens, ways to use Deriv APIs, and more.","292491635":"If you select “Stop loss” and specify an amount to limit your loss, your position will be closed automatically when your loss is more than or equals to this amount. Your loss may be more than the amount you entered depending on the market price at closing.","292526130":"Tick and candle analysis","292589175":"This will display the SMA for the specified period, using a candle list.","292887559":"Transfer to {{selected_value}} is not allowed, Please choose another account from dropdown","294305803":"Manage account settings","294335229":"Sell at market price","295173783":"Long/Short","301441673":"Select your citizenship/nationality as it appears on your passport or other government-issued ID.","303959005":"Sell Price:","304309961":"We're reviewing your withdrawal request. You may still cancel this transaction if you wish. Once we start processing, you won't be able to cancel.","310234308":"Close all your positions.","312142140":"Save new limits?","312300092":"Trims the spaces within a given string or text.","313298169":"Our cashier is temporarily down due to system maintenance. You can access the Cashier in a few minutes when the maintenance is complete.","313741895":"This block returns “True” if the last candle is black. It can be placed anywhere on the canvas except within the Trade parameters root block.","315306603":"You have an account that do not have currency assigned. Please choose a currency to trade with this account.","316694303":"Is candle black?","318865860":"close","318984807":"This block repeats the instructions contained within for a specific number of times.","321457615":"Oops, something went wrong!","323179846":"The time interval for each candle can be set from one minute to one day.","323209316":"Select a Deriv Bot Strategy","323360883":"Baskets","325662004":"Expand Block","325763347":"result","326770937":"Withdraw {{currency}} ({{currency_symbol}}) to your wallet","327534692":"Duration value is not allowed. To run the bot, please enter {{min}}.","328539132":"Repeats inside instructions specified number of times","329353047":"Malta Financial Services Authority (MFSA) (licence no. IS/70156)","329404045":"<0>Switch to your real account<1> to create a {{platform}} {{account_title}} account.","333121115":"Select Deriv MT5's account type","333456603":"Withdrawal limits","333807745":"Click on the block you want to remove and press Delete on your keyboard.","334680754":"Switch to your real account to create a Deriv MT5 account","334942497":"Buy time","335040248":"About us","337023006":"Start time cannot be in the past.","339449279":"Remaining time","339610914":"Spread Up/Spread Down","339879944":"GBP/USD","340807218":"Description not found.","342181776":"Cancel transaction","343873723":"This block displays a message. You can specify the color of the message and choose from 6 different sound options.","344418897":"These trading limits and self-exclusion help you control the amount of money and time you spend on {{brand_website_name}} and exercise <0>responsible trading.","345320063":"Invalid timestamp","345818851":"Sorry, an internal error occurred. Hit the above checkbox to try again.","347029309":"Forex: standard/micro","347039138":"Iterate (2)","347217485":"Trouble accessing Deriv MT5 on your mobile?","348951052":"Your cashier is currently locked","349047911":"Over","349110642":"<0>{{payment_agent}}<1>'s contact details","350602311":"Stats show the history of consecutive tick counts, i.e. the number of ticks the price remained within range continuously.","351744408":"Tests if a given text string is empty","352363702":"You may see links to websites with a fake Deriv login page where you’ll get scammed for your money.","353731490":"Job done","354945172":"Submit document","357477280":"No face found","359053005":"Please enter a token name.","359649435":"Given candle list is not valid","359809970":"This block gives you the selected candle value from a list of candles within the selected time interval. You can choose from open price, close price, high price, low price, and open time.","360224937":"Logic","360773403":"Bot Builder","362946954":"Our legacy automated trading platform.","363576009":"- High price: the highest price","363738790":"Browser","363990763":"Sell price:","367801124":"Total assets in your Deriv accounts.","368160866":"in list","369035361":"<0>•Your account number","371151609":"Last used","371710104":"This scope will allow third-party apps to buy and sell contracts for you, renew your expired purchases, and top up your demo accounts.","372291654":"Exclude time must be after today.","372645383":"True if the market direction matches the selection","373021397":"random","373306660":"{{label}} is required.","373495360":"This block returns the entire SMA line, containing a list of all values for a given period.","374537470":"No results for \"{{text}}\"","375714803":"Deal Cancellation Error","377231893":"Deriv Bot is unavailable in the EU","379523479":"To avoid loss of funds, do not share tokens with the Admin scope with unauthorised parties.","380606668":"tick","380694312":"Maximum consecutive trades","384303768":"This block returns \"True\" if the last candle is black. It can be placed anywhere on the canvas except within the Trade parameters root block.","386191140":"You can choose between CFD trading accounts or Options and Multipliers accounts","386278304":"Install the {{platform_name_trader}} web app","386502387":"Bot is not running","389923099":"Zoom in","390647540":"Real account","390890891":"Last quarter","391915203":"Hedging","392582370":"Fall Equals","393789743":"Letters, spaces, periods, hyphens, apostrophes only.","396418990":"Offline","396801529":"To start trading, top-up funds from your Deriv account into this account.","398816980":"Launch {{platform_name_trader}} in seconds the next time you want to trade.","401339495":"Verify address","401345454":"Head to the Tutorials tab to do so.","402343402":"Due to an issue on our server, some of your {{platform}} accounts are unavailable at the moment. Please bear with us and thank you for your patience.","403456289":"The formula for SMA is:","404743411":"Total deposits","406359555":"Contract details","406497323":"Sell your active contract if needed (optional)","411482865":"Add {{deriv_account}} account","412433839":"I agree to the <0>terms and conditions.","413594348":"Only letters, numbers, space, hyphen, period, and forward slash are allowed.","417714706":"If your margin level drops below our stop out level, your positions may be closed automatically to protect you from further losses.","417864079":"You’ll not be able to change currency once you have made a deposit.","418265501":"Demo Derived","419485005":"Spot","419496000":"Your contract is closed automatically when your profit is more than or equals to this amount. This block can only be used with the multipliers trade type.","420072489":"CFD trading frequency","422055502":"From","424272085":"We take your financial well-being seriously and want to ensure you are fully aware of the risks before trading.<0/><0/>","424897068":"Do you understand that you could potentially lose 100% of the money you use to trade?","426031496":"Stop","427134581":"Try using another file type.","427617266":"Bitcoin","428709688":"Your preferred time interval between each report:","431267979":"Here’s a quick guide on how to use Deriv Bot on the go.","432273174":"1:100","432508385":"Take Profit: {{ currency }} {{ take_profit }}","432519573":"Document uploaded","433348384":"Real accounts are not available to politically exposed persons (PEPs).","433616983":"2. Investigation phase","434548438":"Highlight function definition","434896834":"Custom functions","436364528":"Your account will be opened with {{legal_entity_name}}, and will be subject to the laws of Saint Vincent and the Grenadines.","436534334":"<0>We've sent you an email.","437138731":"Create a new {{platform}} password","437453244":"Choose your preferred cryptocurrency","437485293":"File type not supported","437904704":"Maximum open positions","438067535":"Over $500,000","439398769":"This strategy is currently not compatible with Deriv Bot.","442520703":"$250,001 - $500,000","443203714":"Your contract will be closed automatically if your loss reaches this amount.","443559872":"Financial SVG","444484637":"Logic negation","445419365":"1 - 2 years","450983288":"Your deposit is unsuccessful due to an error on the blockchain. Please contact your crypto wallet service provider for more info.","451852761":"Continue on your phone","452054360":"Similar to RSI, this block gives you a list of values for each entry in the input list.","453175851":"Your MT5 Financial STP account will be opened through {{legal_entity_name}}. All trading in this account is subject to the regulations and guidelines of the Labuan Financial Service Authority (LFSA). None of your other accounts, including your Deriv account, is subject to the regulations and guidelines of the Labuan Financial Service Authority (LFSA).","453409608":"Your profit is the percentage change in market price times your stake and the multiplier of your choice.","454196938":"Regulation:","456746157":"Grant access to your camera from your browser settings","457020083":"It’ll take longer to verify you if we can’t read it","457494524":"1. From the block library, enter a name for the new variable and click Create.","459612953":"Select account","459817765":"Pending","460070238":"Congratulations","460975214":"Complete your Appropriateness Test","461795838":"Please contact us via live chat to unlock it.","462079779":"Resale not offered","463361726":"Select an item","465993338":"Oscar's Grind","466369320":"Your gross profit is the percentage change in market price times your stake and the multiplier chosen here.","466837068":"Yes, increase my limits","467839232":"I trade forex CFDs and other complex financial instruments regularly on other platforms.","473154195":"Settings","474306498":"We’re sorry to see you leave. Your account is now closed.","475492878":"Try Synthetic Indices","476023405":"Didn't receive the email?","477557241":"Remote blocks to load must be a collection.","478280278":"This block displays a dialog box that uses a customised message to prompt for an input. The input can be either a string of text or a number and can be assigned to a variable. When the dialog box is displayed, your strategy is paused and will only resume after you enter a response and click \"OK\".","479420576":"Tertiary","480356486":"*Boom 300 and Crash 300 Index","481276888":"Goes Outside","483279638":"Assessment Completed<0/><0/>","483551811":"Your <0>payout is the sum of your inital stake and profit.","483591040":"Delete all {{ delete_count }} blocks?","485379166":"View transactions","487239607":"Converts a given True or False to the opposite value","488150742":"Resend email","489768502":"Change investor password","491603904":"Unsupported browser","492198410":"Make sure everything is clear","492566838":"Taxpayer identification number","497518317":"Function that returns a value","498562439":"or","499522484":"1. for \"string\": 1325.68 USD","500215405":"Server maintenance starts at 01:00 GMT every Sunday and may last up to 2 hours. You may experience service disruption during this time.","500855527":"Chief Executives, Senior Officials and Legislators","500920471":"This block performs arithmetic operations between two numbers.","501401157":"You are only allowed to make deposits","501537611":"*Maximum number of open positions","502007051":"Demo Swap-Free SVG","502041595":"This block gives you a specific candle from within the selected time interval.","503137339":"Payout limit","505793554":"last letter","508390614":"Demo Financial STP","510815408":"Letters, numbers, spaces, hyphens only","511679687":"Accumulators allow you to express a view on the range of movement of an index and grow your stake exponentially at a fixed <0>growth rate.","514031715":"list {{ input_list }} is empty","514776243":"Your {{account_type}} password has been changed.","514948272":"Copy link","518955798":"7. Run Once at Start","520136698":"Boom 500 Index","521872670":"item","522283618":"Digital options trading experience","522703281":"divisible by","523123321":"- 10 to the power of a given number","524459540":"How do I create variables?","527329988":"This is a top-100 common password","529056539":"Options","530953413":"Authorised applications","531114081":"3. Contract Type","531675669":"Euro","535041346":"Max. total stake per day","537788407":"Other CFDs Platform","538017420":"0.5 pips","541650045":"Manage {{platform}} password","541700024":"First, enter your driving licence number and the expiry date.","542038694":"Only letters, numbers, space, underscore, and hyphen are allowed for {{label}}.","542305026":"You must also submit a proof of identity.","543413346":"You have no open positions for this asset. To view other open positions, click Go to Reports","543915570":"Forex, stocks, stock indices, cryptocurrencies, synthetic indices","545476424":"Total withdrawals","549479175":"Deriv Multipliers","550589723":"Your stake will grow at {{growth_rate}}% per tick as long as the current spot price remains within ±{{tick_size_barrier}} from the previous spot price.","551569133":"Learn more about trading limits","554135844":"Edit","554410233":"This is a top-10 common password","555351771":"After defining trade parameters and trade options, you may want to instruct your bot to purchase contracts when specific conditions are met. To do that you can use conditional blocks and indicators blocks to help your bot to make decisions.","555881991":"National Identity Number Slip","556264438":"Time interval","558262475":"On your MT5 mobile app, delete your existing Deriv account:","558866810":"Run your bot","559224320":"Our classic “drag-and-drop” tool for creating trading bots, featuring pop-up trading charts, for advanced users.","561982839":"Change your currency","562599414":"This block returns the purchase price for the selected trade type. This block can be used only in the \"Purchase conditions\" root block.","563034502":"We shall try to resolve your complaint within 15 business days. We will inform you of the outcome together with an explanation of our position and propose any remedial measures we intend to take.","563166122":"We shall acknowledge receiving your complaint, review it carefully, and keep you updated on the handling process. We might request further information or clarifications to facilitate the resolution of the complaint.","563652273":"Go to block","565410797":"The below image illustrates how Simple Moving Average Array block works:","566274201":"1. Market","567019968":"A variable is among the most important and powerful components in creating a bot. It is a way to store information, either as text or numbers. The information stored as a variable can be used and changed according to the given instructions. Variables can be given any name, but usually they are given useful, symbolic names so that it is easier to call them during the execution of instructions.","567163880":"Create a {{platform}} password","567755787":"Tax Identification Number is required.","569057236":"In which country was your document issued?","571921777":"Funds protection level","572576218":"Languages","573173477":"Is candle {{ input_candle }} black?","575702000":"Remember, selfies, pictures of houses, or non-related images will be rejected.","576355707":"Select your country and citizenship:","577215477":"count with {{ variable }} from {{ start_number }} to {{ end_number }} by {{ step_size }}","577779861":"Withdrawal","577883523":"4. Awards and orders","578640761":"Call Spread","579529868":"Show all details — including the bottom 2 lines","580431127":"Restart buy/sell on error (disable for better performance): {{ checkbox }}","580665362":"Stays In/Goes Out","580774080":"insert at","581168980":"Legal","582945649":"2 minutes","584028307":"Allow equals","587577425":"Secure my account","587856857":"Want to know more about APIs?","588609216":"Repeat tour","592087722":"Employment status is required.","593459109":"Try a different currency","594937260":"Derived - BVI","595080994":"Example: CR123456789","595136687":"Save Strategy","597089493":"Here is where you can decide to sell your contract before it expires. Only one copy of this block is allowed.","597481571":"DISCLAIMER","597707115":"Tell us about your trading experience.","599469202":"{{secondPast}}s ago","602278674":"Verify identity","603849445":"Strike price","603849863":"Look for the <0>Repeat While/Until, and click the + icon to add the block to the workspace area.","603899222":"Distance to current spot","606240547":"- Natural log","606877840":"Back to today","607807243":"Get candle","609519227":"This is the email address associated with your Deriv account.","609650241":"Infinite loop detected","610537973":"Any information you provide is confidential and will be used for verification purposes only.","611020126":"View address on Blockchain","611786123":"FX-majors (standard/micro lots), FX-minors, Commodities, Cryptocurrencies, Stocks, and Stock Indices","617345387":"If you select \"Reset-Up”, you win the payout if the exit spot is strictly higher than either the entry spot or the spot at reset time.","617910072":"Use your Deriv account email and password to login into the {{ platform }} platform.","618520466":"Example of a cut-off document","619268911":"<0>a.The Financial Commission will investigate the validity of the complaint within 5 business days.","619407328":"Are you sure you want to unlink from {{identifier_title}}?","623192233":"Please complete the <0>Appropriateness Test to access your cashier.","623542160":"Exponential Moving Average Array (EMAA)","624668261":"You’ve just stopped the bot. Any open contracts can be viewed on the <0>Reports page.","625571750":"Entry spot:","626175020":"Standard Deviation Up Multiplier {{ input_number }}","626809456":"Resubmit","627292452":"<0>Your Proof of Identity or Proof of Address did not meet our requirements. Please check your email for further instructions.","627814558":"This block returns a value when a condition is true. Use this block within either of the function blocks above.","628193133":"Account ID","629145209":"In case if the \"AND\" operation is selected, the block returns \"True\" only if both given values are \"True\"","629395043":"All growth rates","632398049":"This block assigns a null value to an item or statement.","634219491":"You have not provided your tax identification number. This information is necessary for legal and regulatory requirements. Please go to <0>Personal details in your account settings, and fill in your latest tax identification number.","636219628":"<0>c.If no settlement opportunity can be found, the complaint will proceed to the determination phase to be handled by the DRC.","639382772":"Please upload supported file type.","640596349":"You have yet to receive any notifications","640730141":"Refresh this page to restart the identity verification process","641420532":"We've sent you an email","642210189":"Please check your email for the verification link to complete the process.","642393128":"Enter amount","642546661":"Upload back of license from your computer","642995056":"Email","644150241":"The number of contracts you have won since you last cleared your stats.","645016681":"Trading frequency in other financial instruments","645902266":"EUR/NZD","647039329":"Proof of address required","647192851":"Contract will be sold at the prevailing market price when the request is received by our servers. This price may differ from the indicated price.","647745382":"Input List {{ input_list }}","648035589":"Other CFD Platforms","649317411":"On the basis of the information provided in relation to your knowledge and experience, we consider that the investments available via this website are not appropriate for you.<0/><1/>","649923867":"Adds a sign to a number to create a barrier offset. (deprecated)","651284052":"Low Tick","651684094":"Notify","652041791":"To create a Deriv X real account, create a Deriv real account first.","652298946":"Date of birth","654264404":"Up to 1:30","654507872":"True-False","654924603":"Martingale","655937299":"We’ll update your limits. Click <0>Accept to acknowledge that you are fully responsible for your actions, and we are not liable for any addiction or loss.","656296740":"While “Deal cancellation” is active:","656893085":"Timestamp","657325150":"This block is used to define trade options within the Trade parameters root block. Some options are only applicable for certain trade types. Parameters such as duration and stake are common among most trade types. Prediction is used for trade types such as Digits, while barrier offsets are for trade types that involve barriers such as Touch/No Touch, Ends In/Out, etc.","659482342":"Please remember that it is your responsibility to keep your answers accurate and up to date. You can update your personal details at any time in your account settings.","660481941":"To access your mobile apps and other third-party apps, you'll first need to generate an API token.","660991534":"Finish","661759508":"On the basis of the information provided in relation to your knowledge and experience, we consider that the investments available via this website are not appropriate for you.<0/><0/>","662548260":"Forex, Stock indices, Commodities and Cryptocurrencies","662578726":"Available","662609119":"Download the MT5 app","665089217":"Please submit your <0>proof of identity to authenticate your account and access your Cashier.","665777772":"XLM/USD","665872465":"In the example below, the opening price is selected, which is then assigned to a variable called \"op\".","666724936":"Please enter a valid ID number.","672008428":"ZEC/USD","673915530":"Jurisdiction and choice of law","674973192":"Use this password to log in to your Deriv MT5 accounts on the desktop, web, and mobile apps.","676159329":"Could not switch to default account.","677918431":"Market: {{ input_market }} > {{ input_submarket }} > {{ input_symbol }}","680334348":"This block was required to correctly convert your old strategy.","680478881":"Total withdrawal limit","681808253":"Previous spot price","681926004":"Example of a blurry document","682056402":"Standard Deviation Down Multiplier {{ input_number }}","684282133":"Trading instruments","685391401":"If you're having trouble signing in, let us know via <0>chat","686312916":"Trading accounts","686387939":"How do I clear my transaction log?","687193018":"Slippage risk","687212287":"Amount is a required field.","688510664":"You've {{two_fa_status}} 2FA on this device. You'll be logged out of your account on other devices (if any). Use your password and a 2FA code to log back in.","689137215":"Purchase price","691956534":"<0>You have added a {{currency}} account.<0> Make a deposit now to start trading.","693396140":"Deal cancellation (expired)","694035561":"Trade options multipliers","696870196":"- Open time: the opening time stamp","697630556":"This market is presently closed.","698037001":"National Identity Number","699159918":"1. Filing complaints","699646180":"A minimum deposit value of <0>{{minimum_deposit}} {{currency}} is required. Otherwise, the funds will be lost and cannot be recovered.","700259824":"Account currency","701034660":"We are still processing your withdrawal request.<0 />Please wait for the transaction to be completed before deactivating your account.","701462190":"Entry spot","701647434":"Search for string","702451070":"National ID (No Photo)","702561961":"Change theme","705299518":"Next, upload the page of your passport that contains your photo.","706413212":"To access the cashier, you are now in your {{regulation}} {{currency}} ({{loginid}}) account.","706727320":"Binary options trading frequency","706755289":"This block performs trigonometric functions.","706960383":"We’ll offer to buy your contract at this price should you choose to sell it before its expiry. This is based on several factors, such as the current spot price, duration, etc. However, we won’t offer a contract value if the remaining duration is below 60 seconds.","707662672":"{{unblock_date}} at {{unblock_time}}","708055868":"Driving licence number","710123510":"repeat {{ while_or_until }} {{ boolean }}","711999057":"Successful","712101776":"Take a photo of your passport photo page","712635681":"This block gives you the selected candle value from a list of candles. You can choose from open price, close price, high price, low price, and open time.","713054648":"Sending","714080194":"Submit proof","714746816":"MetaTrader 5 Windows app","715841616":"Please enter a valid phone number (e.g. +15417541234).","716428965":"(Closed)","718504300":"Postal/ZIP code","720293140":"Log out","720519019":"Reset my password","721011817":"- Raise the first number to the power of the second number","723045653":"You'll log in to your Deriv account with this email address.","723961296":"Manage password","724203548":"You can send your complaint to the <0>European Commission's Online Dispute Resolution (ODR) platform. This is not applicable to UK clients.","724526379":"Learn more with our tutorials","728042840":"To continue trading with us, please confirm where you live.","728824018":"Spanish Index","729651741":"Choose a photo","730473724":"This block performs the \"AND\" or the \"OR\" logic operation with the given values.","731382582":"BNB/USD","734390964":"Insufficient balance","734881840":"false","742469109":"Reset Balance","742676532":"Trade CFDs on forex, derived indices, cryptocurrencies, and commodities with high leverage.","743623600":"Reference","744110277":"Bollinger Bands Array (BBA)","745656178":"Use this block to sell your contract at the market price.","745674059":"Returns the specific character from a given string of text according to the selected option. ","746112978":"Your computer may take a few seconds to update","750886728":"Switch to your real account to submit your documents","751468800":"Start now","751692023":"We <0>do not guarantee a refund if you make a wrong transfer.","752024971":"Reached maximum number of digits","752992217":"This block gives you the selected constant values.","753088835":"Default","753184969":"In providing our services to you, we are required to obtain information from you in order to assess whether a given product or service is appropriate for you (that is, whether you possess the experience and knowledge to understand the risks involved).<0/><1/>","753727511":"Type","755867072":"{{platform_name_mt5}} is not available in {{country}}","756152377":"SMA places equal weight to the entire distribution of values.","758003269":"make list from text","759783233":"For more information and assistance to counselling and support services, please visit <0>begambleaware.org.","760528514":"Please note that changing the value of \"i\" won't change the value of the original item in the list","761576760":"Fund your account to start trading.","762185380":"<0>Multiply returns by <0>risking only what you put in.","762871622":"{{remaining_time}}s","762926186":"A quick strategy is a ready-made strategy that you can use in Deriv Bot. There are 3 quick strategies you can choose from: Martingale, D'Alembert, and Oscar's Grind.","764366329":"Trading limits","766317539":"Language","770171141":"Go to {{hostname}}","773091074":"Stake:","773309981":"Oil/USD","773336410":"Tether is a blockchain-enabled platform designed to facilitate the use of fiat currencies in a digital manner.","775679302":"{{pending_withdrawals}} pending withdrawal(s)","775706054":"Do you sell trading bots?","776085955":"Strategies","781924436":"Call Spread/Put Spread","783974693":"Avoid recent years","784311461":"Exponential Moving Average (EMA)","784583814":"Linked to your computer","785969488":"Jump 75 Index","787727156":"Barrier","788005234":"NA","792164271":"This is when your contract will expire based on the Duration or End time you’ve selected.","792622364":"Negative balance protection","793526589":"To file a complaint about our service, send an email to <0>complaints@deriv.com and state your complaint in detail. Please submit any relevant screenshots of your trading or system for our better understanding.","793531921":"Our company is one of the oldest and most reputable online trading companies in the world. We are committed to treat our clients fairly and provide them with excellent service.<0/><1/>Please provide us with feedback on how we can improve our services to you. Rest assured that you will be heard, valued, and treated fairly at all times.","793826881":"This is your personal start page for Deriv","794682658":"Copy the link to your phone","795859446":"Password saved","797007873":"Follow these steps to recover camera access:","797500286":"negative","800228448":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name_svg}} and {{legal_entity_name_fx}}.","800521289":"Your personal details are incomplete","801430087":"A link can contain the word \"Deriv\" and still be fake.","802436811":"View transaction details","802438383":"New proof of address is needed","802556390":"seconds","802989607":"Drag your XML file here","803500173":"Initial stake","806165583":"Australia 200","807499069":"Financial commission complaints procedure","808323704":"You can also use \"Compare\" and \"Logic operation\" blocks to make test variables.","811876954":"You may transfer between your Deriv fiat, cryptocurrency, {{platform_name_mt5}}, and {{platform_name_dxtrade}} accounts.","812430133":"Spot price on the previous tick.","812775047":"below the barrier","814827314":"The stop-out level on the chart indicates the price at which your potential loss equals your entire stake. When the market price reaches this level, your position will be closed automatically. This ensures that your loss does not exceed the amount you paid to purchase the contract.","815925952":"This block is mandatory. Only one copy of this block is allowed. It is added to the canvas by default when you open Deriv Bot.","816580787":"Welcome back! Your messages have been restored.","816738009":"<0/><1/>You may also raise your unresolved dispute to the <2>Office of the Arbiter for Financial Services.","818447476":"Switch account?","820877027":"Please verify your proof of identity","821163626":"Server maintenance occurs every first Saturday of the month from 7 to 10 GMT time. You may experience service disruption during this time.","823186089":"A block that can contain text.","824797920":"Is list empty?","825042307":"Let’s try again","826511719":"USD/SEK","827688195":"Disable Block","828219890":"then","828602451":"Returns the list of tick values in string format","830164967":"Last name","830703311":"My profile","830993327":"No current transactions available","832053636":"Document submission","832217983":"40 transactions or more in the past 12 months","832398317":"Sell Error","832588873":"Order execution","832721563":"If you select \"Low Tick\", you win the payout if the selected tick is the lowest among the next five ticks.","834966953":"1551661986 seconds since Jan 01 1970 (UTC) translates to 03/04/2019 @ 1:13am (UTC).","835058671":"Total buy price","835336137":"View Detail","835350845":"Add another word or two. Uncommon words are better.","836097457":"I am interested in trading but have very little experience.","837063385":"Do not send other currencies to this address.","837066896":"Your document is being reviewed, please check back in 1-3 days.","839618971":"ADDRESS","839805709":"To smoothly verify you, we need a better photo","840672750":"If this doesn’t work, uninstall and re-install the MT5 app. Then redo steps <0>2 and <0>3.","841434703":"Disable stack","841543189":"View transaction on Blockchain","843333337":"You can only make deposits. Please complete the <0>financial assessment to unlock withdrawals.","845213721":"Logout","845304111":"Slow EMA Period {{ input_number }}","848083350":"Your payout is equal to the <0>payout per point multiplied by the difference between the final price and the strike price. You will only earn a profit if your payout is higher than your initial stake.","850582774":"Please update your personal info","851054273":"If you select \"Higher\", you win the payout if the exit spot is strictly higher than the barrier.","851264055":"Creates a list with a given item repeated for a specific number of times.","851508288":"This block constrains a given number within a set range.","852527030":"Step 2","852583045":"Tick List String","854399751":"Digit code must only contain numbers.","854630522":"Choose a cryptocurrency account","857363137":"Volatility 300 (1s) Index","857445204":"Deriv currently supports withdrawals of Tether eUSDT to Ethereum wallet. To ensure a successful transaction, enter a wallet address compatible with the tokens you wish to withdraw. <0>Learn more","857986403":"do something","860319618":"Tourism","862283602":"Phone number*","863328851":"Proof of identity","864610268":"First, enter your {{label}} and the expiry date.","864957760":"Math Number Positive","865424952":"High-to-Low","865642450":"2. Logged in from a different browser","866496238":"Make sure your license details are clear to read, with no blur or glare","868826608":"Excluded from {{brand_website_name}} until","869068127":"The cashier is temporarily down due to maintenance. It will be available as soon as the maintenance is complete.","869823595":"Function","869993298":"Minimum withdrawal","872549975":"You have {{number}} transfers remaining for today.","872661442":"Are you sure you want to update email <0>{{prev_email}} to <1>{{changed_email}}?","872721776":"2. Select your XML file and hit Select.","872817404":"Entry Spot Time","873166343":"1. 'Log' displays a regular message.","874461655":"Scan the QR code with your phone","874484887":"Take profit must be a positive number.","875101277":"If I close my web browser, will Deriv Bot continue to run?","875532284":"Restart process on a different device","876086855":"Complete the financial assessment form","876292912":"Exit","879014472":"Reached maximum number of decimals","879647892":"You may sell the contract up until 60 seconds before expiry. If you do, we’ll pay you the <0>contract value.","881963105":"(XAUUSD, XAGUSD)","885065431":"Get a Deriv account","888274063":"Town/City","888924866":"We don’t accept the following inputs for:","890299833":"Go to Reports","891337947":"Select country","892341141":"Your trading statistics since: {{date_time}}","893117915":"Variable","893963781":"Close-to-Low","893975500":"You do not have any recent bots","894191608":"<0>c.We must award the settlement within 28 days of when the decision is reached.","898457777":"You have added a Deriv Financial account.","898904393":"Barrier:","900646972":"page.","902045490":"3 minutes","903429103":"In candles list read {{ candle_property }} # from end {{ input_number }}","904696726":"API token","905134118":"Payout:","905227556":"Strong passwords contain at least 8 characters, combine uppercase and lowercase letters and numbers.","905564365":"MT5 CFDs","906049814":"We’ll review your documents and notify you of its status within 5 minutes.","907680782":"Proof of ownership verification failed","909272635":"Financial - SVG","910888293":"Too many attempts","911048905":"(BTCUSD, ETHUSD)","912406629":"Follow these steps:","912967164":"Import from your computer","915735109":"Back to {{platform_name}}","918447723":"Real","920125517":"Add demo account","921901739":"- your account details of the bank linked to your account","924046954":"Upload a document showing your name and bank account number or account details.","926813068":"Fixed/Variable","929608744":"You are unable to make withdrawals","930346117":"Capitalization doesn't help very much","930546422":"Touch","933126306":"Enter some text here","933193610":"Only letters, periods, hyphens, apostrophes, and spaces, please.","934835052":"Potential profit","934932936":"PERSONAL","936766426":"You are limited to one fiat account. You won’t be able to change your account currency if you have already made your first deposit.","937237342":"Strategy name cannot be empty","937682366":"Upload both of these documents to prove your identity.","937831119":"Last name*","937992258":"Table","938500877":"{{ text }}. <0>You can view the summary of this transaction in your email.","938947787":"Withdrawal {{currency}}","938988777":"High barrier","943535887":"Please close your positions in the following Deriv MT5 account(s):","944499219":"Max. open positions","945532698":"Contract sold","946204249":"Read","946841802":"A white (or green) candle indicates that the open price is lower than the close price. This represents an upward movement of the market price.","946944859":"Hit the button below and we'll send you an email with a link. Click that link to verify your withdrawal request.","947046137":"Your withdrawal will be processed within 24 hours","947363256":"Create list","947758334":"City is required","947914894":"Top up  <0>","948156236":"Create {{type}} password","948176566":"New!","948545552":"150+","949859957":"Submit","952927527":"Regulated by the Malta Financial Services Authority (MFSA) (licence no. IS/70156)","955352264":"Trade on {{platform_name_dxtrade}}","956448295":"Cut-off image detected","957182756":"Trigonometric functions","958430760":"In/Out","959031082":"set {{ variable }} to MACD Array {{ dropdown }} {{ dummy }}","960201789":"3. Sell conditions","961178214":"You can only purchase one contract at a time","961266215":"140+","961327418":"My computer","961692401":"Bot","966457287":"set {{ variable }} to Exponential Moving Average {{ dummy }}","968576099":"Up/Down","969987233":"Win up to maximum payout if exit spot is between lower and upper barrier, in proportion to the difference between exit spot and lower barrier.","970915884":"AN","975668699":"I confirm and accept {{company}} 's <0>Terms and Conditions","975950139":"Country of Residence","977929335":"Go to my account settings","981138557":"Redirect","981568830":"You have chosen to exclude yourself from trading on our website until {{exclude_until}}. If you are unable to place a trade or deposit after your self-exclusion period, please contact us via <0>live chat.","981965437":"Scan the QR code below with your 2FA app. We recommend <0>Authy or <1>Google Authenticator.","982146443":"WhatsApp","982402892":"First line of address","982829181":"Barriers","983451828":"2. Select the asset and trade type.","987224688":"How many trades have you placed with other financial instruments in the past 12 months?","988064913":"4. Come back to Deriv Bot and add the Notify Telegram block to the workspace. Paste the Telegram API token and chat ID into the block fields accordingly.","988361781":"You have no trading activity yet.","988934465":"When prompted, you must enable camera access to continue","990739582":"170+","992294492":"Your postal code is invalid","992677950":"Logging out on other devices","993827052":"Choosing this jurisdiction will give you a Financial STP account. Your trades will go directly to the market and have tighter spreads.","995563717":"not {{ boolean }}","999008199":"text","1001160515":"Sell","1001749987":"You’ll get a warning, named margin call, if your account balance drops down close to the stop out level.","1003876411":"Should start with letter or number and may contain a hyphen, period and slash.","1004127734":"Send email","1006458411":"Errors","1006664890":"Silent","1009032439":"All time","1010198306":"This block creates a list with strings and numbers.","1010337648":"We were unable to verify your proof of ownership.","1011424042":"{{text}}. stake<0/>","1012102263":"You will not be able to log in to your account until this date (up to 6 weeks from today).","1015201500":"Define your trade options such as duration and stake.","1016220824":"You need to switch to a real money account to use this feature.<0/>You can do this by selecting a real account from the <1>Account Switcher.","1018803177":"standard deviation","1019265663":"You have no transactions yet.","1019508841":"Barrier 1","1021679446":"Multipliers only","1022934784":"1 minute","1023237947":"1. In the example below, the instructions are repeated as long as the value of x is less than or equal to 10. Once the value of x exceeds 10, the loop is terminated.","1023643811":"This block purchases contract of a specified type.","1023795011":"Even/Odd","1024205076":"Logic operation","1025887996":"Negative Balance Protection","1026046972":"Please enter a payout amount that's lower than {{max_payout}}.","1026289179":"Trade on the go","1027098103":"Leverage gives you the ability to trade a larger position using your existing capital. Leverage varies across different symbols.","1028211549":"All fields are required","1028758659":"Citizenship*","1029164365":"We presume that you possess the experience, knowledge, and expertise to make your own investment decisions and properly assess the risk involved.","1030021206":"change {{ variable }} by {{ number }}","1031602624":"We've sent a secure link to %{number}","1031731167":"Pound Sterling","1032173180":"Deriv","1032907147":"AUD/NZD","1033076894":"- current profit/loss: Use this variable to store the cumulative profit or loss while your bot is running. Set the initial value to 0.","1035893169":"Delete","1036116144":"Speculate on the price movement of an asset without actually owning it.","1036867749":"The desired duration, stake, prediction, and/or barrier(s) for the contract is defined here.","1038575777":"Change password","1039428638":"EU regulation","1039755542":"Use a few words, avoid common phrases","1040472990":"1. Go to Bot Builder.","1040677897":"To continue trading, you must also submit a proof of address.","1041001318":"This block performs the following operations on a given list: sum, minimum, maximum, average, median, mode, antimode, standard deviation, random item.","1041620447":"If you are unable to scan the QR code, you can manually enter this code instead:","1042659819":"You have an account that needs action","1043790274":"There was an error","1044540155":"100+","1044599642":"<0> has been credited into your {{platform}} {{title}} account.","1045704971":"Jump 150 Index","1045782294":"Click the <0>Change password button to change your Deriv password.","1047389068":"Food Services","1047881477":"Unfortunately, your browser does not support the video.","1048687543":"Labuan Financial Services Authority","1048947317":"Sorry, this app is unavailable in {{clients_country}}.","1049384824":"Rise","1050063303":"Videos on Deriv Bot","1050128247":"I confirm that I have verified the payment agent’s transfer information.","1050844889":"Reports","1052779010":"You are on your demo account","1053153674":"Jump 50 Index","1053159279":"Level of education","1053556481":"Once you submit your complaint, we will send you an acknowledgement email to confirm that we have received it.","1055313820":"No document detected","1056381071":"Return to trade","1056821534":"Are you sure?","1057216772":"text {{ input_text }} is empty","1057749183":"Two-factor authentication (2FA)","1057765448":"Stop out level","1057904606":"The concept of the D’Alembert Strategy is said to be similar to the Martingale Strategy where you will increase your contract size after a loss. With the D’Alembert Strategy, you will also decrease your contract size after a successful trade.","1058804653":"Expiry","1060231263":"When are you required to pay an initial margin?","1061308507":"Purchase {{ contract_type }}","1062423382":"Explore the video guides and FAQs to build your bot in the tutorials tab.","1062536855":"Equals","1065353420":"110+","1065498209":"Iterate (1)","1066235879":"Transferring funds will require you to create a second account.","1066459293":"4.3. Acknowledging your complaint","1069347258":"The verification link you used is invalid or expired. Please request for a new one.","1069576070":"Purchase lock","1070624871":"Check proof of address document verification status","1073261747":"Verifications","1076006913":"Profit/loss on the last {{item_count}} contracts","1077515534":"Date to","1078221772":"Leverage prevents you from opening large positions.","1080068516":"Action","1080990424":"Confirm","1082158368":"*Maximum account cash balance","1082406746":"Please enter a stake amount that's at least {{min_stake}}.","1083781009":"Tax identification number*","1083826534":"Enable Block","1086118495":"Traders Hub","1087112394":"You must select the strike price before entering the contract.","1088031284":"Strike:","1088138125":"Tick {{current_tick}} - ","1089085289":"Mobile number","1089436811":"Tutorials","1089687322":"Stop your current bot?","1090041864":"The {{block_type}} block is mandatory and cannot be deleted/disabled.","1095295626":"<0>•The Arbiter for Financial Services will determine whether the complaint can be accepted and is in accordance with the law.","1096078516":"We’ll review your documents and notify you of its status within 3 days.","1096175323":"You’ll need a Deriv account","1098147569":"Purchase commodities or shares of a company.","1098622295":"\"i\" starts with the value of 1, and it will be increased by 2 at every iteration. The loop will repeat until \"i\" reaches the value of 12, and then the loop is terminated.","1100133959":"National ID","1100870148":"To learn more about account limits and how they apply, please go to the <0>Help Centre.","1101560682":"stack","1101712085":"Buy Price","1102420931":"Next, upload the front and back of your driving licence.","1102995654":"Calculates Exponential Moving Average (EMA) list from a list of values with a period","1103309514":"Target","1103452171":"Cookies help us to give you a better experience and personalised content on our site.","1104912023":"Pending verification","1107474660":"Submit proof of address","1107555942":"To","1109217274":"Success!","1110102997":"Statement","1112582372":"Interval duration","1113119682":"This block gives you the selected candle value from a list of candles.","1113292761":"Less than 8MB","1114679006":"You have successfully created your bot using a simple strategy.","1117281935":"Sell conditions (optional)","1117863275":"Security and safety","1118294625":"You have chosen to exclude yourself from trading on our website until {{exclusion_end}}. If you are unable to place a trade or deposit after your self-exclusion period, please contact us via live chat.","1119887091":"Verification","1119986999":"Your proof of address was submitted successfully","1120985361":"Terms & conditions updated","1122910860":"Please complete your <0>financial assessment.","1123927492":"You have not selected your account currency","1125090693":"Must be a number","1126075317":"Add your Deriv MT5 <0>{{account_type_name}} STP account under Deriv (FX) Ltd regulated by Labuan Financial Services Authority (Licence no. MB/18/0024).","1126934455":"Length of token name must be between 2 and 32 characters.","1127149819":"Make sure§","1127224297":"Sorry for the interruption","1128139358":"How many CFD trades have you placed in the past 12 months?","1128321947":"Clear All","1128404172":"Undo","1129124569":"If you select \"Under\", you will win the payout if the last digit of the last tick is less than your prediction.","1129842439":"Please enter a take profit amount.","1130744117":"We shall try to resolve your complaint within 10 business days. We will inform you of the outcome together with an explanation of our position and propose any remedial measures we intend to take.","1130791706":"N","1133651559":"Live chat","1134879544":"Example of a document with glare","1138126442":"Forex: standard","1139483178":"Enable stack","1143730031":"Direction is {{ direction_type }}","1144028300":"Relative Strength Index Array (RSIA)","1145927365":"Run the blocks inside after a given number of seconds","1146064568":"Go to Deposit page","1147269948":"Barrier cannot be zero.","1150637063":"*Volatility 150 Index and Volatility 250 Index","1151964318":"both sides","1152294962":"Upload the front of your driving licence.","1154021400":"list","1154239195":"Title and name","1155011317":"This block converts the date and time to the number of seconds since the Unix Epoch (1970-01-01 00:00:00).","1155626418":"below","1158678321":"<0>b.The Head of the Dispute Resolution Committee (DRC) will contact both you and us within 5 business days to obtain all necessary information and see if there is a chance to settle the complaint during the investigation phase.","1160761178":"No payout if exit spot is below or equal to the lower barrier.","1161924555":"Please select an option","1163771266":"The third block is <0>optional. You may use this block if you want to sell your contract before it expires. For now, leave the block as it is. ","1163836811":"Real Estate","1164773983":"Take profit and/or stop loss are not available while deal cancellation is active.","1166128807":"Choose one of your accounts or add a new cryptocurrency account","1166377304":"Increment value","1168029733":"Win payout if exit spot is also equal to entry spot.","1169201692":"Create {{platform}} password","1170228717":"Stay on {{platform_name_trader}}","1171765024":"Step 3","1171961126":"trade parameters","1172524677":"CFDs Demo","1174542625":"- Find the chat ID property in the response, and copy the value of the id property","1174748431":"Payment channel","1175183064":"Vanuatu","1176926166":"Experience with trading other financial instruments","1177396776":"If you select \"Asian Fall\", you will win the payout if the last tick is lower than the average of the ticks.","1177723589":"There are no transactions to display","1178582280":"The number of contracts you have lost since you last cleared your stats.","1178800778":"Take a photo of the back of your license","1178942276":"Please try again in a minute.","1179704370":"Please enter a take profit amount that's higher than the current potential profit.","1180619731":"Each day, you can make up to {{ allowed_internal }} transfers between your Deriv accounts, up to {{ allowed_mt5 }} transfers between your Deriv and {{platform_name_mt5}} accounts, and up to {{ allowed_dxtrade }} transfers between your Deriv and {{platform_name_dxtrade}} accounts.","1181396316":"This block gives you a random number from within a set range","1181770592":"Profit/loss from selling","1183007646":"- Contract type: the name of the contract type such as Rise, Fall, Touch, No Touch, etс.","1184968647":"Close your contract now or keep it running. If you decide to keep it running, you can check and close it later on the ","1188316409":"To receive your funds, contact the payment agent with the details below","1188980408":"5 minutes","1189249001":"4.1. What is considered a complaint?","1189368976":"Please complete your personal details before you verify your identity.","1191429031":"Please click on the link in the email to change your <0>{{platform_name_dxtrade}} password.","1191644656":"Predict the market direction and select either “Up” or “Down” to open a position. We will charge a commission when you open a position.","1192708099":"Duration unit","1195393249":"Notify {{ notification_type }} with sound: {{ notification_sound }} {{ input_message }}","1196006480":"Profit threshold","1196683606":"Deriv MT5 CFDs demo account","1198368641":"Relative Strength Index (RSI)","1199281499":"Last Digits List","1201533528":"Contracts won","1201773643":"numeric","1203297580":"This block sends a message to a Telegram channel.","1204223111":"In this example, the open prices from a list of candles are assigned to a variable called \"candle_list\".","1206227936":"How to mask your card?","1206821331":"Armed Forces","1207152000":"Choose a template and set your trade parameters.","1208714859":"For Short:","1208729868":"Ticks","1208903663":"Invalid token","1211912982":"Bot is starting","1214893428":"Account creation is currently unavailable for mobile. Please log in with your computer to create a new account.","1216408337":"Self-Employed","1217159705":"Bank account number","1217481729":"Tether as an ERC20 token (eUSDT) is a version of Tether that is hosted on Ethereum.","1218546232":"What is Fiat onramp?","1219844088":"do %1","1221250438":"To enable withdrawals, please submit your <0>Proof of Identity (POI) and <1>Proof of Address (POA) and also complete the <2>financial assessment in your account settings.","1222096166":"Deposit via bank wire, credit card, and e-wallet","1222521778":"Making deposits and withdrawals is difficult.","1222544232":"We’ve sent you an email","1225150022":"Number of assets","1227074958":"random fraction","1227240509":"Trim spaces","1228534821":"Some currencies may not be supported by payment agents in your country.","1229883366":"Tax identification number","1230884443":"State/Province (optional)","1231282282":"Use only the following special characters: {{permitted_characters}}","1232291311":"Maximum withdrawal remaining","1232353969":"0-5 transactions in the past 12 months","1233300532":"Payout","1234292259":"Source of wealth","1234764730":"Upload a screenshot of your name and email address from the personal details section.","1235426525":"50%","1237330017":"Pensioner","1238311538":"Admin","1239752061":"In your cryptocurrency wallet, make sure to select the <0>{{network_name}} network when you transfer funds to Deriv.","1239760289":"Complete your trading assessment","1239940690":"Restarts the bot when an error is encountered.","1240027773":"Please Log in","1240688917":"Glossary","1241238585":"You may transfer between your Deriv fiat, cryptocurrency, and {{platform_name_mt5}} accounts.","1242288838":"Hit the checkbox above to choose your document.","1242994921":"Click here to start building your Deriv Bot.","1243064300":"Local","1243287470":"Transaction status","1246207976":"Enter the authentication code generated by your 2FA app:","1246880072":"Select issuing country","1247280835":"Our cryptocurrency cashier is temporarily down due to system maintenance. You can make cryptocurrency deposits and withdrawals in a few minutes when the maintenance is complete.","1248018350":"Source of income","1248940117":"<0>a.The decisions made by the DRC are binding on us. DRC decisions are binding on you only if you accept them.","1250495155":"Token copied!","1252669321":"Import from your Google Drive","1253531007":"Confirmed","1254565203":"set {{ variable }} to create list with","1255827200":"You can also import or build your bot using any of these shortcuts.","1255909792":"last","1255963623":"To date/time {{ input_timestamp }} {{ dummy }}","1258097139":"What could we do to improve?","1258198117":"positive","1259598687":"GBP/JPY","1260259925":"Phone is not in a proper format.","1263387702":"All {{count}} account types use market execution. This means you agree with the broker's price in advance and will place orders at the broker's price.","1264096613":"Search for a given string","1264842111":"You can switch between real and demo accounts.","1265704976":"","1269296089":"Let's build a Bot!","1270581106":"If you select \"No Touch\", you win the payout if the market never touches the barrier at any time during the contract period.","1271461759":"Your contract will be closed automatically if your profit reaches this amount.","1272012156":"GBP/CHF","1272337240":"Days","1272681097":"Hours","1274819385":"3. Complaints and Disputes","1281045211":"Sorts the items in a given list, by their numeric or alphabetical value, in either ascending or descending order.","1281290230":"Select","1282951921":"Only Downs","1284522768":"If \"Loss\" is selected, it will return \"True\" if your last trade was unsuccessful. Otherwise, it will return an empty string.","1286094280":"Withdraw","1286507651":"Close identity verification screen","1288965214":"Passport","1289146554":"British Virgin Islands Financial Services Commission","1289646209":"Margin call","1290525720":"Example: ","1291887623":"Digital options trading frequency","1291997417":"Contracts will expire at exactly 23:59:59 GMT on your selected expiry date.","1292188546":"Reset Deriv MT5 investor password","1292891860":"Notify Telegram","1293660048":"Max. total loss per day","1294756261":"This block creates a function, which is a group of instructions that can be executed at any time. Place other blocks in here to perform any kind of action that you need in your strategy. When all the instructions in a function have been carried out, your bot will continue with the remaining blocks in your strategy. Click the “do something” field to give it a name of your choice. Click the plus icon to send a value (as a named variable) to your function.","1295284664":"Please accept our <0>updated Terms and Conditions to proceed.","1296380713":"Close my contract","1299479533":"8 hours","1300576911":"Please resubmit your proof of address or we may restrict your account.","1302691457":"Occupation","1303016265":"Yes","1303530014":"We’re processing your withdrawal.","1304083330":"copy","1304272843":"Please submit your proof of address.","1304620236":"Enable camera","1304788377":"<0/><1/>If your complaint relates to our data processing practices, you can submit a formal complaint to the <2>Information and Data Protection Commissioner (Malta) on their website or make a complaint to any supervisory authority within the European Union.","1304807342":"Compare CFDs demo accounts","1305217290":"Upload the back of your identity card.","1308625834":"Sets the default time interval for blocks that read list of candles.","1309017029":"Enabling this allows you to save your blocks as one collection which can be easily integrated into other bots.","1309044871":"Returns the value of the latest tick in string format","1309133590":"Earn a range of payouts by correctly predicting market movements with <0>options, or get the upside of CFDs without risking more than your initial stake with <1>multipliers.","1309186223":"- current stake: Use this variable to store the stake amount used in the last contract. You can assign any amount you want, but it must be a positive number.","1310483610":"Results for \"{{ search_term }}\"","1311680770":"payout","1313167179":"Please log in","1316216284":"You can use this password for all your {{platform}} accounts.","1319217849":"Check your mobile","1320750775":"Front and back","1322804930":"Restart the process on the latest version of Google Chrome","1323327633":"Our complaints process comprises the following 4 steps:","1323476617":"Changes the capitalisation of a string of text to Upper case, Lower case, Title case.","1323941798":"Short","1323996051":"Profile","1324922837":"2. The new variable will appear as a block under Set variable.","1325514262":"(licence no. MB/18/0024)","1327181172":"Financial Vanuatu","1327494533":"{{sell_value}} (Sell)","1329136554":"Jump 200 Index","1329325646":"The content of this block is called on every tick","1331199417":"Please enter the correct format. ","1331367811":"Client account number","1332168410":"Learn more","1332168769":"Disconnect","1333576137":"Please update your {{details}} to continue.","1333839457":"Submit identity card (front)","1334326985":"It may take a few minutes to arrive","1335967988":"Notice","1336052175":"Switch accounts","1337846406":"This block gives you the selected candle value from a list of candles within the selected time interval.","1337864666":"Photo of your document","1338496204":"Ref. ID","1339613797":"Regulator/External dispute resolution","1341840346":"View in Journal","1346204508":"Take profit","1346339408":"Managers","1347071802":"{{minutePast}}m ago","1348009461":"Please close your positions in the following Deriv X account(s):","1349133669":"Try changing your search criteria.","1349289354":"Great, that's everything we need","1349295677":"in text {{ input_text }} get substring from {{ position1 }} {{ index1 }} to {{ position2 }} {{ index2 }}","1351906264":"This feature is not available for payment agents.","1353197182":"Please select","1354288636":"Based on your answers, it looks like you have insufficient knowledge and experience in trading CFDs. CFD trading is risky and you could potentially lose all of your capital.<0/><0/>","1355250245":"{{ calculation }} of list {{ input_list }}","1356373528":"Run Deriv EZ on your browser","1356574493":"Returns a specific portion of a given string of text.","1356607862":"Deriv password","1357129681":"{{num_day}} days {{num_hour}} hours {{num_minute}} minutes","1357213116":"Identity card","1358543466":"Not available","1358543748":"enabled","1359424217":"You have sold this contract at <0 />","1360929368":"Add a Deriv account","1362578283":"High","1363060668":"Your trading statistics since:","1363645836":"Derived FX","1363675688":"Duration is a required field.","1364958515":"Stocks","1366244749":"Limits","1367023655":"To ensure your loss does not exceed your stake, your contract will be closed automatically when your loss equals to <0/>.","1367488817":"4. Restart trading conditions","1367990698":"Volatility 10 Index","1369709538":"Our terms of use","1370647009":"Enjoy higher daily limits","1371193412":"Cancel","1371555192":"Choose your preferred payment agent and enter your withdrawal amount. If your payment agent is not listed, <0>search for them using their account number.","1371641641":"Open the link on your mobile","1371911731":"Financial products in the EU are offered by {{legal_entity_name}}, licensed as a Category 3 Investment Services provider by the Malta Financial Services Authority (<0>Licence no. IS/70156).","1374627690":"Max. account balance","1375884086":"Financial, legal, or government document: recent bank statement, affidavit, or government-issued letter.","1376329801":"Last 60 days","1378419333":"Ether","1380349261":"Range","1383017005":"You have switched accounts.","1384127719":"You should enter {{min}}-{{max}} numbers.","1384222389":"Please submit valid identity documents to unlock the cashier.","1385418910":"Please set a currency for your existing real account before creating another account.","1387503299":"Log in","1388770399":"Proof of identity required","1389197139":"Import error","1390792283":"Trade parameters","1391174838":"Potential payout:","1392966771":"Mrs","1392985917":"This is similar to a commonly used password","1393559748":"Invalid date/time: {{ datetime_string }}","1393901361":"There’s an app for that","1393903598":"if true {{ return_value }}","1396179592":"Commission","1396417530":"Bear Market Index","1397628594":"Insufficient funds","1400341216":"We’ll review your documents and notify you of its status within 1 to 3 days.","1400732866":"View from camera","1402208292":"Change text case","1403376207":"Update my details","1405584799":"with interval: {{ candle_interval_type }}","1407191858":"DTrader","1408844944":"Click the plus icon to extend the functionality of this block.","1411373212":"Strong passwords contain at least 8 characters. combine uppercase and lowercase letters, numbers, and symbols.","1412535872":"You can check the result of the last trade with this block. It can only be placed within the \"Restart trading conditions\" root block.","1413047745":"Assigns a given value to a variable","1413359359":"Make a new transfer","1414205271":"prime","1415006332":"get sub-list from first","1415513655":"Download cTrader on your phone to trade with the Deriv cTrader account","1415974522":"If you select \"Differs\", you will win the payout if the last digit of the last tick is not the same as your prediction.","1417558007":"Max. total loss over 7 days","1417914636":"Login ID","1418115525":"This block repeats instructions as long as a given condition is true.","1421749665":"Simple Moving Average (SMA)","1422060302":"This block replaces a specific item in a list with another given item. It can also insert the new item in the list at a specific position.","1422129582":"All details must be clear — nothing blurry","1423082412":"Last Digit","1423296980":"Enter your SSNIT number","1424741507":"See more","1424779296":"If you've recently used bots but don't see them in this list, it may be because you:","1428657171":"You can only make deposits. Please contact us via <0>live chat for more information.","1430396558":"5. Restart buy/sell on error","1430632931":"To get trading, please confirm who you are, and where you live.","1433367863":"Sorry, an error occured while processing your request.","1433468641":"We offer our services in all countries, except for the ones mentioned in our terms and conditions.","1434382099":"Displays a dialog window with a message","1434767075":"Get started on Deriv Bot","1434976996":"Announcement","1435363248":"This block converts the number of seconds since the Unix Epoch to a date and time format such as 2019-08-01 00:00:00.","1435380105":"Minimum deposit","1437396005":"Add comment","1438247001":"A professional client receives a lower degree of client protection due to the following.","1438340491":"else","1439168633":"Stop loss:","1441208301":"Total<0 />profit/loss","1442747050":"Loss amount: <0>{{profit}}","1442840749":"Random integer","1443478428":"Selected proposal does not exist","1444843056":"Corporate Affairs Commission","1445592224":"You accidentally gave us another email address (Usually a work or a personal one instead of the one you meant).","1446742608":"Click here if you ever need to repeat this tour.","1449462402":"In review","1452260922":"Too many failed attempts","1452941569":"This block delays execution for a given number of seconds. You can place any blocks within this block. The execution of other blocks in your strategy will be paused until the instructions in this block are carried out.","1453317405":"This block gives you the balance of your account either as a number or a string of text.","1454406889":"Choose <0>until as the repeat option.","1454648764":"deal reference id","1454865058":"Do not enter an address linked to an ICO purchase or crowdsale. If you do, the ICO tokens will not be credited into your account.","1455741083":"Upload the back of your driving licence.","1457341530":"Your proof of identity verification has failed","1457603571":"No notifications","1458160370":"Enter your {{platform}} password to add a {{platform_name}} {{account}} {{jurisdiction_shortcode}} account.","1459761348":"Submit proof of identity","1461323093":"Display messages in the developer’s console.","1464190305":"This block will transfer the control back to the Purchase conditions block, enabling you to purchase another contract without manually stopping and restarting your bot.","1464253511":"You already have an account for each of the cryptocurrencies available on {{deriv}}.","1465084972":"How much experience do you have with other financial instruments?","1465919899":"Pick an end date","1466430429":"Should be between {{min_value}} and {{max_value}}","1466900145":"Doe","1467017903":"This market is not yet available on {{platform_name_trader}}, but it is on {{platform_name_smarttrader}}.","1467421920":"with interval: %1","1467661678":"Cryptocurrency trading","1467880277":"3. General queries","1468308734":"This block repeats instructions as long as a given condition is true","1468419186":"Deriv currently supports withdrawals of Tether USDT to Omni wallet. To ensure a successful transaction, enter a wallet address compatible with the tokens you wish to withdraw. <0>Learn more","1468937050":"Trade on {{platform_name_trader}}","1469133110":"cTrader Windows app","1469150826":"Take Profit","1469764234":"Cashier Error","1469814942":"- Division","1470319695":"Returns either True or False","1471008053":"Deriv Bot isn't quite ready for real accounts","1471070549":"Can contract be sold?","1471741480":"Severe error","1473369747":"Synthetics only","1476301886":"Similar to SMA, this block gives you the entire SMA line containing a list of all values for a given period.","1478030986":"Create or delete API tokens for trading and withdrawals","1480915523":"Skip","1481977420":"Please help us verify your withdrawal request.","1483470662":"Click ‘Open’ to start trading with your account","1484336612":"This block is used to either terminate or continue a loop, and can be placed anywhere within a loop block.","1487086154":"Your documents were submitted successfully","1488548367":"Upload again","1491392301":"<0>Sold for: {{sold_for}}","1492686447":"Your MT5 Financial STP account will be opened through Deriv (FX) Ltd. All trading in this account is subject to the regulations and guidelines of the Labuan Financial Service Authority (LFSA). None of your other accounts, including your Deriv account, is subject to the regulations and guidelines of the Labuan Financial Service Authority (LFSA).","1493673429":"Change email","1493866481":"Run Deriv X on your browser","1496810530":"GBP/AUD","1497773819":"Deriv MT5 accounts","1499074768":"Add a real Deriv Multipliers account","1499080621":"Tried to perform an invalid operation.","1501691227":"Add Your Deriv MT5 <0>{{account_type_name}} account under Deriv (V) Ltd, regulated by the Vanuatu Financial Services Commission.","1502039206":"Over {{barrier}}","1502325741":"Your password cannot be the same as your email address.","1503618738":"- Deal reference ID: the reference ID of the contract","1505420815":"No payment agents found for your search","1505898522":"Download stack","1505927599":"Our servers hit a bump. Let’s refresh to move on.","1509559328":"cTrader","1509570124":"{{buy_value}} (Buy)","1509678193":"Education","1510075920":"Gold/USD","1510357015":"Tax residence is required.","1510735345":"This block gives you a list of the last digits of the last 1000 tick values.","1512469749":"In the above example it is assumed that variable candle_open_price is processed somewhere within other blocks.","1516559721":"Please select one file only","1516676261":"Deposit","1516834467":"‘Get’ the accounts you want","1517503814":"Drop file or click here to upload","1519124277":"Derived SVG","1519891032":"Welcome to Trader's Hub","1520332426":"Net annual income","1524636363":"Authentication failed","1526483456":"2. Enter a name for your variable, and hit Create. New blocks containing your new variable will appear below.","1527251898":"Unsuccessful","1527664853":"Your payout is equal to the payout per point multiplied by the difference between the final price and the strike price.","1527906715":"This block adds the given number to the selected variable.","1531017969":"Creates a single text string from combining the text value of each attached item, without spaces in between. The number of items can be added accordingly.","1533177906":"Fall","1534796105":"Gets variable value","1537711064":"You need to make a quick identity verification before you can access the Cashier. Please go to your account settings to submit your proof of identity.","1540585098":"Decline","1541508606":"Looking for CFDs? Go to Trader's Hub","1541969455":"Both","1542742708":"Synthetics, Forex, Stocks, Stock indices, Commodities, and Cryptocurrencies","1544642951":"If you select \"Only Ups\", you win the payout if consecutive ticks rise successively after the entry spot. No payout if any tick falls or is equal to any of the previous ticks.","1547148381":"That file is too big (only up to 8MB allowed). Please upload another file.","1548765374":"Verification of document number failed","1549098835":"Total withdrawn","1551172020":"AUD Basket","1552162519":"View onboarding","1555345325":"User Guide","1557426040":"Demo Derived SVG","1557682012":"Account Settings","1557904289":"We accept only these types of documents as proof of your address. The document must be recent (issued within last 6 months) and include your name and address:","1558972889":"set {{ variable }} to Simple Moving Average {{ dummy }}","1559220089":"Options and multipliers trading platform.","1560302445":"Copied","1562374116":"Students","1562982636":"Re-add your MT5 account using the same log in credentials.","1564392937":"When you set your limits or self-exclusion, they will be aggregated across all your account types in {{platform_name_trader}} and {{platform_name_dbot}}. For example, the losses made on both platforms will add up and be counted towards the loss limit you set.","1566037033":"Bought: {{longcode}} (ID: {{transaction_id}})","1566717687":"We also provide a guide on the Tutorial tab to show you how you can build and execute a simple strategy.","1567076540":"Only use an address for which you have proof of residence - ","1567586204":"Self-exclusion","1567745852":"Bot name","1569624004":"Dismiss alert","1570484627":"Ticks list","1571303610":"3. Set your trade parameters and hit Create.","1571575776":"Accepted formats: pdf, jpeg, jpg, and png. Max file size: 8MB","1572504270":"Rounding operation","1572982976":"Server","1573429525":"Call/Put","1573533094":"Your document is pending for verification.","1574989243":"- trade again: Use this variable to stop trading when your loss limit is reached. Set the initial value to true.","1575556189":"Tether on the Ethereum blockchain, as an ERC20 token, is a newer transport layer, which now makes Tether available in Ethereum smart contracts. As a standard ERC20 token, it can also be sent to any Ethereum address.","1577480486":"Your mobile link will expire in one hour","1577527507":"Account opening reason is required.","1577612026":"Select a folder","1579839386":"Appstore","1580498808":"Multiple faces found","1584109614":"Ticks String List","1584936297":"XML file contains unsupported elements. Please check or modify file.","1585859194":"We’ll charge a 1% transfer fee for transfers in different currencies between your Deriv fiat and {{platform_name_mt5}} accounts, your Deriv fiat and {{platform_name_derivez}} accounts, and your Deriv fiat and {{platform_name_dxtrade}} accounts.","1587046102":"Documents from that country are not currently supported — try another document type","1589148299":"Start","1589640950":"Resale of this contract is not offered.","1589702653":"Proof of address","1590400723":"Total assets in all your accounts","1591933071":"Resubmit document","1593010588":"Login now","1594147169":"Please come back in","1594322503":"Sell is available","1596378630":"You have added a real Gaming account.<0/>Make a deposit now to start trading.","1597672660":"Deriv MT5 Password","1598009247":"<0>a.You may file a complaint with the Financial Commission up to 45 days after the incident.","1598443642":"Transaction hash","1602894348":"Create a password","1604916224":"Absolute","1605222432":"I have no knowledge and experience in trading at all.","1605292429":"Max. total loss","1612105450":"Get substring","1612638396":"Cancel your trade at any time within a specified timeframe.","1613633732":"Interval should be between 10-60 minutes","1615897837":"Signal EMA Period {{ input_number }}","1618809782":"Maximum withdrawal","1619070150":"You are being redirected to an external website.","1620278321":"Names and surnames by themselves are easy to guess","1620346110":"Set currency","1621024661":"Tether as a TRC20 token (tUSDT) is a version of Tether that is hosted on Tron.","1622662457":"Date from","1622944161":"Now, go to the <0>Restart trading conditions block.","1623706874":"Use this block when you want to use multipliers as your trade type.","1628981793":"Can I trade cryptocurrencies on Deriv Bot?","1630417358":"Please go to your account settings and complete your personal details to enable withdrawals.","1631281562":"GBP Basket","1634903642":"Only your face can be in the selfie","1634969163":"Change currency","1635266650":"It seems that your name in the document is not the same as your Deriv profile. Please update your name in the <0>Personal details page to solve this issue.","1635628424":"An envelope with your name and address.","1636605481":"Platform settings","1636782601":"Multipliers","1638321777":"Your demo account balance is low. Reset your balance to continue trading from your demo account.","1639262461":"Pending withdrawal request:","1639304182":"Please click on the link in the email to reset your password.","1641395634":"Last digits list","1641635657":"New proof of identity document needed","1641980662":"Salutation is required.","1644636153":"Transaction hash: <0>{{value}}","1644703962":"Looking for CFD accounts? Go to Trader's Hub","1644864436":"You’ll need to authenticate your account before requesting to become a professional client. <0>Authenticate my account","1644908559":"Digit code is required.","1647186767":"The bot encountered an error while running.","1648938920":"Netherlands 25","1649239667":"2. Under the Blocks menu, you'll see a list of categories. Blocks are grouped within these categories. Choose the block you want and drag them to the workspace.","1651513020":"Display remaining time for each interval","1651951220":"Repeats like \"abcabcabc\" are only slightly harder to guess than \"abc\"","1652366857":"get and remove","1652968048":"Define your trade options such as multiplier and stake.","1652976865":"In this example, this block is used with another block to get the open prices from a list of candles. The open prices are then assigned to the variable called \"cl\".","1653136377":"copied!","1653180917":"We cannot verify you without using your camera","1654365787":"Unknown","1654721858":"Upload anyway","1655627840":"UPPER CASE","1656155124":"Resend in <0 /> seconds","1658954996":"Plant and Machine Operators and Assemblers","1659074761":"Reset Put","1659352235":"Add your Deriv MT5 CFDs account under Deriv Investments (Europe) Limited, regulated by the Malta Financial Services Authority (MFSA) (licence no. IS/70156).","1665272539":"Remember: You cannot log in to your account until the selected date.","1665738338":"Balance","1665756261":"Go to live chat","1668138872":"Modify account settings","1670016002":"Multiplier: {{ multiplier }}","1670426231":"End Time","1671232191":"You have set the following limits:","1674163852":"You can determine the expiry of your contract by setting the duration or end time.","1675030608":"To create this account first we need you to resubmit your proof of address.","1675289747":"Switched to real account","1676549796":"Dynamic Leverage","1677027187":"Forex","1677990284":"My apps","1679743486":"1. Go to Quick strategy and select the strategy you want.","1680666439":"Upload your bank statement showing your name, account number, and transaction history.","1682409128":"Untitled Strategy","1682636566":"Resend email in","1683522174":"Top-up","1683963454":"Your contract will be closed automatically at the next available asset price on {{date}} at {{timestamp}}.","1684419981":"What's this?","1686800117":"{{error_msg}}","1687173740":"Get more","1689103988":"Second Since Epoch","1689258195":"We were unable to verify your address with the details you provided. Please check and resubmit or choose a different document type.","1691335819":"To continue trading with us, please confirm who you are.","1691765860":"- Negation","1692912479":"Deriv MT5, Deriv X","1693614409":"Start time","1694331708":"You can switch between CFDs, digital options, and multipliers at any time.","1694517345":"Enter a new email address","1698624570":"2. Hit Ok to confirm.","1700233813":"Transfer from {{selected_value}} is not allowed, Please choose another account from dropdown","1701447705":"Please update your address","1702339739":"Common mistakes","1703091957":"We collect information about your employment as part of our due diligence obligations, as required by anti-money laundering legislation.","1704656659":"How much experience do you have in CFD trading?","1708413635":"For your {{currency_name}} ({{currency}}) account","1709401095":"Trade CFDs on Deriv X with financial markets and our Derived indices.","1709859601":"Exit Spot Time","1710662619":"If you have the app, launch it to start trading.","1711013665":"Anticipated account turnover","1711676335":"square root","1711929663":"Your funds have been transferred","1712357617":"Invalid email address.","1714255392":"To enable withdrawals, please complete your financial assessment.","1715011380":"Jump 25 Index","1715630945":"Returns the total profit in string format","1717023554":"Resubmit documents","1719248689":"EUR/GBP/USD","1720451994":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv fiat and Deriv cryptocurrency accounts.","1720968545":"Upload passport photo page from your computer","1723589564":"Represents the maximum number of outstanding contracts in your portfolio. Each line in your portfolio counts for one open position. Once the maximum is reached, you will not be able to open new positions without closing an existing position first.","1724696797":"You are limited to one fiat account only.","1725958461":"Account number","1726472773":"Function with no return value","1726565314":"Close my account","1728121741":"Transactions.csv","1728183781":"About Tether","1729145421":"Risk warning","1731747596":"The block(s) highlighted in red are missing input values. Please update them and click \"Run bot\".","1732891201":"Sell price","1733711201":"Regulators/external dispute resolution","1734185104":"Balance: %1","1734264460":"Disclaimer","1736292549":"Update postal code","1737352280":"Bot.init is not called","1738094481":"<0>Duration: Ticks 1","1738681493":"Remove your glasses, if necessary","1739086943":"Wall Street 30","1739384082":"Unemployed","1739668049":"Close your account","1740371444":"Underlying market is not selected","1742256256":"Please upload one of the following documents:","1743448290":"Payment agents","1743679873":"If you select <0>\"Call\", you’ll earn a <1>payout if the <1>final price is above the <1>strike price at <1>expiry. Otherwise, you won’t receive a payout.","1743902050":"Complete your financial assessment","1744509610":"Just drag the XML file from your computer onto the workspace, and your bot will be loaded accordingly. Alternatively, you can hit Import in Bot Builder, and choose to import your bot from your computer or from your Google Drive.","1745523557":"- Square root","1746051371":"Download the app","1746273643":"Moving Average Convergence Divergence","1747501260":"Sell conditions","1747523625":"Go back","1747674345":"Please use `.` as a decimal separator for fractional numbers.","1747682136":"Contract was cancelled.","1748754976":"Run","1749675724":"Deriv charges no commission across all account types.","1750065391":"Login time:","1753183432":"We take all complaints seriously and aim to resolve them as quickly and fairly as possible. If you are unhappy with any aspect of our service, please let us know by submitting a complaint using the guidance below:","1753226544":"remove","1753975551":"Upload passport photo page","1756678453":"break out","1758386013":"Do not get lured to fake \"Deriv\" pages!","1761038852":"Let’s continue with providing proofs of address and identity.","1761762171":"Restart last trade on error (bot ignores the unsuccessful trade): {{ checkbox }}","1762707297":"Phone number","1762746301":"MF4581125","1763123662":"Upload your NIMC slip.","1766212789":"Server maintenance starts at 06:00 GMT every Sunday and may last up to 2 hours. You may experience service disruption during this time.","1766993323":"Only letters, numbers, and underscores are allowed.","1767429330":"Add a Derived account","1768293340":"Contract value","1768861315":"Minute","1768918213":"Only letters, space, hyphen, period, and apostrophe are allowed.","1769068935":"Choose any of these exchanges to buy cryptocurrencies:","1771037549":"Add a Deriv real account","1771592738":"Conditional block","1777847421":"This is a very common password","1778893716":"Click here","1779144409":"Account verification required","1779519903":"Should be a valid number.","1780442963":"Scan the QR code to download {{ platform }}.","1780770384":"This block gives you a random fraction between 0.0 to 1.0.","1781393492":"We do not charge a transfer fee for transfers in the same currency between your Deriv fiat and {{platform_name_mt5}} accounts, your Deriv fiat and {{platform_name_derivez}} accounts and your Deriv fiat and {{platform_name_dxtrade}} accounts.","1782308283":"Quick strategy","1782395995":"Last Digit Prediction","1782690282":"Blocks menu","1782703044":"Sign up","1783526986":"How do I build a trading bot?","1783740125":"Upload your selfie","1787135187":"Postal/ZIP code is required","1787492950":"Indicators on the chart tab are for indicative purposes only and may vary slightly from the ones on the {{platform_name_dbot}} workspace.","1788515547":"<0/>For more information on submitting a complaint with the Office of the Arbiter for Financial Services, please <1>see their guidance.","1788966083":"01-07-1999","1789273878":"Payout per point","1789497185":"Make sure your passport details are clear to read, with no blur or glare","1790770969":"FX-majors (standard/micro lots), FX-minors, Commodities, Cryptocurrencies","1791017883":"Check out this <0>user guide.","1791432284":"Search for country","1791971912":"Recent","1793913365":"To deposit money, please switch to your {{currency_symbol}} account.","1794815502":"Download your transaction history.","1796787905":"Please upload the following document(s).","1798943788":"You can only make deposits.","1801093206":"Get candle list","1801270786":"Ready to automate your trading strategy without writing any code? You’ve come to the right place.","1801927731":"{{platform_name_dxtrade}} accounts","1803338729":"Choose what type of contract you want to trade. For example, for the Rise/Fall trade type you can choose one of three options: Rise, Fall, or Both. Selected option will determine available options for the Purchase block.","1804620701":"Expiration","1804789128":"{{display_value}} Ticks","1806017862":"Max. ticks","1806355993":"No commission","1808058682":"Blocks are loaded successfully","1808393236":"Login","1808867555":"This block uses the variable “i” to control the iterations. With each iteration, the value of “i” is determined by the items in a given list.","1810217569":"Please refresh this page to continue.","1811109068":"Jurisdiction","1811972349":"Market","1811973475":"Returns a specific character from a given string","1812006199":"Identity verification","1812582011":"Connecting to server","1813700208":"Boom 300 Index","1813958354":"Remove comment","1815034361":"alphabetic","1815905959":"DTrader, DBot, SmartTrader, and Binary Bot","1815995250":"Buying contract","1816126006":"Trade on Deriv MT5 ({{platform_name_dmt5}}), the all-in-one FX and CFD trading platform.","1817154864":"This block gives you a random number from within a set range.","1820242322":"e.g. United States","1820332333":"Top up","1821818748":"Enter Driver License Reference number","1823177196":"Most popular","1824193700":"This block gives you the last digit of the latest tick value.","1824292864":"Call","1827607208":"File not uploaded.","1828370654":"Onboarding","1830520348":"{{platform_name_dxtrade}} Password","1831847842":"I confirm that the name and date of birth above match my chosen identity document (see below)","1833481689":"Unlock","1833499833":"Proof of identity documents upload failed","1836767074":"Search payment agent name","1837762008":"Please submit your proof of identity and proof of address to verify your account in your account settings to access the cashier.","1838639373":"Resources","1839021527":"Please enter a valid account number. Example: CR123456789","1840865068":"set {{ variable }} to Simple Moving Average Array {{ dummy }}","1841381387":"Get more wallets","1841788070":"Palladium/USD","1841996888":"Daily loss limit","1842266423":"back","1842862156":"Welcome to your Deriv X dashboard","1843658716":"If you select \"Only Downs\", you win the payout if consecutive ticks fall successively after the entry spot. No payout if any tick rises or is equal to any of the previous ticks.","1845892898":"(min: {{min_stake}} - max: {{max_payout}})","1846266243":"This feature is not available for demo accounts.","1846587187":"You have not selected your country of residence","1846664364":"{{platform_name_dxtrade}}","1849484058":"Any unsaved changes will be lost.","1850031313":"- Low: the lowest price","1850132581":"Country not found","1850659345":"- Payout: the payout of the contract","1850663784":"Submit proofs","1851052337":"Place of birth is required.","1851776924":"upper","1854480511":"Cashier is locked","1854874899":"Back to list","1855566768":"List item position","1856485118":"Please <0>resubmit your proof of address to transfer funds between MT5 and Deriv accounts.","1856755117":"Pending action required","1856932069":"For Long:","1858251701":"minute","1859308030":"Give feedback","1863053247":"Please upload your identity document.","1863694618":"Trade CFDs on MT5 with forex, stocks, stock indices, commodities, and cryptocurrencies.","1863731653":"To receive your funds, contact the payment agent","1865525612":"No recent transactions.","1866811212":"Deposit in your local currency via an authorised, independent payment agent in your country.","1866836018":"<0/><1/>If your complaint relates to our data processing practices, you can submit a formal complaint to your local supervisory authority.","1867217564":"Index must be a positive integer","1867783237":"High-to-Close","1869315006":"See how we protect your funds to unlock the cashier.","1869787212":"Even","1870933427":"Crypto","1871196637":"True if the result of the last trade matches the selection","1871377550":"Do you offer pre-built trading bots on Deriv Bot?","1871664426":"Note","1873838570":"Please verify your address","1874481756":"Use this block to purchase the specific contract you want. You may add multiple Purchase blocks together with conditional blocks to define your purchase conditions. This block can only be used within the Purchase conditions block.","1874756442":"BVI","1875702561":"Load or build your bot","1876015808":"Social Security and National Insurance Trust","1876325183":"Minutes","1877225775":"Your proof of address is verified","1877832150":"# from end","1878172674":"No, we don't. However, you'll find quick strategies on Deriv Bot that'll help you build your own trading bot for free.","1879042430":"Appropriateness Test, WARNING:","1879412976":"Profit amount: <0>{{profit}}","1879651964":"<0>Pending verification","1880029566":"Australian Dollar","1880097605":"prompt for {{ string_or_number }} with message {{ input_text }}","1880875522":"Create \"get %1\"","1881018702":"hour","1881587673":"Total stake since you last cleared your stats.","1882825238":"Restart trading conditions","1883531976":"Clerks","1885708031":"#","1889357660":"Enter a value in minutes, up to 60480 minutes (equivalent to 6 weeks).","1890171328":"By clicking Accept below and proceeding with the Account Opening you should note that you may be exposing yourself to risks (which may be significant, including the risk of loss of the entire sum invested) that you may not have the knowledge and experience to properly assess or mitigate.","1890332321":"Returns the number of characters of a given string of text, including numbers, spaces, punctuation marks, and symbols.","1893869876":"(lots)","1894667135":"Please verify your proof of address","1898670234":"{{formatted_opening_time}} (GMT) on {{opening_day}},<0> {{opening_date}}.","1899898605":"Maximum size: 8MB","1902547203":"MetaTrader 5 MacOS app","1903437648":"Blurry photo detected","1905032541":"We're now ready to verify your identity","1905589481":"If you want to change your account currency, please contact us via <0>live chat.","1906213000":"Our system will finish any Deriv Bot trades that are running, and Deriv Bot will not place any new trades.","1906639368":"If this is the first time you try to create a password, or you have forgotten your password, please reset it.","1907884620":"Add a real Deriv Gaming account","1908239019":"Make sure all of the document is in the photo","1908686066":"Appropriateness Test Warning","1909647105":"TRX/USD","1909769048":"median","1913777654":"Switch account","1914014145":"Today","1914270645":"Default Candle Interval: {{ candle_interval_type }}","1914725623":"Upload the page that contains your photo.","1917178459":"Bank Verification Number","1917523456":"This block sends a message to a Telegram channel. You will need to create your own Telegram bot to use this block.","1918796823":"Please enter a stop loss amount.","1918832194":"No experience","1919030163":"Tips to take a good selfie","1919594496":"{{website_name}} is not affiliated with any payment agents. Customers deal with payment agents at their sole risk. Customers are advised to check the credentials of payment agents and the accuracy of any information about payment agents (on {{website_name}} or elsewhere) before using their services.","1919694313":"To start trading, transfer funds from your Deriv account into this account.","1920217537":"Compare","1920468180":"How to use the SMA block","1921634159":"A few personal details","1921914669":"Deposit with Deriv P2P","1922529883":"Boom 1000 Index","1922955556":"Use a longer keyboard pattern with more turns","1923431535":"“Stop loss” is deactivated and will only be available when “Deal cancellation” expires.","1924365090":"Maybe later","1924765698":"Place of birth*","1926987784":"- iOS: Swipe left on the account and tap <0>Delete.","1928930389":"GBP/NOK","1929309951":"Employment Status","1929379978":"Switch between your demo and real accounts.","1929694162":"Compare accounts","1930899934":"Tether","1931659123":"Run on every tick","1931884033":"It seems that your date of birth in the document is not the same as your Deriv profile. Please update your date of birth in the <0>Personal details page to solve this issue.","1934450653":"For <0>Contract type, set it to Both.","1938327673":"Deriv {{platform}} <0>{{is_demo}}","1939014728":"How do I remove blocks from the workspace?","1939902659":"Signal","1940408545":"Delete this token","1941915555":"Try later","1942091675":"Cryptocurrency trading is not available for clients residing in the United Kingdom.","1943440862":"Calculates Bollinger Bands (BB) list from a list with a period","1944204227":"This block returns current account balance.","1947527527":"1. This link was sent by you","1948092185":"GBP/CAD","1949719666":"Here are the possible reasons:","1950413928":"Submit identity documents","1952580688":"Submit passport photo page","1955219734":"Town/City*","1957759876":"Upload identity document","1958807602":"4. 'Table' takes an array of data, such as a list of candles, and displays it in a table format.","1959678342":"Highs & Lows","1960240336":"first letter","1964097111":"USD","1964165648":"Connection lost","1965916759":"Asian options settle by comparing the last tick with the average spot over the period.","1966023998":"2FA enabled","1966281100":"Console {{ message_type }} value: {{ input_message }}","1968025770":"Bitcoin Cash","1968077724":"Agriculture","1968368585":"Employment status","1970060713":"You’ve successfully deleted a bot.","1971898712":"Add or manage account","1973060793":"- maximum loss: Use this variable to store your maximum loss limit. You can assign any amount you want, but it must be a positive number.","1973536221":"You have no open positions yet.","1973564194":"You are limited to one fiat account. You won’t be able to change your account currency if you have already made your first deposit or created a real {{dmt5_label}} or {{platform_name_dxtrade}} account.","1973910243":"Manage your accounts","1974273865":"This scope will allow third-party apps to view your account activity, settings, limits, balance sheets, trade purchase history, and more.","1974903951":"If you hit Yes, the info you entered will be lost.","1981940238":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name_svg}} and {{legal_entity_name_v}}.","1982912252":"Relative Strength Index (RSI) from a list with a period","1983001416":"Define your trade options such as multiplier and stake. This block can only be used with the multipliers trade type. If you select another trade type, this block will be replaced with the Trade options block.","1983358602":"This policy, which may change from time to time, applies to your account registered with {{legal_entity_name}}.","1983387308":"Preview","1983480826":"Sign in","1983544897":"P.O. Box is not accepted in address","1983676099":"Please check your email for details.","1984700244":"Request an input","1984742793":"Uploading documents","1985366224":"Each day, you can make up to {{ allowed_internal }} transfers between your Deriv accounts and up to {{ allowed_mt5 }} transfers between your Deriv and {{platform_name_mt5}} accounts.","1985637974":"Any blocks placed within this block will be executed at every tick. If the default candle interval is set to 1 minute in the Trade Parameters root block, the instructions in this block will be executed once every minute. Place this block outside of any root block.","1986498784":"BTC/LTC","1987080350":"Demo","1987447369":"Your cashier is locked","1988153223":"Email address","1988302483":"Take profit:","1988601220":"Duration value","1990331072":"Proof of ownership","1990735316":"Rise Equals","1991055223":"View the market price of your favourite assets.","1991448657":"Don't know your tax identification number? Click <0>here to learn more.","1991524207":"Jump 100 Index","1994023526":"The email address you entered had a mistake or typo (happens to the best of us).","1994558521":"The platforms aren’t user-friendly.","1994600896":"This block requires a list of candles as an input parameter.","1995023783":"First line of address*","1996767628":"Please confirm your tax information.","1997138507":"If the last tick is equal to the average of the ticks, you don't win the payout.","1997313835":"Your stake will continue to grow as long as the current spot price remains within a specified <0>range from the <0>previous spot price. Otherwise, you lose your stake and the trade is terminated.","1998199587":"You can also exclude yourself entirely for a specified duration. If, at any time, you decide to trade again, you must then contact our Customer Support to remove this self-exclusion. There will be a 24-hour-cooling-off period before you can resume trading. ","1999346412":"For faster verification, input the same address here as in your proof of address document (see section below)","2001222130":"Check your spam or junk folder. If it's not there, try resending the email.","2004395123":"New trading tools for MT5","2004792696":"If you are a UK resident, to self-exclude from all online gambling companies licensed in Great Britain, go to <0>www.gamstop.co.uk.","2007028410":"market, trade type, contract type","2007092908":"Trade with leverage and low spreads for better returns on successful trades.","2010759971":"Uploads successful","2010866561":"Returns the total profit/loss","2011609940":"Please input number greater than 0","2011808755":"Purchase Time","2014536501":"Card number","2014590669":"Variable '{{variable_name}}' has no value. Please set a value for variable '{{variable_name}}' to notify.","2017672013":"Please select the country of document issuance.","2020545256":"Close your account?","2021037737":"Please update your details to continue.","2021161151":"Watch this video to learn how to build a trading bot on Deriv Bot. Also, check out this blog post on building a trading bot.","2023659183":"Student","2023762268":"I prefer another trading website.","2025339348":"Move away from direct light — no glare","2027625329":"Simple Moving Average Array (SMAA)","2027696535":"Tax information","2028163119":"EOS/USD","2029237955":"Labuan","2029641956":"CFDCompareAccounts","2030018735":"RSI is a technical analysis tool that helps you identify the market trend. It will give you a value from 0 to 100. An RSI value of 70 and above means that the asset is overbought and the current trend may reverse, while a value of 30 and below means that the asset is oversold.","2030045667":"Message","2033648953":"This block gives you the specified candle value for a selected time interval.","2034803607":"You must be 18 years old and above.","2035258293":"Start trading with us","2035925727":"sort {{ sort_type }} {{ sort_direction }} {{ input_list }}","2036578466":"Should be {{value}}","2037607934":"The purchase of <0>{{trade_type_name}} contract has been completed successfully for the amount of <0> {{buy_price}} {{currency}}","2037665157":"Expand All Blocks","2037906477":"get sub-list from #","2042023623":"We’re reviewing your documents. This should take about 5 minutes.","2042050260":"- Purchase price: the purchase price (stake) of the contract","2042115724":"Upload a screenshot of your account and personal details page with your name, account number, phone number, and email address.","2044086432":"The close is the latest tick at or before the end time. If you selected a specific end time, the end time is the selected time.","2046273837":"Last tick","2046577663":"Import or choose your bot","2048110615":"Email address*","2048134463":"File size exceeded.","2049386104":"We need you to submit these in order to get this account:","2050170533":"Tick list","2051558666":"View transaction history","2054889300":"Create \"%1\"","2055317803":"Copy the link to your mobile browser","2057082550":"Accept our updated <0>terms and conditions","2057419639":"Exit Spot","2059365224":"Yes, you can get started with a pre-built bot using the Quick strategy feature. You’ll find some of the most popular trading strategies here: Martingale, D'Alembert, and Oscar's Grind. Just select the strategy, enter your trade parameters, and your bot will be created for you. You can always tweak the parameters later.","2059753381":"Why did my verification fail?","2060873863":"Your order {{order_id}} is complete","2062912059":"function {{ function_name }} {{ function_params }}","2063655921":"By purchasing the \"Close-to-Low\" contract, you'll win the multiplier times the difference between the close and low over the duration of the contract.","2063812316":"Text Statement","2063890788":"Cancelled","2065278286":"Spread","2067903936":"Driving licence","2070002739":"Don’t accept","2070345146":"When opening a leveraged CFD trade.","2070518923":"Import your bot or tap Quick Strategies to choose from the ready-to-use bot templates.","2070752475":"Regulatory Information","2071043849":"Browse","2073813664":"CFDs, Options or Multipliers","2074235904":"Last name is required.","2074497711":"The Telegram notification could not be sent","2074713563":"4.2. Submission of a complaint","2080553498":"3. Get the chat ID using the Telegram REST API (read more: https://core.telegram.org/bots/api#getupdates)","2080829530":"Sold for: {{sold_for}}","2082533832":"Yes, delete","2084693624":"Converts a string representing a date/time string into seconds since Epoch. Example: 2019-01-01 21:03:45 GMT+0800 will be converted to 1546347825. Time and time zone offset are optional.","2085387371":"Must be numbers, letters, and special characters . , ' -","2085602195":"- Entry value: the value of the first tick of the contract","2086742952":"You have added a real Options account.<0/>Make a deposit now to start trading.","2086792088":"Both barriers should be relative or absolute","2088735355":"Your session and login limits","2089581483":"Expires on","2090650973":"The spot price may change by the time your order reaches our servers. When this happens, your payout may be affected.","2091671594":"Status","2093675079":"- Close: the closing price","2096014107":"Apply","2096456845":"Date of birth*","2096603244":"Derived - Vanuatu","2097170986":"About Tether (Omni)","2097365786":"A copy of your identity document (identity card, passport)","2097381850":"Calculates Simple Moving Average line from a list with a period","2097932389":"Upload 2 separate screenshots from the personal details page and the account page via <0>https://app.astropay.com/profile","2100713124":"account","2101972779":"This is the same as the above example, using a tick list.","2102572780":"Length of digit code must be 6 characters.","2104115663":"Last login","2104364680":"Please switch to your demo account to run your Deriv Bot.","2104397115":"Please go to your account settings and complete your personal details to enable deposits and withdrawals.","2107381257":"Scheduled cashier system maintenance","2109312805":"The spread is the difference between the buy price and sell price. A variable spread means that the spread is constantly changing, depending on market conditions. A fixed spread remains constant but is subject to alteration, at the Broker's absolute discretion.","2110365168":"Maximum number of trades reached","2111015970":"This block helps you check if your contract can be sold. If your contract can be sold, it returns “True”. Otherwise, it returns an empty string.","2111528352":"Creating a variable","2112119013":"Take a selfie showing your face","2112175277":"with delimiter","2113321581":"Add a Deriv Gaming account","2115223095":"Loss","2117073379":"Our cryptocurrency cashier is temporarily down due to system maintenance. You can access the Cashier in a few minutes when the maintenance is complete.","2117165122":"1. Create a Telegram bot and get your Telegram API token. Read more on how to create bots in Telegram here: https://core.telegram.org/bots#6-botfather","2117489390":"Auto update in {{ remaining }} seconds","2118315870":"Where do you live?","2119449126":"Example output of the below example will be:","2119710534":"FAQ","2121227568":"NEO/USD","2122152120":"Assets","2127564856":"Withdrawals are locked","2131963005":"Please withdraw your funds from the following Deriv MT5 account(s):","2133451414":"Duration","2133470627":"This block returns the potential payout for the selected trade type. This block can be used only in the \"Purchase conditions\" root block.","2135563258":"Forex trading frequency","2136246996":"Selfie uploaded","2137901996":"This will clear all data in the summary, transactions, and journal panels. All counters will be reset to zero.","2137993569":"This block compares two values and is used to build a conditional structure.","2138861911":"Scans and photocopies are not accepted","2139171480":"Reset Up/Reset Down","2139362660":"left side","2141055709":"New {{type}} password","2141873796":"Get more info on <0>CFDs, <1>multipliers, and <2>options.","2143803283":"Purchase Error","2144609616":"If you select \"Reset-Down”, you win the payout if the exit spot is strictly lower than either the entry spot or the spot at reset time.","2145690912":"Income Earning","2145995536":"Create new account","2146336100":"in text %1 get %2","2146698770":"Pro tip: You can also click and drag out the desired block","2146892766":"Binary options trading experience","2147244655":"How do I import my own trading bot into Deriv Bot?","-1232613003":"<0>Verification failed. <1>Why?","-2029508615":"<0>Need verification.<1>Verify now","-931052769":"Submit verification","-1004605898":"Tips","-1938142055":"Documents uploaded","-448090287":"The link only works on mobile devices","-1244287721":"Something's gone wrong","-241258681":"You'll need to restart your verification on your computer","-929254273":"Get secure link","-2021867851":"Check back here to finish the submission","-1547069149":"Open the link and complete the tasks","-1767652006":"Here's how to do it:","-277611959":"You can now return to your computer to continue","-724178625":"Make sure full document is visible","-1519380038":"Glare detected","-1895280620":"Make sure your card details are clear to read, with no blur or glare","-1464447919":"Make sure your permit details are clear to read, with no blur or glare","-1436160506":"Make sure details are clear to read, with no blur or glare","-759124288":"Close","-759118956":"Redo","-753375398":"Enlarge image","-1042933881":"Driver's license","-1503134764":"Face photo page","-1335343167":"Sorry, no mobile phone bills","-699045522":"Documents you can use to verify your identity","-543666102":"It must be an official photo ID","-903877217":"These are the documents most likely to show your current home address","-1356835948":"Choose document","-1364375936":"Select a %{country} document","-401586196":"or upload photo – no scans or photocopies","-3110517":"Take a photo with your phone","-2033894027":"Submit identity card (back)","-20684738":"Submit license (back)","-1359585500":"Submit license (front)","-106779602":"Submit residence permit (back)","-1287247476":"Submit residence permit (front)","-1954762444":"Restart the process on the latest version of Safari","-261174676":"Must be under 10MB.","-685885589":"An error occurred while loading the component","-502539866":"Your face is needed in the selfie","-1377968356":"Please try again","-1226547734":"Try using a JPG or PNG file","-849068301":"Loading...","-1730346712":"Loading","-1849371752":"Check that your number is correct","-309848900":"Copy","-1424436001":"Send link","-1093833557":"How to scan a QR code","-1408210605":"Point your phone’s camera at the QR code","-1773802163":"If it doesn’t work, download a QR code scanner from Google Play or the App Store","-109026565":"Scan QR code","-1644436882":"Get link via SMS","-1667839246":"Enter mobile number","-1533172567":"Enter your mobile number:","-1352094380":"Send this one-time link to your phone","-28974899":"Get your secure link","-359315319":"Continue","-1279080293":"2. Your desktop window stays open","-102776692":"Continue with the verification","-89152891":"Take a photo of the back of your card","-1646367396":"Take a photo of the front of your card","-1350855047":"Take a photo of the front of your license","-2119367889":"Take a photo using the basic camera mode instead","-342915396":"Take a photo","-419040068":"Passport photo page","-1354983065":"Refresh","-1925063334":"Recover camera access to continue face verification","-54784207":"Camera access is denied","-1392699864":"Allow camera access","-269477401":"Provide the whole document page for best results","-864639753":"Upload back of card from your computer","-1309771027":"Upload front of license from your computer","-1722060225":"Take photo","-565732905":"Selfie","-1703181240":"Check that it is connected and functional. You can also continue verification on your phone","-2043114239":"Camera not working?","-2029238500":"It may be disconnected. Try using your phone instead.","-468928206":"Make sure your device's camera works","-466246199":"Camera not working","-698978129":"Remember to press stop when you're done. Redo video actions","-538456609":"Looks like you took too long","-781816433":"Photo of your face","-1471336265":"Make sure your selfie clearly shows your face","-1375068556":"Check selfie","-1914530170":"Face forward and make sure your eyes are clearly visible","-776541617":"We'll compare it with your document","-478752991":"Your link will expire in one hour","-1859729380":"Keep this window open while using your mobile","-1283761937":"Resend link","-629011256":"Don't refresh this page","-1005231905":"Once you've finished we'll take you to the next step","-542134805":"Upload photo","-1462975230":"Document example","-1472844935":"The photo should clearly show your document","-189310067":"Account closed","-1823540512":"Personal details","-849320995":"Assessments","-773766766":"Email and passwords","-1466827732":"Self exclusion","-1498206510":"Account limits","-241588481":"Login history","-966136867":"Connected apps","-213009361":"Two-factor authentication","-1214803297":"Dashboard-only path","-526636259":"Error 404","-1227878799":"Speculative","-1196936955":"Upload a screenshot of your name and email address from the personal information section.","-1286823855":"Upload your mobile bill statement showing your name and phone number.","-1309548471":"Upload your bank statement showing your name and account details.","-1410396115":"Upload a photo showing your name and the first six and last four digits of your card number. If the card does not display your name, upload the bank statement showing your name and card number in the transaction history.","-3805155":"Upload a screenshot of either of the following to process the transaction:","-1523487566":"- your account profile section on the website","-613062596":"- the Account Information page on the app","-1718304498":"User ID","-609424336":"Upload a screenshot of your name, account number, and email address from the personal details section of the app or profile section of your account on the website.","-1954436643":"Upload a screenshot of your username on the General Information page at <0>https://onlinenaira.com/members/index.htm","-79853954":"Upload a screenshot of your account number and phone number on the Bank Account/Mobile wallet page at <0>https://onlinenaira.com/members/bank.htm","-1192882870":"Upload a screenshot of your name and account number from the personal details section.","-1120954663":"First name*","-1659980292":"First name","-962979523":"Your {{ field_name }} as in your identity document","-1416797980":"Please enter your {{ field_name }} as in your official identity documents.","-1466268810":"Please remember that it is your responsibility to keep your answers accurate and up to date. You can update your personal details at any time in your <0>account settings.","-32386760":"Name","-766265812":"first name","-1857534296":"John","-1282749116":"last name","-1485480657":"Other details","-1784741577":"date of birth","-1702919018":"Second line of address (optional)","-1315410953":"State/Province","-2040322967":"Citizenship","-344715612":"Employment status*","-1543016582":"I hereby confirm that the tax information I provided is true and complete. I will also inform {{legal_entity_name}} about any changes to this information.","-946282997":"Additional information","-1315571766":"Place of birth","-789291456":"Tax residence*","-1692219415":"Tax residence","-1903720068":"The country in which you meet the criteria for paying taxes. Usually the country in which you physically reside.","-651516152":"Tax Identification Number","-1387062433":"Account opening reason","-222283483":"Account opening reason*","-1113902570":"Details","-71696502":"Previous","-1541554430":"Next","-987011273":"Your proof of ownership isn't required.","-808299796":"You are not required to submit proof of ownership at this time. We will inform you if proof of ownership is required in the future.","-179726573":"We’ve received your proof of ownership.","-813779897":"Proof of ownership verification passed.","-638756912":"Black out digits 7 to 12 of the card number that’s shown on the front of your debit/credit card.⁤","-2073934245":"The financial trading services offered on this site are only suitable for customers who accept the possibility of losing all the money they invest and who understand and have experience of the risk involved in the purchase of financial contracts. Transactions in financial contracts carry a high degree of risk. If the contracts you purchased expire as worthless, you will lose all your investment, which includes the contract premium.","-1166068675":"Your account will be opened with {{legal_entity_name}}, regulated by the UK Gaming Commission (UKGC), and will be subject to the laws of the Isle of Man.","-975118358":"Your account will be opened with {{legal_entity_name}}, regulated by the Malta Financial Services Authority (MFSA), and will be subject to the laws of Malta.","-680528873":"Your account will be opened with {{legal_entity_name}} and will be subject to the laws of Samoa.","-1125193491":"Add account","-2068229627":"I am not a PEP, and I have not been a PEP in the last 12 months.","-684271315":"OK","-740157281":"Trading Experience Assessment","-1720468017":"In providing our services to you, we are required to obtain information from you in order to assess whether a given product or service is appropriate for you.","-186841084":"Change your login email","-907403572":"To change your email address, you'll first need to unlink your email address from your {{identifier_title}} account.","-1850792730":"Unlink from {{identifier_title}}","-307865807":"Risk Tolerance Warning","-690100729":"Yes, I understand the risk.","-2010628430":"CFDs and other financial instruments come with a high risk of losing money rapidly due to leverage. You should consider whether you understand how CFDs and other financial instruments work and whether you can afford to take the high risk of losing your money. <0/><0/> To continue, you must confirm that you understand your capital is at risk.","-863770104":"Please note that by clicking ‘OK’, you may be exposing yourself to risks. You may not have the knowledge or experience to properly assess or mitigate these risks, which may be significant, including the risk of losing the entire sum you have invested.","-1292808093":"Trading Experience","-2145244263":"This field is required","-884768257":"You should enter 0-35 characters.","-1784470716":"State is not in a proper format","-1699820408":"Please enter a {{field_name}} under {{max_number}} characters.","-1575567374":"postal/ZIP code","-2113555886":"Only letters, numbers, space, and hyphen are allowed.","-874280157":"This Tax Identification Number (TIN) is invalid. You may continue using it, but to facilitate future payment processes, valid tax information will be required.","-1174064217":"Mr","-855506127":"Ms","-1037916704":"Miss","-634958629":"We use the information you give us only for verification purposes. All information is kept confidential.","-731992635":"Title*","-352888977":"Title","-136976514":"Country of residence*","-945104751":"We’re legally obliged to ask for your tax information.","-1024240099":"Address","-1124948631":"Professional Client","-259515058":"By default, all {{brand_website_name}} clients are retail clients but anyone can request to be treated as a professional client.","-1463348492":"I would like to be treated as a professional client.","-1958764604":"Email preference","-2121071263":"Check this box to receive updates via email.","-2068064150":"Get updates about Deriv products, services and events.","-1558679249":"Please make sure your information is correct or it may affect your trading experience.","-179005984":"Save","-2116332353":"Please close your positions in the following Deriv account(s):","-2048005267":"{{number_of_positions}} position(s)","-1923892687":"Please withdraw your funds from the following Deriv X account(s):","-1629894615":"I have other financial priorities.","-844051272":"I want to stop myself from trading.","-1113965495":"I’m no longer interested in trading.","-1224285232":"Customer service was unsatisfactory.","-9323953":"Remaining characters: {{remaining_characters}}","-839094775":"Back","-2061895474":"Closing your account will automatically log you out. We shall delete your personal information as soon as our legal obligations are met.","-203298452":"Close account","-937707753":"Go Back","-1219849101":"Please select at least one reason","-484540402":"An error occurred","-1911549768":"Inaccessible MT5 account(s)","-1869355019":"Action required","-1030102424":"You can't trade on Deriv.","-448385353":"You can't make transactions.","-1058447223":"Before closing your account:","-912764166":"Withdraw your funds.","-60139953":"We shall delete your personal information as soon as our legal obligations are met, as mentioned in the section on Data Retention in our <0>Security and privacy policy","-1725454783":"Failed","-506510414":"Date and time","-1708927037":"IP address","-619126443":"Use the <0>Deriv password to log in to {{brand_website_name}} and {{platform_name_trader}}.","-623760979":"Use the <0>Deriv password to log in to {{brand_website_name}}, {{platform_name_trader}} and {{platform_name_go}}.","-459147994":"Use the <0>Deriv password to log in to {{brand_website_name}}, {{platform_name_go}}, {{platform_name_trader}}, {{platform_name_smarttrader}}, {{platform_name_dbot}} and {{platform_name_ctrader}}.","-80717068":"Apps you have linked to your <0>Deriv password:","-9570380":"Use the {{platform_name_dxtrade}} password to log in to your {{platform_name_dxtrade}} accounts on the web and mobile apps.","-2131200819":"Disable","-200487676":"Enable","-1840392236":"That's not the right code. Please try again.","-2067796458":"Authentication code","-790444493":"Protect your account with 2FA. Each time you log in to your account, you will need to enter your password and an authentication code generated by a 2FA app on your smartphone.","-368010540":"You have enabled 2FA for your Deriv account.","-403552929":"To disable 2FA, please enter the six-digit authentication code generated by your 2FA app below:","-752939584":"How to set up 2FA for your Deriv account","-90649785":"Click here to copy key","-206376148":"Key copied!","-1592318047":"See example","-1376950117":"That file format isn't supported. Please upload .pdf, .png, .jpg, or .jpeg files only.","-1272489896":"Please complete this field.","-397487797":"Enter your full card number","-153346659":"Upload your selfie.","-602131304":"Passport number","-1051213440":"Upload the front and back of your identity card.","-1600807543":"First, enter your identity card number and the expiry date.","-1139923664":"Next, upload the front and back of your identity card.","-783705755":"Upload the front of your identity card.","-566750665":"NIMC slip and proof of age","-1465944279":"NIMC slip number","-429612996":"Next, upload both of the following documents.","-376981174":"Upload your proof of age: birth certificate or age declaration document.","-612174191":"First line of address is required","-242734402":"Only {{max}} characters, please.","-378415317":"State is required","-1497654315":"Our accounts and services are unavailable for the Jersey postal code.","-755626951":"Complete your address details","-584911871":"Select wallet currency","-1461267236":"Please choose your currency","-1352330125":"CURRENCY","-1027595143":"Less than $25,000","-40491332":"$25,000 - $50,000","-1139806939":"$50,001 - $100,000","-626752657":"0-1 year","-532014689":"1-2 years","-1001024004":"Over 3 years","-790513277":"6-10 transactions in the past 12 months","-580085300":"11-39 transactions in the past 12 months","-654781670":"Primary","-1717373258":"Secondary","-996132458":"Construction","-915003867":"Health","-1430012453":"Information & Communications Technology","-987824916":"Science & Engineering","-146630682":"Social & Cultural","-761306973":"Manufacturing","-739367071":"Employed","-1156937070":"$500,001 - $1,000,000","-315534569":"Over $1,000,000","-2068544539":"Salaried Employee","-531314998":"Investments & Dividends","-1235114522":"Pension","-1298056749":"State Benefits","-449943381":"Savings & Inheritance","-1631552645":"Professionals","-474864470":"Personal Care, Sales and Service Workers","-1129355784":"Agricultural, Forestry and Fishery Workers","-1242914994":"Craft, Metal, Electrical and Electronics Workers","-1317824715":"Cleaners and Helpers","-1592729751":"Mining, Construction, Manufacturing and Transport Workers","-2137323480":"Company Ownership","-1590574533":"Divorce Settlement","-1667683002":"Inheritance","-1237843731":"Investment Income","-777506574":"Sale of Property","-1161338910":"First name is required.","-1161818065":"Last name should be between 2 and 50 characters.","-1281693513":"Date of birth is required.","-26599672":"Citizenship is required","-912174487":"Phone is required.","-673765468":"Letters, numbers, spaces, periods, hyphens and forward slashes only.","-212167954":"Tax Identification Number is not properly formatted.","-621555159":"Identity information","-204765990":"Terms of use","-231863107":"No","-870902742":"How much knowledge and experience do you have in relation to online trading?","-1929477717":"I have an academic degree, professional certification, and/or work experience related to financial services.","-1540148863":"I have attended seminars, training, and/or workshops related to trading.","-922751756":"Less than a year","-542986255":"None","-1337206552":"In your understanding, CFD trading allows you to","-456863190":"Place a position on the price movement of an asset where the outcome is a fixed return or nothing at all.","-1314683258":"Make a long-term investment for a guaranteed profit.","-1546090184":"How does leverage affect CFD trading?","-1636427115":"Leverage helps to mitigate risk.","-800221491":"Leverage guarantees profits.","-811839563":"Leverage lets you open large positions for a fraction of trade value, which may result in increased profit or loss.","-1185193552":"Close your trade automatically when the loss is equal to or more than a specified amount, as long as there is adequate market liquidity.","-1046354":"Close your trade automatically when the profit is equal to or more than a specified amount, as long as there is adequate market liquidity.","-1842858448":"Make a guaranteed profit on your trade.","-860053164":"When trading multipliers.","-1250327770":"When buying shares of a company.","-1222388581":"All of the above.","-477761028":"Voter ID","-1466346630":"CPF","-1515286538":"Please enter your document number. ","-1694758788":"Enter your document number","-1458676679":"You should enter 2-50 characters.","-1176889260":"Please select a document type.","-1030759620":"Government Officers","-612752984":"These are default limits that we apply to your accounts.","-1598263601":"To learn more about trading limits and how they apply, please go to the <0>Help Centre.","-1411635770":"Learn more about account limits","-1340125291":"Done","-1101543580":"Limit","-858297154":"Represents the maximum amount of cash that you may hold in your account. If the maximum is reached, you will be asked to withdraw funds.","-976258774":"Not set","-1182362640":"Represents the maximum aggregate payouts on outstanding contracts in your portfolio. If the maximum is attained, you may not purchase additional contracts without first closing out existing positions.","-1781293089":"Maximum aggregate payouts on open positions","-1412690135":"*Any limits in your Self-exclusion settings will override these default limits.","-1598751496":"Represents the maximum volume of contracts that you may purchase in any given trading day.","-173346300":"Maximum daily turnover","-138380129":"Total withdrawal allowed","-854023608":"To increase limit please verify your identity","-1500958859":"Verify","-1502578110":"Your account is fully authenticated and your withdrawal limits have been lifted.","-1662154767":"a recent utility bill (e.g. electricity, water, gas, landline, or internet), bank statement, or government-issued letter with your name and this address.","-190838815":"We need this for verification. If the information you provide is fake or inaccurate, you won’t be able to deposit and withdraw.","-223216785":"Second line of address*","-594456225":"Second line of address","-1940457555":"Postal/ZIP Code*","-1964954030":"Postal/ZIP Code","-516397235":"Be careful who you share this token with. Anyone with this token can perform the following actions on your account behalf","-989216986":"Add accounts","-617480265":"Delete token","-316749685":"Are you sure you want to delete this token?","-786372363":"Learn more about API token","-55560916":"To access our mobile apps and other third-party apps, you'll first need to generate an API token.","-198329198":"API Token","-955038366":"Copy this token","-1668692965":"Hide this token","-1661284324":"Show this token","-1076138910":"Trade","-1666909852":"Payments","-488597603":"Trading information","-605778668":"Never","-1628008897":"Token","-1238499897":"Last Used","-1171226355":"Length of token name must be between {{MIN_TOKEN}} and {{MAX_TOKEN}} characters.","-1803339710":"Maximum {{MAX_TOKEN}} characters.","-408613988":"Select scopes based on the access you need.","-5605257":"This scope will allow third-party apps to withdraw to payment agents and make inter-account transfers for you.","-1373485333":"This scope will allow third-party apps to view your trading history.","-758221415":"This scope will allow third-party apps to open accounts for you, manage your settings and token usage, and more. ","-1117963487":"Name your token and click on 'Create' to generate your token.","-2005211699":"Create","-2115275974":"CFDs","-1879666853":"Deriv MT5","-460645791":"You are limited to one fiat account. You won’t be able to change your account currency if you have already made your first deposit or created a real {{dmt5_label}} account.","-1146960797":"Fiat currencies","-1959484303":"Cryptocurrencies","-561724665":"You are limited to one fiat currency only","-2087317410":"Oops, something went wrong.","-184202848":"Upload file","-1447142373":"Click here to upload.","-863586176":"Drag and drop a file or click to browse your files.","-723198394":"File size should be 8MB or less","-1948369500":"File uploaded is not supported","-1040865880":"Drop files here..","-1100235269":"Industry of employment","-684388823":"Estimated net worth","-509054266":"Anticipated annual turnover","-601903492":"Forex trading experience","-1012699451":"CFD trading experience","-1117345066":"Choose the document type","-651192353":"Sample:","-1044962593":"Upload Document","-164448351":"Show less","-1361653502":"Show more","-337620257":"Switch to real account","-2120454054":"Add a real account","-38915613":"Unsaved changes","-2137450250":"You have unsaved changes. Are you sure you want to discard changes and leave this page?","-1067082004":"Leave Settings","-1982432743":"It appears that the address in your document doesn’t match the address\n in your Deriv profile. Please update your personal details now with the\n correct address.","-1451334536":"Continue trading","-1525879032":"Your documents for proof of address is expired. Please submit again.","-1425489838":"Proof of address verification not required","-1008641170":"Your account does not need address verification at this time. We will inform you if address verification is required in the future.","-60204971":"We could not verify your proof of address","-1944264183":"To continue trading, you must also submit a proof of identity.","-1088324715":"We’ll review your documents and notify you of its status within 1 - 3 working days.","-329713179":"Ok","-1926456107":"The ID you submitted is expired.","-555047589":"It looks like your identity document has expired. Please try again with a valid document.","-841187054":"Try Again","-2097808873":"We were unable to verify your ID with the details you provided. ","-228284848":"We were unable to verify your ID with the details you provided.","-1391934478":"Your ID is verified. You will also need to submit proof of your address.","-118547687":"ID verification passed","-200989771":"Go to personal details","-1358357943":"Please check and update your postal code before submitting proof of identity.","-1401994581":"Your personal details are missing","-2004327866":"Please select a valid country of document issuance.","-1664159494":"Country","-749870311":"Please contact us via <0>live chat.","-1084991359":"Proof of identity verification not required","-1981334109":"Your account does not need identity verification at this time. We will inform you if identity verification is required in the future.","-182918740":"Your proof of identity submission failed because:","-155705811":"A clear colour photo or scanned image","-246893488":"JPEG, JPG, PNG, PDF, or GIF","-1454880310":"Must be valid for at least 6 months","-100534371":"Before uploading, please ensure that you’re facing forward in the selfie, your face is within the frame, and your eyes are clearly visible even if you’re wearing glasses.","-1529523673":"Confirm and upload","-705047643":"Sorry, an error occured. Please select another file.","-1664309884":"Tap here to upload","-856213726":"You must also submit a proof of address.","-1389323399":"You should enter {{min_number}}-{{max_number}} characters.","-1313806160":"Please request a new password and check your email for the new token.","-1598167506":"Success","-1077809489":"You have a new {{platform}} password to log in to your {{platform}} accounts on the web and mobile apps.","-2068479232":"{{platform}} password","-1332137219":"Strong passwords contain at least 8 characters that include uppercase and lowercase letters, numbers, and symbols.","-1597186502":"Reset {{platform}} password","-848721396":"These trading limits are optional, and you can strengthen them at any time. If you don’t wish to set a specific limit, leave the field blank. If you live in the United Kingdom, Customer Support can only remove or weaken your trading limits after 24 hours of receiving the request. If you live in the Isle of Man, Customer Support can only remove or weaken your trading limits after your trading limit period has expired.","-469096390":"These trading limits are optional, and you can strengthen them at any time. If you don’t wish to set a specific limit, leave the field blank. Customer Support can only remove or weaken your trading limits after 24 hours of receiving the request.","-42808954":"You can also exclude yourself entirely for a specified duration. This can only be removed once your self-exclusion has expired. If you wish to continue trading once your self-exclusion period expires, you must contact Customer Support by calling <0>+447723580049 to lift this self-exclusion. Requests by chat or email shall not be entertained. There will be a 24-hour cooling-off period before you can resume trading.","-1088698009":"These self-exclusion limits help you control the amount of money and time you spend trading on {{platform_name_trader}}, {{platform_name_dbot}}, {{platform_name_smarttrader}} and {{platform_name_bbot}} on Deriv. The limits you set here will help you exercise <0>responsible trading.","-1702324712":"These limits are optional, and you can adjust them at any time. You decide how much and how long you’d like to trade. If you don’t wish to set a specific limit, leave the field blank.","-1819875658":"You can also exclude yourself entirely for a specified duration. Once the self-exclusion period has ended, you can either extend it further or resume trading immediately. If you wish to reduce or remove the self-exclusion period, contact our <0>Customer Support.","-1031814119":"About trading limits and self-exclusion","-183468698":"Trading limits and self-exclusion","-933963283":"No, review my limits","-1759860126":"Yes, log me out immediately","-572347855":"{{value}} mins","-313333548":"You’ll be able to adjust these limits at any time. You can reduce your limits from the <0>self-exclusion page. To increase or remove your limits, please contact our <1>Customer Support team.","-1265833982":"Accept","-2123139671":"Your stake and loss limits","-1250802290":"24 hours","-2070080356":"Max. total stake","-1545823544":"7 days","-180147209":"You will be automatically logged out from each session after this time limit.","-374553538":"Your account will be excluded from the website until this date (at least 6 months, up to 5 years).","-2121421686":"To self-exclude from all online gambling companies licensed in Great Britain, go to <0>www.gamstop.co.uk.","-2105708790":"Your maximum account balance and open positions","-1960600163":"Once your account balance reaches this amount, you will not be able to deposit funds into your account.","-1073845224":"No. of open position(s)","-288196326":"Your maximum deposit limit","-568749373":"Max. deposit limit","-1884902844":"Max. deposit limit per day","-545085253":"Max. deposit limit over 7 days","-1031006762":"Max. deposit limit over 30 days","-1116871438":"Max. total loss over 30 days","-2134714205":"Time limit per session","-1884271702":"Time out until","-1265825026":"Timeout time must be greater than current time.","-1332882202":"Timeout time cannot be more than 6 weeks.","-1635977118":"Exclude time cannot be less than 6 months.","-1617352279":"The email is in your spam folder (Sometimes things get lost there).","-547557964":"We can’t deliver the email to this address (Usually because of firewalls or filtering).","-142444667":"Please click on the link in the email to change your Deriv MT5 password.","-742748008":"Check your email and click the link in the email to proceed.","-84068414":"Still didn't get the email? Please contact us via <0>live chat.","-428335668":"You will need to set a password to complete the process.","-818898181":"Name in document doesn’t match your Deriv profile.","-310316375":"Address in document doesn’t match address you entered above.","-485368404":"Document issued more than 6-months ago.","-367016488":"Blurry document. All information must be clear and visible.","-1957076143":"Cropped document. All information must be clear and visible.","-2139303636":"You may have followed a broken link, or the page has moved to a new address.","-1448368765":"Error code: {{error_code}} page not found","-254792921":"You can only make deposits at the moment. To enable withdrawals, please complete your financial assessment.","-1437017790":"Financial information","-70342544":"We’re legally obliged to ask for your financial information.","-39038029":"Trading experience","-1894668798":"Other trading instruments experience","-1026468600":"Other trading instruments frequency","-1743024217":"Select Language","-1822545742":"Ether Classic","-1334641066":"Litecoin","-1214036543":"US Dollar","-1782590355":"No currency has been set for this account","-536187647":"Confirm revoke access?","-1357606534":"Permission","-570222048":"Revoke access","-1526404112":"Utility bill: electricity, water, gas, or landline phone bill.","-537552700":"Home rental agreement: valid and current agreement.","-890084320":"Save and submit","-30772747":"Your personal details have been saved successfully.","-1107320163":"Automate your trading, no coding needed.","-829643221":"Multipliers trading platform.","-1585707873":"Financial Commission","-199154602":"Vanuatu Financial Services Commission","-191165775":"Malta Financial Services Authority","-194969520":"Counterparty company","-1089385344":"Deriv (SVG) LLC","-2019617323":"Deriv (BVI) Ltd","-112814932":"Deriv (FX) Ltd","-1131400885":"Deriv Investments (Europe) Limited","-1471207907":"All assets","-781132577":"Leverage","-1591882610":"Synthetics","-543177967":"Stock indices","-362324454":"Commodities","-1071336803":"Platform","-820028470":"Options & Multipliers","-1018945969":"TradersHub","-1856204727":"Reset","-213142918":"Deposits and withdrawals temporarily unavailable ","-224804428":"Transactions","-1186807402":"Transfer","-1308346982":"Derived","-1145604233":"Trade CFDs on MT5 with Derived indices that simulate real-world market movements.","-328128497":"Financial","-1484404784":"Trade CFDs on MT5 with forex, stock indices, commodities, and cryptocurrencies.","-659955365":"Swap-Free","-674118045":"Trade swap-free CFDs on MT5 with synthetics, forex, stocks, stock indices, cryptocurrencies, and ETFs.","-1210359945":"Transfer funds to your accounts","-81256466":"You need a Deriv account to create a CFD account.","-699372497":"Trade with leverage and tight spreads for better returns on successful trades. <0>Learn more","-1884966862":"Get more Deriv MT5 account with different type and jurisdiction.","-145462920":"Deriv cTrader","-982095728":"Get","-1277942366":"Total assets","-1255879419":"Trader's Hub","-493788773":"Non-EU","-673837884":"EU","-230566990":"The following documents you submitted did not pass our checks:","-846812148":"Proof of address.","-2055865877":"Non-EU regulation","-643108528":"Non-EU and EU regulation","-172898036":"CR5236585","-1665192032":"Multipliers account","-744999940":"Deriv account","-1638358352":"Get the upside of CFDs without risking more than your initial stake with <0>Multipliers.","-749129977":"Get a real Deriv account, start trading and manage your funds.","-1814994113":"CFDs <0>{{compare_accounts_title}}","-318106501":"Trade CFDs on MT5 with synthetics, baskets, and derived FX.","-1328701106":"Trade CFDs on MT5 with forex, stocks, stock indices, synthetics, cryptocurrencies, and commodities.","-1173266642":"This account offers CFDs on a feature-rich trading platform.","-1290112064":"Deriv EZ","-1453519913":"Trade CFDs on an easy-to-get-started platform with all your favourite assets.","-2051096382":"Earn a range of payouts by correctly predicting market movements with <0>options, or get the\n upside of CFDs without risking more than your initial stake with <1>multipliers.","-2146691203":"Choice of regulation","-249184528":"You can create real accounts under EU or non-EU regulation. Click the <0><0/> icon to learn more about these accounts.","-1505234170":"Trader's Hub tour","-181080141":"Trading hub tour","-1042025112":"Need help moving around?<0>We have a short tutorial that might help. Hit Repeat tour to begin.","-1536335438":"These are the trading accounts available to you. You can click on an account’s icon or description to find out more","-1034232248":"CFDs or Multipliers","-1320214549":"You can choose between CFD trading accounts and Multipliers accounts","-2069414013":"Click the ‘Get’ button to create an account","-951876657":"Top-up your account","-1945421757":"Once you have an account click on ‘Deposit’ or ‘Transfer’ to add funds to an account","-1965920446":"Start trading","-33612390":"<0>EU statutory disclaimer: CFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. <0>73% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether you understand how CFDs work and whether you can afford to take the high risk of losing your money.","-2021135479":"This field is required.","-1870909526":"Our server cannot retrieve an address.","-582721696":"The current allowed withdraw amount is {{format_min_withdraw_amount}} to {{format_max_withdraw_amount}} {{currency}}","-1975494965":"Cashier","-42592103":"Deposit cryptocurrencies","-60779216":"Withdrawals are temporarily unavailable due to system maintenance. You can make your withdrawals when the maintenance is complete.","-215186732":"You’ve not set your country of residence. To access Cashier, please update your country of residence in the Personal details section in your account settings.","-1392897508":"The identification documents you submitted have expired. Please submit valid identity documents to unlock Cashier. ","-954082208":"Your cashier is currently locked. Please contact us via <0>live chat to find out how to unlock it.","-929148387":"Please set your account currency to enable deposits and withdrawals.","-541392118":"Your account has not been authenticated. Please submit your <0>proof of identity and <1>proof of address to authenticate your account and access your cashier.","-247122507":"Your cashier is locked. Please complete the <0>financial assessment to unlock it.","-1443721737":"Your cashier is locked. See <0>how we protect your funds before you proceed.","-901712457":"Your access to Cashier has been temporarily disabled as you have not set your 30-day turnover limit. Please go to <0>Self-exclusion and set your 30-day turnover limit.","-166472881":"Your <0>personal details are incomplete. Please go to your account settings and complete your personal details to enable deposits and withdrawals.","-666905139":"Deposits are locked","-378858101":"Your <0>personal details are incomplete. Please go to your account settings and complete your personal details to enable deposits.","-1318742415":"Your account has not been authenticated. Please submit your <0>proof of identity and <1>proof of address to authenticate your account and request for withdrawals.","-1923809087":"Unfortunately, you can only make deposits. Please contact us via <0>live chat to enable withdrawals.","-172277021":"Cashier is locked for withdrawals","-1624999813":"It seems that you've no commissions to withdraw at the moment. You can make withdrawals once you receive your commissions.","-1077304626":"Amount ({{currency}})","-1559994981":"Approximate value","-190084602":"Transaction","-1995606668":"Amount","-2024290965":"Confirmations","-811190405":"Time","-1984478597":"The details of this transaction is available on CoinsPaid.","-1272778997":"We've sent you an email.","-89973258":"Resend email in {{seconds}}s","-1332236294":"Please verify your identity","-1675848843":"Error","-283017497":"Retry","-1838982691":"UNKNOWN","-532693866":"Something went wrong. Please refresh the page and try again.","-1196049878":"First line of home address","-1326406485":"Postal Code/ZIP","-939625805":"Telephone","-442575534":"Email verification failed","-1459042184":"Update your personal details","-1603543465":"We can't validate your personal details because there is some information missing.","-614516651":"Need help? <0>Contact us.","-203002433":"Deposit now","-720315013":"You have no funds in your {{currency}} account","-2052373215":"Please make a deposit to use this feature.","-379487596":"{{selected_percentage}}% of available balance ({{format_amount}} {{currency__display_code}})","-1957498244":"more","-1059419768":"Notes","-285921910":"Learn more about <0>payment methods.","-316545835":"Please ensure <0>all details are <0>correct before making your transfer.","-949073402":"I confirm that I have verified the client’s transfer information.","-1752211105":"Transfer now","-1787304306":"Deriv P2P","-174976899":"P2P verification","-1705887186":"Your deposit is successful.","-142361708":"In process","-1582681840":"We’ve received your request and are waiting for more blockchain confirmations.","-1626218538":"You’ve cancelled your withdrawal request.","-1062841150":"Your withdrawal is unsuccessful due to an error on the blockchain. Please <0>contact us via live chat for more info.","-630780094":"We’re awaiting confirmation from the blockchain.","-1525882769":"Your withdrawal is unsuccessful. We've sent you an email with more information.","-298601922":"Your withdrawal is successful.","-1463156905":"Learn more about payment methods","-1236567184":"This is your <0>{{regulation}}{{currency}} account {{loginid}}.","-1547606079":"We accept the following cryptocurrencies:","-1517325716":"Deposit via the following payment methods:","-639677539":"Buy cryptocurrencies","-1560098002":"Buy cryptocurrencies via fiat onramp","-541870313":"Deposit via payment agents","-197251450":"Don't want to trade in {{currency_code}}? You can open another cryptocurrency account.","-91824739":"Deposit {{currency}}","-523804269":"{{amount}} {{currency}} on {{date}}","-494847428":"Address: <0>{{value}}","-1117977576":"Confirmations: <0>{{value}}","-1935946851":"View more","-1744490898":"Unfortunately, we cannot retrieve the information at this time. ","-515809216":"Send only {{currency_name}} ({{currency_code}}) to this address.","-1589407981":"To avoid loss of funds:","-1042704302":"Make sure to copy your Deriv account address correctly into your crypto wallet.","-80329359":"<0>Note: You’ll receive an email when your deposit start being processed.","-2108344100":"Looking for a way to buy cryptocurrencies? <0>Try Fiat onramp.","-598073640":"About Tether (Ethereum)","-275902914":"Tether on Ethereum (eUSDT)","-1188009792":"Tether on Omni Layer (USDT)","-1239329687":"Tether was originally created to use the bitcoin network as its transport protocol ‒ specifically, the Omni Layer ‒ to allow transactions of tokenised traditional currency.","-314177745":"Unfortunately, we couldn't get the address since our server was down. Please click Refresh to reload the address or try again later.","-1068036170":"We do not charge a transfer fee for transfers in the same currency between your Deriv fiat and {{platform_name_mt5}} accounts and between your Deriv fiat and {{platform_name_dxtrade}} accounts.","-2056016338":"You’ll not be charged a transfer fee for transfers in the same currency between your Deriv fiat and {{platform_name_mt5}} accounts.","-599632330":"We’ll charge a 1% transfer fee for transfers in different currencies between your Deriv fiat and {{platform_name_mt5}} accounts and between your Deriv fiat and {{platform_name_dxtrade}} accounts.","-1196994774":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv cryptocurrency accounts.","-1361372445":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv cryptocurrency and Deriv MT5 accounts, your Deriv cryptocurrency and {{platform_name_derivez}} accounts, and your Deriv cryptocurrency and {{platform_name_dxtrade}} accounts.","-993556039":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv cryptocurrency and Deriv MT5 accounts and between your Deriv cryptocurrency and {{platform_name_dxtrade}} accounts.","-1382702462":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv cryptocurrency and Deriv MT5 accounts.","-1995859618":"You may transfer between your Deriv fiat, cryptocurrency, {{platform_name_mt5}}, {{platform_name_derivez}} and {{platform_name_dxtrade}} accounts.","-545616470":"Each day, you can make up to {{ allowed_internal }} transfers between your Deriv accounts, up to {{ allowed_mt5 }} transfers between your Deriv and {{platform_name_mt5}} accounts, up to {{ allowed_derivez }} transfers between your Deriv and {{platform_name_derivez}} accounts, and up to {{ allowed_dxtrade }} transfers between your Deriv and {{platform_name_dxtrade}} accounts.","-1151983985":"Transfer limits may vary depending on the exchange rates.","-1747571263":"Please bear in mind that some transfers may not be possible.","-757062699":"Transfers may be unavailable due to high volatility or technical issues and when the exchange markets are closed.","-1866405488":"Deriv cTrader accounts","-1344870129":"Deriv accounts","-1156059326":"You have {{number}} transfer remaining for today.","-1109729546":"You will be able to transfer funds between MT5 accounts and other accounts once your address is verified.","-1593609508":"Transfer between your accounts in Deriv","-464965808":"Transfer limits: <0 /> - <1 />","-553249337":"Transfers are locked","-1638172550":"To enable this feature you must complete the following:","-1949883551":"You only have one account","-1149845849":"Back to Trader's Hub","-1232852916":"We’re switching over to your {{currency}} account to view the transaction.","-759000391":"We were unable to verify your information automatically. To enable this function, you must complete the following:","-1632668764":"I accept","-544232635":"Please go to the Deposit page to generate an address. Then come back here to continue with your transaction.","-1161069724":"Please copy the crypto address you see below. You'll need it to deposit your cryptocurrency.","-1388977563":"Copied!","-1962894999":"This address can only be used ONCE. Please copy a new one for your next transaction.","-451858550":"By clicking 'Continue' you will be redirected to {{ service }}, a third-party payment service provider. Please note that {{ website_name }} is not responsible for the content or services provided by {{ service }}. If you encounter any issues related to {{ service }} services, you must contact {{ service }} directly.","-2005265642":"Fiat onramp is a cashier service that allows you to convert fiat currencies to crypto to top up your Deriv crypto accounts. Listed here are third-party crypto exchanges. You’ll need to create an account with them to use their services.","-1593063457":"Select payment channel","-1309258714":"From account number","-1247676678":"To account number","-816476007":"Account holder name","-344403983":"Description","-922432739":"Please enter a valid client login ID.","-1024241603":"Insufficient balance.","-1979554765":"Please enter a valid description.","-1254233806":"You've transferred","-953082600":"Some payment methods may not be listed here but payment agents may still offer them. If you can’t find your favourite method, contact the payment agents directly to check further.","-1491457729":"All payment methods","-142563298":"Contact your preferred payment agent for payment instructions and make your deposit.","-1023961762":"Commission on deposits","-552873274":"Commission on withdrawal","-880645086":"Withdrawal amount","-118683067":"Withdrawal limits: <0 />-<1 />","-1125090734":"Important notice to receive your funds","-1924707324":"View transaction","-1474202916":"Make a new withdrawal","-511423158":"Enter the payment agent account number","-2059278156":"Note: {{website_name}} does not charge any transfer fees.","-1201279468":"To withdraw your funds, please choose the same payment method you used to make your deposits.","-2004264970":"Your wallet address should have 25 to 64 characters.","-1707299138":"Your {{currency_symbol}} wallet address","-38063175":"{{account_text}} wallet","-705272444":"Upload a proof of identity to verify your identity","-2024958619":"This is to protect your account from unauthorised withdrawals.","-130833284":"Please note that your maximum and minimum withdrawal limits aren’t fixed. They change due to the high volatility of cryptocurrency.","-1531269493":"We'll send you an email once your transaction has been processed.","-113940416":"Current stake:","-1999539705":"Deal cancel. fee:","-447037544":"Buy price:","-1342699195":"Total profit/loss:","-1511825574":"Profit/Loss:","-726626679":"Potential profit/loss:","-338379841":"Indicative price:","-2027409966":"Initial stake:","-1525144993":"Payout limit:","-1167474366":"Tick ","-555886064":"Won","-529060972":"Lost","-571642000":"Day","-155989831":"Decrement value","-1192773792":"Don't show this again","-1769852749":"N/A","-1572746946":"Asian Up","-686840306":"Asian Down","-2141198770":"Higher","-816098265":"Lower","-1646655742":"Spread Up","-668987427":"Spread Down","-912577498":"Matches","-1862940531":"Differs","-808904691":"Odd","-556230215":"Ends Outside","-1268220904":"Ends Between","-703542574":"Up","-1127399675":"Down","-768425113":"No Touch","-1163058241":"Stays Between","-1354485738":"Reset Call","-376148198":"Only Ups","-1337379177":"High Tick","-328036042":"Please enter a stop loss amount that's higher than the current potential loss.","-2127699317":"Invalid stop loss. Stop loss cannot be more than stake.","-590765322":"Unfortunately, this trading platform is not available for EU Deriv account. Please switch to a non-EU account to continue trading.","-2110207996":"Deriv Bot is unavailable for this account","-971295844":"Switch to another account","-1194079833":"Deriv Bot is not available for EU clients","-1223145005":"Loss amount: {{profit}}","-1062922595":"Reference ID (buy)","-2068574600":"Reference ID (sell)","-994038153":"Start Time","-1979852400":"Entry Spot","-427802309":"Profit/Loss","-668558002":"Journal.csv","-746652890":"Notifications","-824109891":"System","-749186458":"Account switching is disabled while your bot is running. Please stop your bot before switching accounts.","-662836330":"Would you like to keep your current contract or close it? If you decide to keep it running, you can check and close it later on the <0>Reports page.","-597939268":"Keep my contract","-1322453991":"You need to log in to run the bot.","-236548954":"Contract Update Error","-1428017300":"THE","-1450728048":"OF","-255051108":"YOU","-1845434627":"IS","-931434605":"THIS","-740712821":"A","-187634388":"This block is mandatory. Here is where you can decide if your bot should continue trading. Only one copy of this block is allowed.","-2105473795":"The only input parameter determines how block output is going to be formatted. In case if the input parameter is \"string\" then the account currency will be added.","-1800436138":"2. for \"number\": 1325.68","-530632460":"This block is used to determine if the market price moves in the selected direction or not. It gives you a value of \"True\" or \"False\".","-1875717842":"Examples:","-890079872":"1. If the selected direction is \"Rise\", and the previous tick value is less than the current tick value, the output will be \"True\". Otherwise, the output will be an empty string.","-489739641":"2. If the selected direction is \"Fall\", and the previous tick value is more than the current tick value, the output will be \"True\". Otherwise, the output will be an empty string.","-2116076360":"There are 4 message types:","-1421941045":"2. 'Warn' displays a message in yellow to highlight something that needs attention.","-277850921":"If \"Win\" is selected, it will return \"True\" if your last trade was successful. Otherwise, it will return an empty string.","-1918487001":"Example:","-2139916657":"1. In the below example the loop is terminated in case \"x\" is \"False\" even though only one iteration is complete","-1238900333":"2. In the below example the loop jumps to the next iteration without executing below block in case if \"x\" is \"False\"","-1729479576":"You can use \"i\" inside the loop, for example to access list items","-1474636594":"In this example, the loop will repeat three times, as that is the number of items in the given list. During each iteration, the variable \"i\" will be assigned a value from the list. ","-908772734":"This block evaluates a statement and will perform an action only when the statement is true.","-334040831":"2. In this example, the instructions are repeated as long as the value of x is greater than or equal to 10. Once the value of x drops below 10, the loop is terminated.","-444267958":"\"Seconds Since Epoch\" block returns the number of seconds since January 1st, 1970.","-447522129":"You might need it when you want to repeat an actions after certain amount of time.","-1488259879":"The term \"candle\" refers to each bar on the candlestick chart. Each candle represents four market prices for the selected time interval:","-2020693608":"Each candlestick on the chart represents 4 market prices for the selected time interval:","-62728852":"- Open price: the opening price","-1247744334":"- Low price: the lowest price","-1386365697":"- Close price: the closing price","-1498732382":"A black (or red) candle indicates that the open price is higher than the close price. This represents a downward movement of the market price.","-1871864755":"This block gives you the last digit of the latest tick value of the selected market. If the latest tick value is 1410.90, this block will return 0. It’s useful for digit-based contracts such as Even/Odd, Matches/Differs, or Higher/Lower.","-1029671512":"In case if the \"OR\" operation is selected, the block returns \"True\" in case if one or both given values are \"True\"","-210295176":"Available operations:","-1385862125":"- Addition","-983721613":"- Subtraction","-854750243":"- Multiplication","-1394815185":"In case if the given number is less than the lower boundary of the range, the block returns the lower boundary value. Similarly, if the given number is greater than the higher boundary, the block will return the higher boundary value. In case if the given value is between boundaries, the block will return the given value unchanged.","-1034564248":"In the below example the block returns the value of 10 as the given value (5) is less than the lower boundary (10)","-2009817572":"This block performs the following operations to a given number","-671300479":"Available operations are:","-514610724":"- Absolute","-1923861818":"- Euler’s number (2.71) to the power of a given number","-1556344549":"Here’s how:","-1061127827":"- Visit the following URL, make sure to replace with the Telegram API token you created in Step 1: https://api.telegram.org/bot/getUpdates","-311389920":"In this example, the open prices from a list of candles are assigned to a variable called \"cl\".","-1460794449":"This block gives you a list of candles within a selected time interval.","-1634242212":"Used within a function block, this block returns a value when a specific condition is true.","-2012970860":"This block gives you information about your last contract.","-1504783522":"You can choose to see one of the following:","-10612039":"- Profit: the profit you’ve earned","-555996976":"- Entry time: the starting time of the contract","-1391071125":"- Exit time: the contract expiration time","-1961642424":"- Exit value: the value of the last tick of the contract","-111312913":"- Barrier: the barrier value of the contract (applicable to barrier-based trade types such as stays in/out, touch/no touch, etc.)","-674283099":"- Result: the result of the last contract: \"win\" or \"loss\"","-704543890":"This block gives you the selected candle value such as open price, close price, high price, low price, and open time. It requires a candle as an input parameter.","-482281200":"In the example below, the open price is assigned to the variable \"op\".","-364621012":"This block gives you the specified candle value for a selected time interval. You can choose which value you want:","-232477769":"- Open: the opening price","-610736310":"Use this block to sell your contract at the market price. Selling your contract is optional. You may choose to sell if the market trend is unfavourable.","-1307657508":"This block gives you the potential profit or loss if you decide to sell your contract. It can only be used within the \"Sell conditions\" root block.","-1921072225":"In the example below, the contract will only be sold if the potential profit or loss is more than the stake.","-955397705":"SMA adds the market price in a list of ticks or candles for a number of time periods, and divides the sum by that number of time periods.","-1424923010":"where n is the number of periods.","-1835384051":"What SMA tells you","-749487251":"SMA serves as an indicator of the trend. If the SMA points up then the market price is increasing and vice versa. The larger the period number, the smoother SMA line is.","-1996062088":"In this example, each point of the SMA line is an arithmetic average of close prices for the last 10 days.","-1866751721":"Input list accepts a list of ticks or candles, while period is the specified time period.","-1097076512":"You may compare SMA values calculated on every bot run to identify the market trend direction. Alternatively, you may also use a variation of the SMA block, the Simple Moving Average Array block. ","-1254849504":"If a period of 10 is entered, the Simple Moving Average Array block will return a list of SMA values calculated based on period of 10.","-1190046167":"This block displays a dialog box with a customised message. When the dialog box is displayed, your strategy is paused and will only resume after you click \"OK\".","-859028989":"In this example, the date and time will be displayed in a green notification box.","-1452086215":"In this example, a Rise contract will be purchased at midnight on 1 August 2019.","-1765276625":"Click the multiplier drop-down menu and choose the multiplier value you want to trade with.","-1872233077":"Your potential profit will be multiplied by the multiplier value you’ve chosen.","-614454953":"To learn more about multipliers, please go to the <0>Multipliers page.","-2078588404":"Select your desired market and asset type. For example, Forex > Major pairs > AUD/JPY","-2037446013":"2. Trade Type","-533927844":"Select your desired trade type. For example, Up/Down > Rise/Fall","-1192411640":"4. Default Candle Interval","-485434772":"8. Trade Options","-1827646586":"This block assigns a given value to a variable, creating the variable if it doesn't already exist.","-254421190":"List: ({{message_length}})","-1616649196":"results","-90107030":"No results found","-984140537":"Add","-1373954791":"Should be a valid number","-1278608332":"Please enter a number between 0 and {{api_max_losses}}.","-287597204":"Enter limits to stop your bot from trading when any of these conditions are met.","-1445989611":"Limits your potential losses for the day across all Deriv platforms.","-152878438":"Maximum number of trades your bot will execute for this run.","-1490942825":"Apply and run","-1442034178":"Contract bought","-2020280751":"Bot is stopping","-1436403979":"Contract closed","-1711732508":"Reference IDs","-386141434":"(Buy)","-482272687":"(Sell)","-1983189496":"ticks","-694277729":"(High)","-2028564707":"(Low)","-627895223":"Exit spot","-596238067":"Entry/Exit spot","-558594655":"The bot is not running","-478946875":"The stats are cleared","-1842451303":"Welcome to Deriv Bot!","-1391310674":"Check out these guides and FAQs to learn more about building your bot:","-2066779239":"FAQs","-280324365":"What is Deriv Bot?","-1016171176":"Asset","-621128676":"Trade type","-447853970":"Loss threshold","-507620484":"Unsaved","-764102808":"Google Drive","-1696412885":"Import","-320197558":"Sort blocks","-1566369363":"Zoom out","-1285759343":"Search","-1291088318":"Purchase conditions","-112876186":"Analysis","-1769584466":"Stats","-1133736197":"Utility","-1682372359":"Text","-907562847":"Lists","-1646497683":"Loops","-251326965":"Miscellaneous","-934909826":"Load strategy","-1692205739":"Import a bot from your computer or Google Drive, build it from scratch, or start with a quick strategy.","-1545070554":"Delete bot","-1972599670":"Your bot will be permanently deleted when you hit ","-1692956623":"Yes, delete.","-573479616":"Are you sure you want to delete it?","-786915692":"You are connected to Google Drive","-1256971627":"To import your bot from your Google Drive, you'll need to sign in to your Google account.","-1233084347":"To know how Google Drive handles your data, please review Deriv’s <0>Privacy policy.","-1150107517":"Connect","-1150390589":"Last modified","-1393876942":"Your bots:","-767342552":"Enter your bot name, choose to save on your computer or Google Drive, and hit ","-1372891985":"Save.","-1003476709":"Save as collection","-636521735":"Save strategy","-1953880747":"Stop my bot","-1899230001":"Stopping the current bot will load the Quick Strategy you just created to the workspace.","-2131847097":"Any open contracts can be viewed on the ","-563774117":"Dashboard","-939764287":"Charts","-683790172":"Now, <0>run the bot to test out the strategy.","-1127164953":"Hi! Hit <0>Start for a quick tour.","-358288026":"Note: You can also find this tutorial in the <0>Tutorials tab.","-1793577405":"Build from scratch","-358753028":"Create your bot using our drag-and-drop blocks or click Quick Strategy to choose from the ready-to-use bot templates.","-1212601535":"Monitor the market","-21136101":"See how your bot is doing in real-time.","-631097919":"Click <0>Run when you want to start trading, and click <0>Stop when you want to stop.","-1999747212":"Want to retake the tour?","-129587613":"Got it, thanks!","-782992165":"Step 1 :","-1207872534":"First, set the <0>Trade parameters block.","-1656388044":"First, set <0>Market to Derived > Continuous Indices > Volatility 100 (1s) Index.","-1706298865":"Then, set <0>Trade type to Up/Down > Rise/Fall.","-1834358537":"For <0>Default candle interval, set it to 1 minute","-1940971254":"For <0>Trade options, set it as below:","-512839354":"<0>Stake: USD 10 (min: 0.35 - max: 50000)","-753745278":"Step 2 :","-1056713679":"Then, set the <0>Purchase conditions block.","-245497823":"<0>2. Purchase conditions:","-916770284":"<0>Purchase: Rise","-758077259":"Step 3 :","-677396944":"Step 4 :","-295975118":"Next, go to <0>Utility tab under the Blocks menu. Tap the drop-down arrow and hit <0>Loops.","-698493945":"Step 5 :","-1992994687":"Now, tap the <0>Analysis drop-down arrow and hit <0>Contract.","-1844492873":"Go to the <0>Last trade result block and click + icon to add the <0>Result is Win block to the workspace.","-1547091772":"Then, drag the <0>Result is win into the empty slot next to <0>repeat until block.","-736400802":"Step 6 :","-732067680":"Finally, drag and add the whole <0>Repeat block to the <0>Restart trading conditions block.","-1411787252":"Step 1","-1109392787":"Learn how to build your bot from scratch using a simple strategy.","-1263822623":"You can import a bot from your mobile device or from Google drive, see a preview in the bot builder, and start trading by running the bot.","-563921656":"Bot Builder guide","-1109191651":"Must be a number higher than 0","-689786738":"Minimum duration: {{ min }}","-184183432":"Maximum duration: {{ max }}","-1494924808":"The value must be equal to or greater than 2.","-1823621139":"Quick Strategy","-1778025545":"You’ve successfully imported a bot.","-1519425996":"No results found \"{{ faq_search_value }}\"","-155173714":"Let’s build a bot!","-1919212468":"3. You can also search for the blocks you want using the search bar above the categories.","-1520558271":"For more info, check out this blog post on the basics of building a trading bot.","-980360663":"3. Choose the block you want and drag it to the workspace.","-1493168314":"What is a quick strategy?","-1680391945":"Using a quick strategy","-1177914473":"How do I save my strategy?","-271986909":"In Bot Builder, hit Save on the toolbar at the top to download your bot. Give your bot a name, and choose to download your bot to your device or Google Drive. Your bot will be downloaded as an XML file.","-1149045595":"1. After hitting Import, select Local and click Continue.","-288041546":"2. Select your XML file and hit Open.","-2127548288":"3. Your bot will be loaded accordingly.","-1311297611":"1. After hitting Import, select Google Drive and click Continue.","-1549564044":"How do I reset the workspace?","-1127331928":"In Bot Builder, hit Reset on the toolbar at the top. This will clear the workspace. Please note that any unsaved changes will be lost.","-1720444288":"How do I control my losses with Deriv Bot?","-1142295124":"There are several ways to control your losses with Deriv Bot. Here’s a simple example of how you can implement loss control in your strategy:","-986689483":"1. Create the following variables:","-269910127":"3. Update current profit/loss with the profit from the last contract. If the last contract was lost, the value of current profit/loss will be negative.","-1565344891":"Can I run Deriv Bot on multiple tabs in my web browser?","-90192474":"Yes, you can. However, there are limits on your account, such as maximum number of open positions and maximum aggregate payouts on open positions. So, just keep these limits in mind when opening multiple positions. You can find more info about these limits at Settings > Account limits.","-213872712":"No, we don't offer cryptocurrencies on Deriv Bot.","-2147346223":"In which countries is Deriv Bot available?","-352345777":"What are the most popular strategies for automated trading?","-552392096":"Three of the most commonly used strategies in automated trading are Martingale, D'Alembert, and Oscar's Grind — you can find them all ready-made and waiting for you in Deriv Bot.","-418247251":"Download your journal.","-870004399":"<0>Bought: {{longcode}} (ID: {{transaction_id}})","-1211474415":"Filters","-186972150":"There are no messages to display","-999254545":"All messages are filtered out","-1121028020":"or, if you prefer...","-254025477":"Select an XML file from your device","-1131095838":"Please upload an XML file","-523928088":"Create one or upload one from your local drive or Google Drive.","-1684205190":"Why can't I see my recent bots?","-2050879370":"1. Logged in from a different device","-811857220":"3. Cleared your browser cache","-625024929":"Leaving already?","-584289785":"No, I'll stay","-1435060006":"If you leave, your current contract will be completed, but your bot will stop running immediately.","-783058284":"Total stake","-2077494994":"Total payout","-1073955629":"No. of runs","-1729519074":"Contracts lost","-42436171":"Total profit/loss","-1137823888":"Total payout since you last cleared your stats.","-992662695":"The number of times your bot has run since you last cleared your stats. Each run includes the execution of all the root blocks.","-1382491190":"Your total profit/loss since you last cleared your stats. It is the difference between your total payout and your total stake.","-24780060":"When you’re ready to trade, hit ","-2147110353":". You’ll be able to track your bot’s performance here.","-2140412463":"Buy price","-1299484872":"Account","-2004386410":"Win","-266502731":"Transactions detailed summary","-1717650468":"Online","-1825471709":"A whole new trading experience on a powerful yet easy to use platform.","-981017278":"Automated trading at your fingertips. No coding needed.","-1309011360":"Open positions","-1597214874":"Trade table","-1929724703":"Compare CFD accounts","-883103549":"Account deactivated","-1837059346":"Buy / Sell","-1845037007":"Advertiser's page","-494667560":"Orders","-679691613":"My ads","-821418875":"Trader","-679102561":"Contract Details","-430118939":"Complaints policy","-568280383":"Deriv Gaming","-895331276":"Complete your proof of address","-782679300":"Complete your proof of identity","-579984289":"Derived Demo","-1596515467":"Derived BVI","-222394569":"Derived Vanuatu","-533935232":"Financial BVI","-565431857":"Financial Labuan","-291535132":"Swap-Free Demo","-1472945832":"Swap-Free SVG","-144803045":"Only numbers and these special characters are allowed: {{permitted_characters}}","-1450516268":"Only letters, numbers, space, hyphen, period, and apostrophe are allowed.","-1966032552":"The length of token should be 8.","-2128137611":"Should start with letter or number, and may contain hyphen and underscore.","-1590869353":"Up to {{decimal_count}} decimal places are allowed.","-2061307421":"Should be more than {{min_value}}","-1099941162":"Should be less than {{max_value}}","-1528188268":"Straight rows of keys are easy to guess","-1339903234":"Short keyboard patterns are easy to guess","-23980798":"Repeats like \"aaa\" are easy to guess","-235760680":"Avoid repeated words and characters","-1568933154":"Sequences like abc or 6543 are easy to guess","-725663701":"Avoid sequences","-1450768475":"Recent years are easy to guess","-1804838610":"Avoid years that are associated with you","-64849469":"Dates are often easy to guess","-2006915194":"Avoid dates and years that are associated with you","-2124205211":"A word by itself is easy to guess","-1095202689":"All-uppercase is almost as easy to guess as all-lowercase","-2137856661":"Reversed words aren't much harder to guess","-1885413063":"Predictable substitutions like '@' instead of 'a' don't help very much","-369258265":"This password is on the blacklist","-681468758":"Your web browser is out of date and may affect your trading experience. Please <0>update your browser.","-577777971":"You have reached the rate limit of requests per second. Please try later.","-206321775":"Fiat","-522767852":"DEMO","-433761292":"Switching to default account.","-405439829":"Sorry, you can't view this contract because it doesn't belong to this account.","-1590712279":"Gaming","-16448469":"Virtual","-2093768906":"{{name}} has released your funds.
Would you like to give your feedback?","-705744796":"Your demo account balance has reached the maximum limit, and you will not be able to place new trades. Reset your balance to continue trading from your demo account.","-2063700253":"disabled","-800774345":"Power up your Financial trades with intuitive tools from Acuity.","-279582236":"Learn More","-1211460378":"Power up your trades with Acuity","-703292251":"Download intuitive trading tools to keep track of market events. The Acuity suite is only available for Windows, and is most recommended for financial assets.","-1585069798":"Please click the following link to complete your Appropriateness Test.","-1287141934":"Find out more","-367759751":"Your account has not been verified","-596690079":"Enjoy using Deriv?","-265932467":"We’d love to hear your thoughts","-1815573792":"Drop your review on Trustpilot.","-823349637":"Go to Trustpilot","-1204063440":"Set my account currency","-1601813176":"Would you like to increase your daily limits to {{max_daily_buy}} {{currency}} (buy) and {{max_daily_sell}} {{currency}} (sell)?","-1751632759":"Get a faster mobile trading experience with the <0>{{platform_name_go}} app!","-1164554246":"You submitted expired identification documents","-219846634":"Let’s verify your ID","-529038107":"Install","-1738575826":"Please switch to your real account or create one to access the cashier.","-1329329028":"You’ve not set your 30-day turnover limit","-132893998":"Your access to the cashier has been temporarily disabled as you have not set your 30-day turnover limit. Please go to Self-exclusion and set the limit.","-1852207910":"MT5 withdrawal disabled","-764323310":"MT5 withdrawals have been disabled on your account. Please check your email for more details.","-1902997828":"Refresh now","-753791937":"A new version of Deriv is available","-1775108444":"This page will automatically refresh in 5 minutes to load the latest version.","-1175685940":"Please contact us via live chat to enable withdrawals.","-493564794":"Please complete your financial assessment.","-1125797291":"Password updated.","-157145612":"Please log in with your updated password.","-1728185398":"Resubmit proof of address","-612396514":"Please resubmit your proof of address.","-1519764694":"Your proof of address is verified.","-1961967032":"Resubmit proof of identity","-117048458":"Please submit your proof of identity.","-1196422502":"Your proof of identity is verified.","-136292383":"Your proof of address verification is pending","-386909054":"Your proof of address verification has failed","-430041639":"Your proof of address did not pass our verification checks, and we’ve placed some restrictions on your account. Please resubmit your proof of address.","-87177461":"Please go to your account settings and complete your personal details to enable deposits.","-904632610":"Reset your balance","-470018967":"Reset balance","-156611181":"Please complete the financial assessment in your account settings to unlock it.","-1925176811":"Unable to process withdrawals in the moment","-980696193":"Withdrawals are temporarily unavailable due to system maintenance. You can make withdrawals when the maintenance is complete.","-1647226944":"Unable to process deposit in the moment","-488032975":"Deposits are temporarily unavailable due to system maintenance. You can make deposits when the maintenance is complete.","-2136953532":"Scheduled cashier maintenance","-849587074":"You have not provided your tax identification number","-47462430":"This information is necessary for legal and regulatory requirements. Please go to your account settings, and fill in your latest tax identification number.","-2067423661":"Stronger security for your Deriv account","-1719731099":"With two-factor authentication, you’ll protect your account with both your password and your phone - so only you can access your account, even if someone knows your password.","-949074612":"Please contact us via live chat.","-2087822170":"You are offline","-1669693571":"Check your connection.","-1706642239":"<0>Proof of ownership <1>required","-553262593":"<0><1>Your account is currently locked <2><3>Please upload your proof of <4>ownership to unlock your account. <5>","-1834929362":"Upload my document","-1043638404":"<0>Proof of ownership <1>verification failed","-1766760306":"<0><1>Please upload your document <2>with the correct details. <3>","-8892474":"Start assessment","-1330929685":"Please submit your proof of identity and proof of address to verify your account and continue trading.","-99461057":"Please submit your proof of address to verify your account and continue trading.","-577279362":"Please submit your proof of identity to verify your account and continue trading.","-197134911":"Your proof of identity is expired","-152823394":"Your proof of identity has expired. Please submit a new proof of identity to verify your account and continue trading.","-420930276":"Follow these simple instructions to fix it.","-2142540205":"It appears that the address in your document doesn’t match the address in your Deriv profile. Please update your personal details now with the correct address.","-482715448":"Go to Personal details","-2072411961":"Your proof of address has been verified","-384887227":"Update the address in your profile.","-448961363":"non-EU","-1998049070":"If you agree to our use of cookies, click on Accept. For more information, <0>see our policy.","-402093392":"Add Deriv Account","-1721181859":"You’ll need a {{deriv_account}} account","-1989074395":"Please add a {{deriv_account}} account first before adding a {{dmt5_account}} account. Deposits and withdrawals for your {{dmt5_label}} account are done by transferring funds to and from your {{deriv_label}} account.","-689237734":"Proceed","-1642457320":"Help centre","-1966944392":"Network status: {{status}}","-594209315":"Synthetic indices in the EU are offered by {{legal_entity_name}}, W Business Centre, Level 3, Triq Dun Karm, Birkirkara BKR 9033, Malta, licensed and regulated by the Malta Gaming Authority (<0>licence no. MGA/B2C/102/2000) and by the Revenue Commissioners for clients in Ireland (<2>licence no. 1010285).","-181484419":"Responsible trading","-650505513":"Full screen","-1823504435":"View notifications","-1954045170":"No currency assigned","-583559763":"Menu","-1591792668":"Account Limits","-34495732":"Regulatory information","-1496158755":"Go to Deriv.com","-1323441180":"I hereby confirm that my request for opening an account with Deriv to trade OTC products issued and offered exclusively outside Brazil was initiated by me. I fully understand that Deriv is not regulated by CVM and by approaching Deriv I intend to set up a relation with a foreign company.","-1396326507":"Unfortunately, {{website_name}} is not available in your country.","-1019903756":"Synthetic","-288996254":"Unavailable","-735306327":"Manage accounts","-2024365882":"Explore","-1197864059":"Create free demo account","-1813972756":"Account creation paused for 24 hours","-366030582":"Sorry, you're unable to create an account at this time. As you declined our previous risk warnings, we need you to wait for 24 hours after your first account creation attempt before you can proceed.<0/><0/>","-534047566":"Thank you for your understanding. You can create your account on {{real_account_unblock_date}} or later.","-399816343":"Trading Experience Assessment<0/>","-1822498621":"As per our regulatory obligations, we are required to assess your trading knowledge and experience.<0/><0/>Please click ‘OK’ to continue","-71049153":"Keep your account secure with a password","-1861974537":"Strong passwords contain at least 8 characters, combine uppercase and lowercase letters, numbers, and symbols.","-1485242688":"Step {{step}}: {{step_title}} ({{step}} of {{steps}})","-1829842622":"You can open an account for each cryptocurrency.","-987221110":"Choose a currency you would like to trade with.","-1066574182":"Choose a currency","-1914534236":"Choose your currency","-200560194":"Please switch to your {{fiat_currency}} account to change currencies.","-1829493739":"Choose the currency you would like to trade with.","-1814647553":"Add a new","-1269362917":"Add new","-650480777":"crypto account","-175638343":"Choose an account or add a new one","-1768223277":"Your account is ready","-1215717784":"<0>You have successfully changed your currency to {{currency}}.<0>Make a deposit now to start trading.","-786091297":"Trade on demo","-228099749":"Please verify your identity and address","-1041852744":"We're processing your personal information","-1775006840":"Make a deposit now to start trading.","-983734304":"We need proof of your identity and address before you can start trading.","-917733293":"To get trading, please confirm where you live.","-1282628163":"You'll be able to get trading as soon as verification is complete.","-952649119":"Log In","-3815578":"Sign Up","-1456176427":"Set a currency for your real account","-1557011219":"Add a real Deriv Options account","-241733171":"Add a Deriv Financial account","-1329687645":"Create a cryptocurrency account","-1429178373":"Create a new account","-1740162250":"Manage account","-1016775979":"Choose an account","-1362081438":"Adding more real accounts has been restricted for your country.","-1602122812":"24-hour Cool Down Warning","-1519791480":"CFDs and other financial instruments come with a high risk of losing money rapidly due to leverage. You should consider whether you understand how CFDs and other financial instruments work and whether you can afford to take the risk of losing your money. <0/><0/>\n As you have declined our previous warning, you would need to wait 24 hours before you can proceed further.","-1010875436":"CFDs and other financial instruments come with a high risk of losing money rapidly due to leverage. You should consider whether you understand how CFDs and other financial instruments work and whether you can afford to take the high risk of losing your money. <0/><0/> To continue, kindly note that you would need to wait 24 hours before you can proceed further.","-1725418054":"By clicking ‘Accept’ and proceeding with the account opening, you should note that you may be exposing yourself to risks. These risks, which may be significant, include the risk of losing the entire sum invested, and you may not have the knowledge and experience to properly assess or mitigate them.","-1369294608":"Already signed up?","-730377053":"You can’t add another real account","-2100785339":"Invalid inputs","-2061807537":"Something’s not right","-617844567":"An account with your details already exists.","-292363402":"Trading statistics report","-1656860130":"Options trading can become a real addiction, as can any other activity pushed to its limits. To avoid the danger of such an addiction, we provide a reality-check that gives you a summary of your trades and accounts on a regular basis.","-28080461":"Would like to check your statement first? <0>Check Statement","-611059051":"Please specify your preferred interval reality check in minutes:","-1876891031":"Currency","-11615110":"Turnover","-1370419052":"Profit / Loss","-437320982":"Session duration:","-3959715":"Current time:","-1534648620":"Your password has been changed","-596199727":"We will now redirect you to the login page.","-310434518":"The email input should not be empty.","-437918412":"No currency assigned to your account","-1193651304":"Country of residence","-707550055":"We need this to make sure our service complies with laws and regulations in your country.","-280139767":"Set residence","-601615681":"Select theme","-1152511291":"Dark","-1428458509":"Light","-1976089791":"Your Deriv account has been unlinked from your {{social_identity_provider}} account. You can now log in to Deriv using your new email address and password.","-505449293":"Enter a new password for your Deriv account.","-1728963310":"Stop creating an account?","-703818088":"Only log in to your account at this secure link, never elsewhere.","-1235799308":"Fake links often contain the word that looks like \"Deriv\" but look out for these differences.","-2102997229":"Examples","-82488190":"I've read the above carefully.","-97775019":"Do not trust and give away your credentials on fake websites, ads or emails.","-2142491494":"OK, got it","-611136817":"Beware of fake links.","-1787820992":"Platforms","-1793883644":"Trade FX and CFDs on a customisable, easy-to-use trading platform.","-184713104":"Earn fixed payouts with options, or trade multipliers to amplify your gains with limited risk.","-1571775875":"Our flagship options and multipliers trading platform.","-895091803":"If you're looking for CFDs","-1447215751":"Not sure? Try this","-2338797":"<0>Maximise returns by <0>risking more than you put in.","-1682067341":"Earn <0>fixed returns by <0>risking only what you put in.","-1744351732":"Not sure where to start?","-943710774":"This complaints policy, which may change from time to time, applies to your account registered with {{legal_entity_name}}, having its registered office address at First Floor, Millennium House, Victoria Road, Douglas, Isle of Man, IM2 4RW, licensed and regulated respectively by (1) the Gambling Supervision Commission in the Isle of Man (current <0>licence issued on 31 August 2017) and (2) the Gambling Commission in the UK (<1>licence no. 39172).","-255056078":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name}}, having its registered office address at W Business Centre, Level 3, Triq Dun Karm, Birkirkara, BKR 9033, Malta, licensed and regulated by the Malta Gaming Authority in Malta for gambling products only, <0>licence no. MGA/B2C/102/2000, and for clients residing in the UK by the UK Gambling Commission (account number 39495).","-1941013000":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name_svg}}, {{legal_entity_name_fx}}, and {{legal_entity_name_v}}.","-594812204":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name_svg}}.","-813256361":"We are committed to treating our clients fairly and providing them with excellent service.<0/><1/>We would love to hear from you on how we can improve our services to you. Any information you provide will be treated in the strictest confidence. Rest assured that you will be heard, valued, and always treated fairly.","-1622847732":"If you have an inquiry regarding your trading account with {{legal_entity_name}}, you can contact us through our <0>Help centre or by chatting with a representative via <1>Live Chat.<2/><3/>We are committed to resolving your query in the quickest time possible and appreciate your patience in allowing us time to resolve the matter.<4/><5/>We strive to provide the best possible service and support to our customers. However, in the event that we are unable to resolve your query or if you feel that our response is unsatisfactory, we want to hear from you. We welcome and encourage you to submit an official complaint to us so that we can review your concerns and work towards a resolution.","-1639808836":"If you are not satisfied with the outcome, you can escalate your complaint to the <0>Independent Betting Adjudication Service (IBAS) by filling the IBAS adjudication form. Please note that IBAS only deals with disputes that result from transactions.","-1505742956":"<0/><1/>You can also refer your dispute to the Malta Gaming Authority via the <2>Player Support Unit.","-1406192787":"If you are not satisfied with the outcome, you can escalate your complaint to the <0>Financial Commission.","-1776547326":"<0/><1/>If you reside in the UK and you are unhappy with our response you may escalate your complaint to the <2>Financial Ombudsman Service.","-2115348800":"1. Introduction","-744009523":"2. Fair treatment","-866831420":"3.1. Submission of a complaint","-1102904026":"3.2. Handling your complaint","-603378979":"3.3. Resolving your complaint","-697569974":"3.4. Your decision","-1280998762":"4. Complaints","-1886635232":"A complaint is any expression of dissatisfaction by a client regarding our products or services that requires a formal response.<0/><1/>If what you submit does not fall within the scope of a complaint, we may reclassify it as a query and forward it to the relevant department for handling. However, if you believe that your query should be classified as a complaint due to its relevance to the investment services provided by {{legal_entity_name}}, you may request that we reclassify it accordingly.","-1771496016":"To submit a complaint, please send an email to <0>complaints@deriv.com, providing as much detail as possible. To help us investigate and resolve your complaint more efficiently, please include the following information:","-1197243525":"<0>•A clear and detailed description of your complaint, including any relevant dates, times, and transactions","-1795134892":"<0>•Any relevant screenshots or supporting documentation that will assist us in understanding the issue","-2053887036":"4.4. Handling your complaint","-717170429":"Once we have received the details of your complaint, we shall review it carefully and keep you updated on the handling process. We might request further information or clarifications to facilitate the resolution of the complaint.","-1841922393":"4.5. Resolving your complaint","-1327119795":"4.6. Your decision","-2019654103":"If we are unable to resolve your complaint or you are not satisfied with the outcome, you can escalate your complaint to the Office of the Arbiter for Financial Services.<0/><1/><2>Filing complaints with the Office of the Arbiter for Financial Services","-687172857":"<0>•You may file a complaint with the Arbiter for Financial Services only if you are not satisfied with our decision or the decision wasn’t made within 15 business days.","-262934706":"<0>•If the complaint is accepted by the Arbiter, you will receive another email with further details relating to the payment of the €25 complaint fee and the processes that follow.","-993572476":"<0>b.The Financial Commission has 5 days to acknowledge that your complaint was received and 14 days to answer the complaint through our Internal Dispute Resolution (IDR) procedure.","-1769159081":"<0>c.You will be able to file a complaint with the Financial Commission only if you are not satisfied with our decision or the decision wasn’t made within 14 days.","-58307244":"3. Determination phase","-356618087":"<0>b.The DRC may request additional information from you or us, who must then provide the requested information within 7 days.","-945718602":"<0>b.If you agree with a DRC decision, you will need to accept it within 14 days. If you do not respond to the DRC decision within 14 days, the complaint is considered closed.","-1500907666":"<0>d.If the decision is made in our favour, you must provide a release for us within 7 days of when the decision is made, and the complaint will be considered closed.","-429248139":"5. Disclaimer","-818926350":"The Financial Commission accepts appeals for 45 days following the date of the incident and only after the trader has tried to resolve the issue with the company directly.","-358055541":"Power up your trades with cool new tools","-29496115":"We've partnered with Acuity to give you a suite of intuitive trading tools for MT5 so you can keep track of market events and trends, free of charge!<0/><0/>","-648669944":"Download the Acuity suite and take advantage of the <1>Macroeconomic Calendar, Market Alerts, Research Terminal, and <1>Signal Centre Trade Ideas without leaving your MT5 terminal.<0/><0/>","-794294380":"This suite is only available for Windows, and is most recommended for financial assets.","-922510206":"Need help using Acuity?","-815070480":"Disclaimer: The trading services and information provided by Acuity should not be construed as a solicitation to invest and/or trade. Deriv does not offer investment advice. The past is not a guide to future performance, and strategies that have worked in the past may not work in the future.","-2111521813":"Download Acuity","-778309978":"The link you clicked has expired. Ensure to click the link in the latest email in your inbox. Alternatively, enter your email below and click <0>Resend email for a new link.","-336222114":"Follow these simple steps to fix it:","-1064116456":"Search for the broker <0>Deriv Holdings (Guernsey) Limited and select it.","-941870889":"The cashier is for real accounts only","-352838513":"It looks like you don’t have a real {{regulation}} account. To use the cashier, switch to your {{active_real_regulation}} real account, or get an {{regulation}} real account.","-1858915164":"Ready to deposit and trade for real?","-162753510":"Add real account","-1208519001":"You need a real Deriv account to access the cashier.","-175369516":"Welcome to Deriv X","-939154994":"Welcome to Deriv MT5 dashboard","-1667427537":"Run Deriv X on your browser or download the mobile app","-305915794":"Run MT5 from your browser or download the MT5 app for your devices","-404375367":"Trade forex, basket indices, commodities, and cryptocurrencies with high leverage.","-243985555":"Trade CFDs on forex, stocks, stock indices, synthetic indices, cryptocurrencies, and commodities with leverage.","-2030107144":"Trade CFDs on forex, stocks & stock indices, commodities, and crypto.","-705682181":"Malta","-409563066":"Regulator","-1302404116":"Maximum leverage","-2098459063":"British Virgin Islands","-1510474851":"British Virgin Islands Financial Services Commission (licence no. SIBA/L/18/1114)","-761250329":"Labuan Financial Services Authority (Licence no. MB/18/0024)","-1264604378":"Up to 1:1000","-1686150678":"Up to 1:100","-637908996":"100%","-1420548257":"20+","-1344709651":"40+","-1373949478":"50+","-1382029900":"70+","-1493055298":"90+","-523602297":"Forex majors","-1303090739":"Up to 1:1500","-19213603":"Metals","-1728334460":"Up to 1:300","-646902589":"(US_30, US_100, US_500)","-1835174654":"1:30","-1647612934":"Spreads from","-1587894214":"about verifications needed.","-466784048":"Regulator/EDR","-1920034143":"Synthetics, Baskets and Derived FX","-1326848138":"British Virgin Islands Financial Services Commission (License no. SIBA/L/18/1114)","-777580328":"Forex, Stocks, Stock indices, Commodities, and Cryptocurrencies","-1372141447":"Straight-through processing","-1969608084":"Forex and Cryptocurrencies","-800771713":"Labuan Financial Services Authority (licence no. MB/18/0024)","-1497128311":"80+","-1501230046":"0.6 pips","-1689815930":"You will need to submit proof of identity and address once you reach certain thresholds.","-1175785439":"Deriv (SVG) LLC (company no. 273 LLC 2020)","-235833244":"Synthetics, Forex, Stocks, Stock Indices, Cryptocurrencies, and ETFs","-139026353":"A selfie of yourself.","-70314394":"A recent utility bill (electricity, water or gas) or recent bank statement or government-issued letter with your name and address.","-435524000":"Verification failed. Resubmit during account creation.","-1385099152":"Your document is verified.","-931599668":"ETF","-651501076":"Derived - SVG","-865172869":"Financial - BVI","-1851765767":"Financial - Vanuatu","-558597854":"Financial - Labuan","-2052425142":"Swap-Free - SVG","-1192904361":"Deriv X Demo","-1269597956":"MT5 Platform","-239789243":"(License no. SIBA/L/18/1114)","-1434036215":"Demo Financial","-1416247163":"Financial STP","-1637969571":"Demo Swap-Free","-1882063886":"Demo CFDs","-1347908717":"Demo Financial SVG","-1780324582":"SVG","-785625598":"Use these credentials to log in to your {{platform}} account on the website and mobile apps.","-997127433":"Change Password","-1300381594":"Get Acuity trading tools","-860609405":"Password","-742647506":"Fund transfer","-1972393174":"Trade CFDs on our synthetics, baskets, and derived FX.","-1357917360":"Web terminal","-1454896285":"The MT5 desktop app is not supported by Windows XP, Windows 2003, and Windows Vista.","-810388996":"Download the Deriv X mobile app","-1727991510":"Scan the QR code to download the Deriv X Mobile App","-511301450":"Indicates the availability of cryptocurrency trading on a particular account.","-1647569139":"Synthetics, Baskets, Derived FX, Forex: standard/micro, Stocks, Stock indices, Commodities, Cryptocurrencies","-2102641225":"At bank rollover, liquidity in the forex markets is reduced and may increase the spread and processing time for client orders. This happens around 21:00 GMT during daylight saving time, and 22:00 GMT non-daylight saving time.","-495364248":"Margin call and stop out level will change from time to time based on market condition.","-536189739":"To protect your portfolio from adverse market movements due to the market opening gap, we reserve the right to decrease leverage on all offered symbols for financial accounts before market close and increase it again after market open. Please make sure that you have enough funds available in your {{platform}} account to support your positions at all times.","-712681566":"Peer-to-peer exchange","-1267880283":"{{field_name}} is required","-2084509650":"{{field_name}} is not properly formatted.","-1580554423":"Trade CFDs on our synthetic indices that simulate real-world market movements.","-1385484963":"Confirm to change your {{platform}} password","-1990902270":"This will change the password to all of your {{platform}} accounts.","-1922462747":"Trader's hub","-700260448":"demo","-1769158315":"real","-2015785957":"Compare CFDs {{demo_title}} accounts","-673424733":"Demo account","-1986258847":"Server maintenance starts at 01:00 GMT every Sunday, and this process may take up to 2 hours to complete. Service may be disrupted during this time.","-1199152768":"Please explore our other platforms.","-205020823":"Explore {{platform_name_trader}}","-1982499699":"Explore {{platform_name_dbot}}","-1567989247":"Submit your proof of identity and address","-184453418":"Enter your {{platform}} password","-393388362":"We’re reviewing your documents. This should take about 1 to 3 days.","-790488576":"Forgot password?","-535365199":"Enter your {{platform}} password to add a {{platform_name}} {{account}} account.","-2057918502":"Hint: You may have entered your Deriv password, which is different from your {{platform}} password.","-1936102840":"Congratulations, you have successfully created your {{category}} <0>{{platform}} <1>{{type}} {{jurisdiction_selected_shortcode}} account. ","-1928229820":"Reset Deriv X investor password","-1087845020":"main","-1950683866":"investor","-1874242353":"Fund top up","-89838213":"You can top up your demo account with an additional <0> if your balance is <1> or less.","-1211122723":"{{ platform }} {{ account_title }} account","-78895143":"Current balance","-149993085":"New current balance","-490244964":"Forex, stocks, stock indices, cryptocurrencies","-1368041210":", synthetic indices","-877064208":"EUR","-1318070255":"EUR/GBP","-1284221303":"You’ll get a warning, known as margin call, if your account balance drops down close to the stop out level.","-1848799829":"To understand stop out, first you need to learn about margin level, which is the ratio of your equity (the total balance you would have if you close all your positions at that point) to the margin you're using at the moment. If your margin level drops below our stop out level, your positions may be closed automatically to protect you from further losses.","-224051432":"24/7","-70716111":"FX-majors (standard/micro lots), FX-minors, basket indices, commodities, cryptocurrencies, and stocks and stock indices","-1041629137":"FX-majors, FX-minors, FX-exotics, and cryptocurrencies","-287097947":"FX-majors (standard/micro lots), FX-minors, Commodities, Cryptocurrencies (except UK)","-2016975615":"Deriv MT5 CFDs real account","-1207265427":"Compare CFDs real accounts","-1225160479":"Compare available accounts","-266701451":"derivX wordmark","-2145356061":"Download Deriv X on your phone to trade with the Deriv X account","-251202291":"Broker","-81650212":"MetaTrader 5 web","-2123571162":"Download","-941636117":"MetaTrader 5 Linux app","-637537305":"Download {{ platform }} on your phone to trade with the {{ platform }} {{ account }} account","-678964540":"to","-206829624":"(1:x)","-616293830":"Enjoy dynamic leverage of <0>up to 1:1500 when trading selected instruments in the forex, commodities, cryptocurrencies, and stock indices markets. Our dynamic leverage adjusts automatically to your trading position, based on asset type and trading volume.","-2042845290":"Your investor password has been changed.","-1882295407":"Your password has been changed.","-254497873":"Use this password to grant viewing access to another user. While they may view your trading account, they will not be able to trade or take any other actions.","-161656683":"Current investor password","-374736923":"New investor password","-1793894323":"Create or reset investor password","-21438174":"Add your Deriv cTrader account under Deriv (SVG) LLC (company no. 273 LLC 2020).","-2026018074":"Add your Deriv MT5 <0>{{account_type_name}} account under Deriv (SVG) LLC (company no. 273 LLC 2020).","-162320753":"Add your Deriv MT5 <0>{{account_type_name}} account under Deriv (BVI) Ltd, regulated by the British Virgin Islands Financial Services Commission (License no. SIBA/L/18/1114).","-271828350":"Get more out of Deriv MT5 Financial","-2125860351":"Choose a jurisdiction for your Deriv MT5 CFDs account","-450424792":"You need a real account (fiat currency or cryptocurrency) in Deriv to create a real Deriv MT5 account.","-1760596315":"Create a Deriv account","-525896186":"Download Deriv GO on your phone to trade with the Deriv EZ account","-1547458328":"Run cTrader on your browser","-648956272":"Use this password to log in to your Deriv X accounts on the web and mobile apps.","-1814308691":"Please click on the link in the email to change your {{platform}} password.","-35790392":"Scan the QR code to download {{Deriv}} {{ platform }}.","-1282933308":"Not {{barrier}}","-968190634":"Equals {{barrier}}","-1747377543":"Under {{barrier}}","-1455298001":"Now","-256210543":"Trading is unavailable at this time.","-1150099396":"We’re working to have this available for you soon. If you have another account, switch to that account to continue trading. You may add a Deriv MT5 Financial.","-28115241":"{{platform_name_trader}} is not available for this account","-453920758":"Go to {{platform_name_mt5}} dashboard","-402175529":"History","-902712434":"Deal cancellation","-988484646":"Deal cancellation (executed)","-444882676":"Deal cancellation (active)","-13423018":"Reference ID","-2035315547":"Low barrier","-1551639437":"No history","-1214703885":"You have yet to update either take profit or stop loss","-504849554":"It will reopen at","-59803288":"In the meantime, try our synthetic indices. They simulate real-market volatility and are open 24/7.","-1278109940":"See open markets","-694105443":"This market is closed","-439389714":"We’re working on it","-770929448":"Go to {{platform_name_smarttrader}}","-590131162":"Stay on {{website_domain}}","-1444663817":"Go to Binary.com","-1526466612":"You’ve selected a trade type that is currently unsupported, but we’re working on it.","-1043795232":"Recent positions","-1572796316":"Purchase price:","-1694314813":"Contract value:","-153220091":"{{display_value}} Tick","-802374032":"Hour","-2039780875":"Purchase confirmation","-1672470173":"Require confirmation before purchasing a contract","-1342661765":"Lock contract purchase buttons","-351875097":"Number of ticks","-729830082":"View less","-149836494":"Your transaction reference number is {{transaction_id}}","-1382749084":"Go back to trading","-1231210510":"Tick","-1239477911":"second","-1585766960":"min","-1652791614":"mins","-1977959027":"hours","-442488432":"day","-337314714":"days","-8998663":"Digit: {{last_digit}} ","-1435392215":"About deal cancellation","-2017825013":"Got it","-1280319153":"Cancel your trade anytime within a chosen time-frame. Triggered automatically if your trade reaches the stop out level within the chosen time-frame.","-471757681":"Risk management","-843831637":"Stop loss","-771725194":"Deal Cancellation","-338707425":"Minimum duration is 1 day","-1003473648":"Duration: {{duration}} day","-740702998":"<0>{{title}} {{message}}","-1669741470":"The payout at expiry is equal to the payout per point multiplied by the difference between the final price and the strike price.","-1527492178":"Purchase Locked","-725375562":"You can lock/unlock the purchase button from the Settings menu","-2131851017":"Growth rate","-1358367903":"Stake","-542594338":"Max. payout","-690963898":"Your contract will be automatically closed when your payout reaches this amount.","-511541916":"Your contract will be automatically closed upon reaching this number of ticks.","-434270664":"Current Price","-1956787775":"Barrier Price:","-1513281069":"Barrier 2","-390994177":"Should be between {{min}} and {{max}}","-1804019534":"Expiry: {{date}}","-2055106024":"Toggle between advanced and simple duration settings","-1012793015":"End time","-2037881712":"Your contract will be closed automatically at the next available asset price on <0>.","-629549519":"Commission <0/>","-2131859340":"Stop out <0/>","-1686280757":"<0>{{commission_percentage}}% of (<1/> * {{multiplier}})","-1043117679":"When your current loss equals or exceeds {{stop_out_percentage}}% of your stake, your contract will be closed at the nearest available asset price.","-339236213":"Multiplier","-1763848396":"Put","-194424366":"above","-857660728":"Strike Prices","-243332856":"Last digit stats for latest 1000 ticks for {{ underlying_name }}","-1386326276":"Barrier is a required field.","-1418742026":"Higher barrier must be higher than lower barrier.","-92007689":"Lower barrier must be lower than higher barrier.","-1095538960":"Please enter the start time in the format \"HH:MM\".","-1975910372":"Minute must be between 0 and 59.","-866277689":"Expiry time cannot be in the past.","-347156282":"Submit Proof","-138538812":"Log in or create a free account to place a trade.","-2036388794":"Create free account","-1813736037":"No further trading is allowed on this contract type for the current trading session. For more info, refer to our <0>terms and conditions.","-1738427539":"Purchase","-1937372493":"You can close your trade anytime. However, be aware of <0>slippage risk<0/>.","-1392065699":"If you select \"Rise\", you win the payout if the exit spot is strictly higher than the entry spot.","-1762566006":"If you select \"Fall\", you win the payout if the exit spot is strictly lower than the entry spot.","-1435306976":"If you select \"Allow equals\", you win the payout if exit spot is higher than or equal to entry spot for \"Rise\". Similarly, you win the payout if exit spot is lower than or equal to entry spot for \"Fall\".","-1959473569":"If you select \"Lower\", you win the payout if the exit spot is strictly lower than the barrier.","-1350745673":"If the exit spot is equal to the barrier, you don't win the payout.","-2089488446":"If you select \"Ends Between\", you win the payout if the exit spot is strictly higher than the Low barrier AND strictly lower than the High barrier.","-1876950330":"If you select \"Ends Outside\", you win the payout if the exit spot is EITHER strictly higher than the High barrier, OR strictly lower than the Low barrier.","-546460677":"If the exit spot is equal to either the Low barrier or the High barrier, you don't win the payout.","-1812957362":"If you select \"Stays Between\", you win the payout if the market stays between (does not touch) either the High barrier or the Low barrier at any time during the contract period","-220379757":"If you select \"Goes Outside\", you win the payout if the market touches either the High barrier or the Low barrier at any time during the contract period.","-1281286610":"If you select \"Matches\", you will win the payout if the last digit of the last tick is the same as your prediction.","-1929209278":"If you select \"Even\", you will win the payout if the last digit of the last tick is an even number (i.e., 2, 4, 6, 8, or 0).","-2038865615":"If you select \"Odd\", you will win the payout if the last digit of the last tick is an odd number (i.e., 1, 3, 5, 7, or 9).","-1416078023":"If you select \"Touch\", you win the payout if the market touches the barrier at any time during the contract period.","-1272255095":"If the exit spot is equal to the barrier or the new barrier (if a reset occurs), you don't win the payout.","-231957809":"Win maximum payout if the exit spot is higher than or equal to the upper barrier.","-464144986":"Win maximum payout if the exit spot is lower than or equal to the lower barrier.","-1031456093":"Win up to maximum payout if exit spot is between lower and upper barrier, in proportion to the difference between upper barrier and exit spot.","-968162707":"No payout if exit spot is above or equal to the upper barrier.","-299450697":"If you select \"High Tick\", you win the payout if the selected tick is the highest among the next five ticks.","-705681870":"By purchasing the \"High-to-Low\" contract, you'll win the multiplier times the difference between the high and low over the duration of the contract.","-420387848":"The high is the highest point ever reached by the market during the contract period.","-1666375348":"By purchasing the \"High-to-Close\" contract, you'll win the multiplier times the difference between the high and close over the duration of the contract.","-2024955268":"If you select “Up”, you will earn a profit by closing your position when the market price is higher than the entry spot.","-1598433845":"If you select “Down”, you will earn a profit by closing your position when the market price is lower than the entry spot.","-885323297":"These are optional parameters for each position that you open:","-584696680":"If you select “Take profit” and specify an amount that you’d like to earn, your position will be closed automatically when your profit is more than or equals to this amount. Your profit may be more than the amount you entered depending on the market price at closing.","-1192494358":"If you select “Deal cancellation”, you’ll be able to cancel your trade within a chosen time frame should the market move against your favour. We’ll charge a small fee for this, but we’ll return your stake amount without profit or loss. If the stop-out amount is reached before the deal cancellation expires, your position will be cancelled automatically and we’ll return your stake amount without profit or loss.","-178096090":"“Take profit” cannot be updated. You may update it only when “Deal cancellation” expires.","-206909651":"The entry spot is the market price when your contract is processed by our servers.","-1576967286":"This product allows you to express a strong bullish or bearish view on an underlying asset.","-610471235":"If you think the market price will rise continuously for a specific period, choose <0>Long. You will get a payout at the expiry time if the market price doesn’t touch or cross below the barrier. Your payout will grow proportionally to the distance between the market price and the barrier if the barrier is not breached. You will start making a profit when the payout is higher than your stake. If the market price ever crosses the barrier, there won’t be a payout.","-454245976":"If you think the market price will drop continuously for a specific period, choose <0>Short. You will get a payout at the expiry time if the market price doesn’t touch or cross above the barrier. Your payout will grow proportionally to the distance between the market price and the barrier if the barrier is not breached. You will start making a profit when the payout is higher than your stake. If the market price ever crosses the barrier, there won’t be a payout.","-1790089996":"NEW!","-993480898":"Accumulators","-45873457":"NEW","-1422269966":"You can choose a growth rate with values of 1%, 2%, 3%, 4%, and 5%.","-1186791513":"Payout is the sum of your initial stake and profit.","-1682624802":"It is a percentage of the previous spot price. The percentage rate is based on your choice of the index and the growth rate.","-1221049974":"Final price","-1247327943":"This is the spot price of the last tick at expiry.","-878534036":"If you select \"Call\", you’ll earn a payout if the final price is above the strike price at expiry. Otherwise, you won’t receive a payout.","-1587076792":"If you select \"Put\", you’ll earn a payout if the final price is below the strike price at expiry. Otherwise, you won’t receive a payout.","-1482134885":"We calculate this based on the strike price and duration you’ve selected.","-1890561510":"Cut-off time","-565990678":"Your contract will expire on this date (in GMT), based on the End time you’ve selected.","-127118348":"Choose {{contract_type}}","-543478618":"Try checking your spelling or use a different term","-700280380":"Deal cancel. fee","-1683683754":"Long","-1046859144":"<0>{{title}} You will get a payout if the market price stays {{price_position}} and doesn't touch or cross the barrier. Otherwise, your payout will be zero.","-1815023694":"above the barrier","-1572548510":"Ups & Downs","-71301554":"Ins & Outs","-952298801":"Look Backs","-763273340":"Digits","-461955353":"purchase price","-172348735":"profit","-1624674721":"contract type","-1644154369":"entry spot time","-510792478":"entry spot price","-1974651308":"exit spot time","-1600267387":"exit spot price","-514917720":"barrier","-1072292603":"No Change","-1631669591":"string","-1768939692":"number","-795152863":"green","-1640576332":"blue","-804983649":"yellow","-94281841":"red","-1242470654":"Earned money","-841561409":"Put Spread","-1429914047":"Low","-1893628957":"Open Time","-1896106455":"10 minutes","-999492762":"15 minutes","-1978767852":"30 minutes","-293628675":"1 hour","-385604445":"2 hours","-1965813351":"4 hours","-525321833":"1 day","-1691868913":"Touch/No Touch","-151151292":"Asians","-1048378719":"Reset Call/Reset Put","-1282312809":"High/Low Ticks","-1237186896":"Only Ups/Only Downs","-529846150":"Seconds","-1635771697":"middle","-1529389221":"Histogram","-1819860668":"MACD","-1750896349":"D'Alembert","-102980621":"The Oscar's Grind Strategy is a low-risk positive progression strategy that first appeared in 1965. By using this strategy, the size of your contract will increase after successful trades, but remains unchanged after unsuccessful trades.","-462715374":"Untitled Bot","-2002533437":"Custom function","-215053350":"with:","-1257232389":"Specify a parameter name:","-1885742588":"with: ","-188442606":"function {{ function_name }} {{ function_params }} {{ dummy }}","-313112159":"This block is similar to the one above, except that this returns a value. The returned value can be assigned to a variable of your choice.","-1783320173":"Prematurely returns a value within a function","-1485521724":"Conditional return","-1482801393":"return","-46453136":"get","-1838027177":"first","-1182568049":"Get list item","-1675454867":"This block gives you the value of a specific item in a list, given the position of the item. It can also remove the item from the list.","-381501912":"This block creates a list of items from an existing list, using specific item positions.","-426766796":"Get sub-list","-1679267387":"in list {{ input_list }} find {{ first_or_last }} occurence of item {{ input_value }}","-2087996855":"This block gives you the position of an item in a given list.","-422008824":"Checks if a given list is empty","-1343887675":"This block checks if a given list is empty. It returns “True” if the list is empty, “False” if otherwise.","-1548407578":"length of {{ input_list }}","-1786976254":"This block gives you the total number of items in a given list.","-2113424060":"create list with item {{ input_item }} repeated {{ number }} times","-1955149944":"Repeat an item","-434887204":"set","-197957473":"as","-851591741":"Set list item","-1874774866":"ascending","-1457178757":"Sorts the items in a given list","-350986785":"Sort list","-324118987":"make text from list","-155065324":"This block creates a list from a given string of text, splitting it with the given delimiter. It can also join items in a list into a string of text.","-459051222":"Create list from text","-977241741":"List Statement","-451425933":"{{ break_or_continue }} of loop","-323735484":"continue with next iteration","-1592513697":"Break out/continue","-713658317":"for each item {{ variable }} in list {{ input_list }}","-1825658540":"Iterates through a given list","-952264826":"repeat {{ number }} times","-887757135":"Repeat (2)","-1608672233":"This block is similar to the block above, except that the number of times it repeats is determined by a given variable.","-533154446":"Repeat (1)","-1059826179":"while","-1893063293":"until","-279445533":"Repeat While/Until","-1003706492":"User-defined variable","-359097473":"set {{ variable }} to {{ value }}","-1588521055":"Sets variable value","-980448436":"Set variable","-1538570345":"Get the last trade information and result, then trade again.","-222725327":"Here is where you can decide if your bot should continue trading.","-1638446329":"Result is {{ win_or_loss }}","-1968029988":"Last trade result","-1588406981":"You can check the result of the last trade with this block.","-1459154781":"Contract Details: {{ contract_detail }}","-1652241017":"Reads a selected property from contract details list","-985351204":"Trade again","-2082345383":"These blocks transfer control to the Purchase conditions block.","-172574065":"This block will transfer the control back to the Purchase conditions block, enabling you to purchase another contract.","-403103225":"restart","-837044282":"Ask Price {{ contract_type }}","-1033917049":"This block returns the purchase price for the selected trade type.","-1863737684":"2. Purchase conditions","-228133740":"Specify contract type and purchase conditions.","-1098726473":"This block is mandatory. Only one copy of this block is allowed. You can place the Purchase block (see below) here as well as conditional blocks to define your purchase conditions.","-1777988407":"Payout {{ contract_type }}","-511116341":"This block returns the potential payout for the selected trade type","-1943211857":"Potential payout","-813464969":"buy","-53668380":"True if active contract can be sold before expiration at current market price","-43337012":"Sell profit/loss","-2112866691":"Returns the profit/loss from selling at market price","-2132417588":"This block gives you the potential profit or loss if you decide to sell your contract.","-1360483055":"set {{ variable }} to Bollinger Bands {{ band_type }} {{ dummy }}","-20542296":"Calculates Bollinger Bands (BB) from a list with a period","-1951109427":"Bollinger Bands (BB)","-857226052":"BB is a technical analysis indicator that’s commonly used by traders. The idea behind BB is that the market price stays within the upper and lower bands for 95% of the time. The bands are the standard deviations of the market price, while the line in the middle is a simple moving average line. If the price reaches either the upper or lower band, there’s a possibility of a trend reversal.","-325196350":"set {{ variable }} to Bollinger Bands Array {{ band_type }} {{ dummy }}","-199689794":"Similar to BB. This block gives you a choice of returning the values of either the lower band, higher band, or the SMA line in the middle.","-920690791":"Calculates Exponential Moving Average (EMA) from a list with a period","-960641587":"EMA is a type of moving average that places more significance on the most recent data points. It’s also known as the exponentially weighted moving average. EMA is different from SMA in that it reacts more significantly to recent price changes.","-1557584784":"set {{ variable }} to Exponential Moving Average Array {{ dummy }}","-32333344":"Calculates Moving Average Convergence Divergence (MACD) from a list","-628573413":"MACD is calculated by subtracting the long-term EMA (26 periods) from the short-term EMA (12 periods). If the short-term EMA is greater or lower than the long-term EMA than there’s a possibility of a trend reversal.","-1133676960":"Fast EMA Period {{ input_number }}","-883166598":"Period {{ input_period }}","-450311772":"set {{ variable }} to Relative Strength Index {{ dummy }}","-1861493523":"Calculates Relative Strength Index (RSI) list from a list of values with a period","-880048629":"Calculates Simple Moving Average (SMA) from a list with a period","-1150972084":"Market direction","-276935417":"This block is used to determine if the market price moves in the selected direction or not. It gives you a value of “True” or “False”.","-764931948":"in candle list get # from end {{ input_number }}","-924607337":"Returns the last digit of the latest tick","-560033550":"Returns the list of last digits of 1000 recent tick values","-74062476":"Make a List of {{ candle_property }} values in candles list with interval: {{ candle_interval_type }}","-1556495906":"Returns a list of specific values from a candle list according to selected time interval","-166816850":"Create a list of candle values (1)","-1261436901":"Candles List","-1174859923":"Read the selected candle value","-1972165119":"Read candle value (1)","-1956100732":"You can use this block to analyze the ticks, regardless of your trades","-443243232":"The content of this block is called on every tick. Place this block outside of any root block.","-641399277":"Last Tick","-1628954567":"Returns the value of the last tick","-1332756793":"This block gives you the value of the last tick.","-2134440920":"Last Tick String","-1466340125":"Tick value","-467913286":"Tick value Description","-785831237":"This block gives you a list of the last 1000 tick values.","-1546430304":"Tick List String Description","-1788626968":"Returns \"True\" if the given candle is black","-436010611":"Make a list of {{ candle_property }} values from candles list {{ candle_list }}","-1384340453":"Returns a list of specific values from a given candle list","-584859539":"Create a list of candle values (2)","-2010558323":"Read {{ candle_property }} value in candle {{ input_candle }}","-2846417":"This block gives you the selected candle value.","-1587644990":"Read candle value (2)","-1202212732":"This block returns account balance","-1737837036":"Account balance","-1963883840":"Put your blocks in here to prevent them from being removed","-1284013334":"Use this block if you want some instructions to be ignored when your bot runs. Instructions within this block won’t be executed.","-1217253851":"Log","-1987568069":"Warn","-104925654":"Console","-1956819233":"This block displays messages in the developer's console with an input that can be either a string of text, a number, boolean, or an array of data.","-1450461842":"Load block from URL: {{ input_url }}","-1088614441":"Loads blocks from URL","-1747943728":"Loads from URL","-2105753391":"Notify Telegram {{ dummy }} Access Token: {{ input_access_token }} Chat ID: {{ input_chat_id }} Message: {{ input_message }}","-1008209188":"Sends a message to Telegram","-1218671372":"Displays a notification and optionally play selected sound","-2099284639":"This block gives you the total profit/loss of your trading strategy since your bot started running. You can reset this by clicking “Clear stats” on the Transaction Stats window, or by refreshing this page in your browser.","-683825404":"Total Profit String","-718220730":"Total Profit String Description","-1861858493":"Number of runs","-264195345":"Returns the number of runs","-303451917":"This block gives you the total number of times your bot has run. You can reset this by clicking “Clear stats” on the Transaction Stats window, or by refreshing this page in your browser.","-2132861129":"Conversion Helper Block","-74095551":"Seconds Since Epoch","-15528039":"Returns the number of seconds since January 1st, 1970","-729807788":"This block returns the number of seconds since January 1st, 1970.","-1370107306":"{{ dummy }} {{ stack_input }} Run after {{ number }} second(s)","-558838192":"Delayed run","-1975250999":"This block converts the number of seconds since the Unix Epoch (1 January 1970) into a string of text representing the date and time.","-702370957":"Convert to date/time","-982729677":"Convert to timestamp","-311268215":"This block converts a string of text that represents the date and time into seconds since the Unix Epoch (1 January 1970). The time and time zone offset are optional. Example: 2019-01-01 21:03:45 GMT+0800 will be converted to 1546347825.","-1797602591":"Stop Loss: {{ currency }} {{ stop_loss }}","-1374685318":"Your contract is closed automatically when your loss is more than or equals to this amount. This block can only be used with the multipliers trade type.","-1214929127":"Stop loss must be a positive number.","-780745489":"If the contract type is “Both”, then the Purchase Conditions should include both Rise and Fall using the “Conditional Block\"","-2142851225":"Multiplier trade options","-625636913":"Amount must be a positive number.","-1466383897":"Duration: {{ duration_unit }} {{ duration_value }}","-440702280":"Trade options","-1193894978":"Define your trade options such as duration and stake. Some options are only applicable for certain trade types.","-46523443":"Duration value is not allowed. To run the bot, please enter a value between {{min}} to {{max}}.","-1483427522":"Trade Type: {{ trade_type_category }} > {{ trade_type }}","-323348124":"1. Trade parameters","-1671903503":"Run once at start:","-783173909":"Trade options:","-376956832":"Here is where you define the parameters of your contract.","-1244007240":"if {{ condition }} then","-1577206704":"else if","-33796979":"true","-1434883449":"This is a single block that returns a boolean value, either true or false.","-1946404450":"Compares two values","-979918560":"This block converts the boolean value (true or false) to its opposite.","-2047257743":"Null","-1274387519":"Performs selected logic operation","-766386234":"This block performs the \"AND\" or the \"OR\" logic operation.","-790995537":"test {{ condition }}","-1860211657":"if false {{ return_value }}","-1643760249":"This block tests if a given value is true or false and returns “True” or “False” accordingly.","-1551875333":"Test value","-52486882":"Arithmetical operations","-1010436425":"This block adds the given number to the selected variable","-999773703":"Change variable","-1272091683":"Mathematical constants","-1396629894":"constrain {{ number }} low {{ low_number }} high {{ high_number }}","-425224412":"This block constrains a given number so that it is within a set range.","-2072551067":"Constrain within a range","-43523220":"remainder of {{ number1 }} ÷ {{ number2 }}","-1291857083":"Returns the remainder after a division","-592154850":"Remainder after division","-736665095":"Returns the remainder after the division of the given numbers.","-1266992960":"Math Number Description","-77191651":"{{ number }} is {{ type }}","-817881230":"even","-142319891":"odd","-1000789681":"whole","-1735674752":"Test a number","-1017805068":"This block tests a given number according to the selection and it returns a value of “True” or “False”. Available options: Even, Odd, Prime, Whole, Positive, Negative, Divisible","-1858332062":"Number","-1053492479":"Enter an integer or fractional number into this block. Please use `.` as a decimal separator for fractional numbers.","-927097011":"sum","-1653202295":"max","-1555878023":"average","-1748351061":"mode","-992067330":"Aggregate operations","-1691561447":"This block gives you a random fraction between 0.0 to 1.0","-523625686":"Random fraction number","-933024508":"Rounds a given number to an integer","-1656927862":"This block rounds a given number according to the selection: round, round up, round down.","-1495304618":"absolute","-61210477":"Operations on a given number","-181644914":"This block performs the selected operations to a given number.","-840732999":"to {{ variable }} append text {{ input_text }}","-1469497908":"Appends a given text to a variable","-1851366276":"Text Append","-1666316828":"Appends a given text to a variable.","-1902332770":"Transform {{ input_text }} to {{ transform_type }}","-1489004405":"Title Case","-904432685":"Changes text case accordingly","-882381096":"letter #","-1027605069":"letter # from end","-2066990284":"random letter","-337089610":"in text {{ input_text1 }} find {{ first_or_last }} occurence of text {{ input_text2 }}","-1966694141":"Searches through a string of text for a specific occurrence of a given character or word, and returns the position.","-697543841":"Text join","-141160667":"length of {{ input_text }}","-1133072029":"Text String Length","-1109723338":"print {{ input_text }}","-736668830":"Print","-1821552998":"trim spaces from {{ side }} of {{ input_text }}","-801766026":"right side","-474779821":"Trims spaces","-1687036846":"Download block","-1266781295":"Expand","-894560707":"function","-1867119688":"Duplicate","-610728049":"Rearrange Vertically","-2033146714":"Collapse All Blocks","-958601558":"Delete Block","-1193267384":"Detach Block","-1750478127":"New variable name","-1061878051":"Y","-2047029150":"Unable to load the block file.","-1410769167":"Target must be an XML file","-609157479":"This URL is already loaded","-241945454":"Proposals are not ready","-1087890592":"Maximum loss amount reached","-1030545878":"You are rate limited for: {{ message_type }}, retrying in {{ delay }}s (ID: {{ request }})","-490766438":"You are disconnected, retrying in {{ delay }}s","-1389975609":"unknown","-1900515692":"Duration must be a positive integer","-245297595":"Please login","-1445046468":"Given candle is not valid","-1891622945":"{{hourPast}}h ago","-1919680487":"workspace","-1703118772":"The {{block_type}} block is misplaced from {{missing_space}}.","-1785726890":"purchase conditions","-538215347":"Net deposits","-280147477":"All transactions","-137444201":"Buy","-130601012":"Please select duration","-232254547":"Custom","-1577570698":"Start date","-1251526905":"Last 7 days","-1904030160":"Transaction performed by (App ID: {{app_id}})","-513103225":"Transaction time","-2066666313":"Credit/Debit","-1981004241":"Sell time","-600828210":"Indicative profit/loss","-706219815":"Indicative price","-3423966":"Take profit<0 />Stop loss","-2082644096":"Current stake","-1131753095":"The {{trade_type_name}} contract details aren't currently available. We're working on making them available soon.","-360975483":"You've made no transactions of this type during this period.","-1226595254":"Turbos","-922253974":"Rise/Fall","-1361254291":"Higher/Lower","-335816381":"Ends In/Ends Out","-1789807039":"Asian Up/Asian Down","-330437517":"Matches/Differs","-657360193":"Over/Under","-558031309":"High Tick/Low Tick","-123659792":"Vanillas","-1669418686":"AUD/CAD","-1548588249":"AUD/CHF","-1552890620":"AUD/JPY","-681231560":"AUD/PLN","-64938413":"AUD/USD","-1430522808":"EUR/AUD","-2020477069":"EUR/CAD","-1201853162":"EUR/CHF","-1197505739":"EUR/JPY","-405907358":"EUR/USD","-1536293064":"NZD/JPY","-79700881":"NZD/USD","-642323838":"USD/CAD","-428199705":"USD/CHF","-424108348":"USD/JPY","-548255282":"USD/NOK","-1834131208":"USD/PLN","-524302516":"Silver/USD","-764731776":"Platinum/USD","-853582174":"France 40","-1096386695":"UK 100","-617646862":"Germany 40","-2077690248":"Japan 225","-512194910":"US Tech 100","-381746202":"US 500","-1935463381":"Swiss 20","-1941767726":"Euro 50","-1925264914":"Volatility 25 Index","-708579504":"Volatility 50 Index","-975255670":"Volatility 75 Index","-1736314513":"Crash 300 Index","-342128411":"Crash 500 Index","-9704319":"Crash 1000 Index","-465860988":"Bull Market Index","-390528194":"Step Index","-280323742":"EUR Basket","-563812039":"Volatility 10 (1s) Index","-764111252":"Volatility 100 (1s) Index","-816110209":"Volatility 150 (1s) Index","-1374309449":"Volatility 200 (1s) Index","-1288044380":"Volatility 250 (1s) Index","-1164978320":"Jump 10 Index","-575272887":"BCH/USD","-295406873":"BTC/ETH","-1713556301":"ZMR/USD","-2046638412":"XRP/USD","-1263203461":"BTC/USD","-1112522776":"DSH/USD","-460689370":"LTC/USD","-1715390759":"I want to do this later","-2092611555":"Sorry, this app is unavailable in your current location.","-1488537825":"If you have an account, log in to continue.","-1603581277":"minutes","-1714959941":"This chart display is not ideal for tick contracts","-1254554534":"Please change the chart duration to tick for a better trading experience.","-1658230823":"Contract was sold for <0 />.","-1905867404":"Contract cancelled"} \ No newline at end of file +{"0":"","1014140":"You may also call <0>+447723580049 to place your complaint.","1485191":"1:1000","2091451":"Deriv Bot - your automated trading partner","3125515":"Your Deriv MT5 password is for logging in to your Deriv MT5 accounts on the desktop, web, and mobile apps.","3215342":"Last 30 days","3420069":"To avoid delays, enter your <0>name and <0>date of birth exactly as they appear on your identity document.","7100308":"Hour must be between 0 and 23.","9488203":"Deriv Bot is a web-based strategy builder for trading digital options. It’s a platform where you can build your own automated trading bot using drag-and-drop 'blocks'.","11539750":"set {{ variable }} to Relative Strength Index Array {{ dummy }}","11872052":"Yes, I'll come back later","14365404":"Request failed for: {{ message_type }}, retrying in {{ delay }}s","15377251":"Profit amount: {{profit}}","17843034":"Check proof of identity document verification status","19424289":"Username","19552684":"USD Basket","21035405":"Please tell us why you’re leaving. (Select up to {{ allowed_reasons }} reasons.)","24900606":"Gold Basket","25854018":"This block displays messages in the developer’s console with an input that can be either a string of text, a number, boolean, or an array of data.","26566655":"Summary","26596220":"Finance","27582767":"{{amount}} {{currency}}","27731356":"Your account is temporarily disabled. Please contact us via <0>live chat to enable deposits and withdrawals again.","27830635":"Deriv (V) Ltd","28581045":"Add a real MT5 account","30801950":"Your account will be opened with {{legal_entity_name}}, regulated by the Malta Gaming Authority, and will be subject to the laws of Malta.","33433576":"Please use an e-wallet to withdraw your funds.","35089987":"Upload the front and back of your driving licence.","41737927":"Thank you","44877997":"Residence permit","45453595":"Binary Coin","45941470":"Where would you like to start?","46523711":"Your proof of identity is verified","49404821":"If you buy a \"<0>{{trade_type}}\" option, you receive a payout at expiry if the final price is {{payout_status}} the strike price. Otherwise, your “<0>{{trade_type}}” option will expire worthless.","50200731":"FX majors (standard/micro lots), FX minors, basket indices, commodities, and cryptocurrencies","53801223":"Hong Kong 50","53964766":"5. Hit Save to download your bot. You can choose to download your bot to your device or your Google Drive.","54185751":"Less than $100,000","55340304":"Keep your current contract?","55916349":"All","56764670":"Deriv Bot will not proceed with any new trades. Any ongoing trades will be completed by our system. Any unsaved changes will be lost.<0>Note: Please check your statement to view completed transactions.","58254854":"Scopes","59169515":"If you select \"Asian Rise\", you will win the payout if the last tick is higher than the average of the ticks.","59341501":"Unrecognized file format","59662816":"Stated limits are subject to change without prior notice.","62748351":"List Length","63869411":"This block tests a given number according to the selection","64402604":"Check transfer information","65185694":"Fiat onramp","65982042":"Total","66519591":"Investor password","67923436":"No, Deriv Bot will stop running when your web browser is closed.","68885999":"Repeats the previous trade when an error is encountered.","69005593":"The example below restarts trading after 30 or more seconds after 1 minute candle was started.","71016232":"OMG/USD","71445658":"Open","71563326":"A fast and secure fiat-to-crypto payment service. Deposit cryptocurrencies from anywhere in the world using your credit/debit cards and bank transfers.","71853457":"$100,001 - $500,000","72500774":"Please fill in Tax residence.","73086872":"You have self-excluded from trading","73326375":"The low is the lowest point ever reached by the market during the contract period.","74963864":"Under","76916358":"You have reached the withdrawal limit.<0/>Please upload your proof of identity and address to lift the limit to continue your withdrawal.","76925355":"Check your bot’s performance","77945356":"Trade on the go with our mobile app.","77982950":"Vanilla options allow you to predict an upward (bullish) or downward (bearish) direction of the underlying asset by purchasing a \"Call\" or a \"Put\".","81450871":"We couldn’t find that page","82839270":"Upload the page of your passport that contains your photo.","83202647":"Collapse Block","84402478":"Where do I find the blocks I need?","85343079":"Financial assessment","85359122":"40 or more","85389154":"Steps required to continue verification on your mobile","89062902":"Trade on MT5","90266322":"2. Start a chat with your newly created Telegram bot and make sure to send it some messages before proceeding to the next step. (e.g. Hello Bot!)","91993812":"The Martingale Strategy is a classic trading technique that has been used for more than a hundred years, popularised by the French mathematician Paul Pierre Levy in the 18th century.","93154671":"1. Hit Reset at the bottom of stats panel.","96381225":"ID verification failed","98473502":"We’re not obliged to conduct an appropriateness test, nor provide you with any risk warnings.","98972777":"random item","100239694":"Upload front of card from your computer","102226908":"Field cannot be empty","108916570":"Duration: {{duration}} days","109073671":"Please use an e-wallet that you have used for deposits previously. Ensure the e-wallet supports withdrawal. See the list of e-wallets that support withdrawals <0>here.","111215238":"Move away from direct light","111718006":"End date","111931529":"Max. total stake over 7 days","113378532":"ETH/USD","115032488":"Buy price and P/L","116005488":"Indicators","117056711":"We’re updating our site","117318539":"Password should have lower and uppercase English letters with numbers.","118158064":"2. Use a logic block to check if current profit/loss exceeds maximum loss. If it does, set trade again to false to prevent the bot from running another cycle.","118586231":"Document number (identity card, passport)","119261701":"Prediction:","119446122":"Contract type is not selected","120340777":"Complete your personal details","123454801":"{{withdraw_amount}} {{currency_symbol}}","124723298":"Upload a proof of address to verify your address","125443840":"6. Restart last trade on error","127307725":"A politically exposed person (PEP) is someone appointed with a prominent public position. Close associates and family members of a PEP are also considered to be PEPs.","129729742":"Tax Identification Number*","130567238":"THEN","132596476":"In providing our services to you, we are required to ask you for some information to assess if a given product or service is appropriate for you and whether you have the experience and knowledge to understand the risks involved.<0/><0/>","132689841":"Trade on web terminal","133284316":"Supported formats: JPEG, JPG, PNG, PDF and GIF only","133523018":"Please go to the Deposit page to get an address.","133536621":"and","133655768":"Note: If you wish to learn more about the Bot Builder, you can proceed to the <0>Tutorials tab.","139454343":"Confirm my limits","141265840":"Funds transfer information","141626595":"Make sure your device has a working camera","142050447":"set {{ variable }} to create text with","142390699":"Connected to your mobile","143970826":"Payment problems?","145146541":"Our accounts and services are unavailable for the Jersey postal code","145736466":"Take a selfie","149616444":"cTrader Demo","150486954":"Token name","151344063":"The exit spot is the market price when the contract is closed.","151646545":"Unable to read file {{name}}","152415091":"Math","152524253":"Trade the world’s markets with our popular user-friendly platform.","154545319":"Country of residence is where you currently live.","157593038":"random integer from {{ start_number }} to {{ end_number }}","157871994":"Link expired","158355408":"Some services may be temporarily unavailable.","160746023":"Tether as an Omni token (USDT) is a version of Tether that is hosted on the Omni layer on the Bitcoin blockchain.","160863687":"Camera not detected","164112826":"This block allows you to load blocks from a URL if you have them stored on a remote server, and they will be loaded only when your bot runs.","164564432":"Deposits are temporarily unavailable due to system maintenance. You can make your deposits when the maintenance is complete.","165294347":"Please set your country of residence in your account settings to access the cashier.","165312615":"Continue on phone","165682516":"If you don’t mind sharing, which other trading platforms do you use?","170185684":"Ignore","170244199":"I’m closing my account for other reasons.","171307423":"Recovery","171579918":"Go to Self-exclusion","171638706":"Variables","173991459":"We’re sending your request to the blockchain.","174793462":"Strike","176078831":"Added","176319758":"Max. total stake over 30 days","176327749":"- Android: Tap the account, open <0>Options, and tap <0>Delete.","176654019":"$100,000 - $250,000","177099483":"Your address verification is pending, and we’ve placed some restrictions on your account. The restrictions will be lifted once your address is verified.","178413314":"First name should be between 2 and 50 characters.","179083332":"Date","179737767":"Our legacy options trading platform.","181346014":"Notes ","181881956":"Contract Type: {{ contract_type }}","184024288":"lower case","189705706":"This block uses the variable \"i\" to control the iterations. With each iteration, the value of \"i\" is determined by the items in a given list.","189759358":"Creates a list by repeating a given item","190834737":"Guide","191372501":"Accumulation of Income/Savings","192436105":"No need for symbols, digits, or uppercase letters","192573933":"Verification complete","195972178":"Get character","196810983":"If the duration is more than 24 hours, the Cut-off time and Expiry date will apply instead.","196998347":"We hold customer funds in bank accounts separate from our operational accounts which would not, in the event of insolvency, form part of the company's assets. This meets the <0>Gambling Commission's requirements for the segregation of customer funds at the level: <1>medium protection.","197190401":"Expiry date","201091938":"30 days","203108063":"Congratulations, you have successfully created your {{category}} <0>{{platform}} <1>{{type}} account. ","203179929":"<0>You can open this account once your submitted documents have been verified.","203271702":"Try again","203297887":"The Quick Strategy you just created will be loaded to the workspace.","203924654":"Hit the <0>Start button to begin and follow the tutorial.","204797764":"Transfer to client","204863103":"Exit time","206010672":"Delete {{ delete_count }} Blocks","207824122":"Please withdraw your funds from the following Deriv account(s):","209533725":"You’ve transferred {{amount}} {{currency}}","210385770":"If you have an active account, please log in to continue. Otherwise, please sign up.","211224838":"Investment","211461880":"Common names and surnames are easy to guess","211847965":"Your <0>personal details are incomplete. Please go to your account settings and complete your personal details to enable withdrawals.","212871086":"Coming soon on mobile","216650710":"You are using a demo account","217403651":"St. Vincent & Grenadines","217504255":"Financial assessment submitted successfully","218441288":"Identity card number","220014242":"Upload a selfie from your computer","220019594":"Need more help? Contact us through live chat for assistance.","220186645":"Text Is empty","220232017":"demo CFDs","221261209":"A Deriv account will allow you to fund (and withdraw from) your CFDs account(s).","223120514":"In this example, each point of the SMA line is an arithmetic average of close prices for the last 50 days.","223607908":"Last digit stats for latest 1000 ticks for {{underlying_name}}","224650827":"IOT/USD","224929714":"Virtual events based bets in the UK and the Isle of Man are offered by {{legal_entity_name}}, Millennium House, Level 1, Victoria Road, Douglas IM2 4RW, Isle of Man, licensed and regulated in Great Britain by the Gambling Commission under <0>account no. 39172 and by the Gambling Supervision Commission in the Isle of Man (<1>view licence).","225887649":"This block is mandatory. It's added to your strategy by default when you create new strategy. You can not add more than one copy of this block to the canvas.","227591929":"To timestamp {{ input_datetime }} {{ dummy }}","227903202":"We’ll charge a 1% transfer fee for transfers in different currencies between your Deriv fiat and {{platform_name_mt5}} accounts.","228521812":"Tests whether a string of text is empty. Returns a boolean value (true or false).","229355215":"Trade on {{platform_name_dbot}}","233500222":"- High: the highest price","235583807":"SMA is a frequently used indicator in technical analysis. It calculates the average market price over a specified period, and is usually used to identify market trend direction: up or down. For example, if the SMA is moving upwards, it means the market trend is up. ","236642001":"Journal","238496287":"Leverage trading is high-risk, so it's a good idea to use risk management features such as stop loss. Stop loss allows you to","243537306":"1. Under the Blocks menu, go to Utility > Variables.","243614144":"This is only available for existing clients.","245005091":"lower","245187862":"The DRC will make a <0>decision on the complaint (please note that the DRC mentions no timeframe for announcing its decision).","245812353":"if {{ condition }} return {{ value }}","246428134":"Step-by-step guides","247418415":"Gaming trading can become a real addiction, as can any other activity pushed to its limits. To avoid the danger of such an addiction, we provide a reality-check that gives you a summary of your trades and accounts on a regular basis.","248153700":"Reset your password","248565468":"Check your {{ identifier_title }} account email and click the link in the email to proceed.","248909149":"Send a secure link to your phone","251134918":"Account Information","251322536":"Deriv EZ accounts","251445658":"Dark theme","251882697":"Thank you! Your response has been recorded into our system.<0/><0/>Please click ‘OK’ to continue.","254912581":"This block is similar to EMA, except that it gives you the entire EMA line based on the input list and the given period.","256031314":"Cash Business","256602726":"If you close your account:","258448370":"MT5","258912192":"Trading assessment","260069181":"An error occured while trying to load the URL","260086036":"Place blocks here to perform tasks once when your bot starts running.","260361841":"Tax Identification Number can't be longer than 25 characters.","261074187":"4. Once the blocks are loaded onto the workspace, tweak the parameters if you want, or hit Run to start trading.","261250441":"Drag the <0>Trade again block and add it into the <0>do part of the <0>Repeat until block.","262095250":"If you select <0>\"Put\", you’ll earn a payout if the final price is below the strike price at expiry. Otherwise, you won’t receive a payout.","264976398":"3. 'Error' displays a message in red to highlight something that needs to be resolved immediately.","265644304":"Trade types","267992618":"The platforms lack key features or functionality.","268940240":"Your balance ({{format_balance}} {{currency}}) is less than the current minimum withdrawal allowed ({{format_min_withdraw_amount}} {{currency}}). Please top up your account to continue with your withdrawal.","269322978":"Deposit with your local currency via peer-to-peer exchange with fellow traders in your country.","269607721":"Upload","270339490":"If you select \"Over\", you will win the payout if the last digit of the last tick is greater than your prediction.","270610771":"In this example, the open price of a candle is assigned to the variable \"candle_open_price\".","270712176":"descending","270780527":"You've reached the limit for uploading your documents.","272042258":"When you set your limits, they will be aggregated across all your account types in {{platform_name_trader}}, {{platform_name_dbot}}, {{platform_name_smarttrader}} and {{platform_name_bbot}} on Deriv. For example, the losses made on all four platforms will add up and be counted towards the loss limit you set.","272179372":"This block is commonly used to adjust the parameters of your next trade and to implement stop loss/take profit logic.","273350342":"Copy and paste the token into the app.","273728315":"Should not be 0 or empty","274268819":"Volatility 100 Index","275116637":"Deriv X","277469417":"Exclude time cannot be for more than five years.","278684544":"get sub-list from # from end","280021988":"Use these shortcuts","282319001":"Check your image","282564053":"Next, we'll need your proof of address.","283830551":"Your address doesn’t match your profile","283986166":"Self-exclusion on the website only applies to your {{brand_website_name}} account and does not include other companies or websites.","284527272":"antimode","284772879":"Contract","284809500":"Financial Demo","287934290":"Are you sure you want to cancel this transaction?","289898640":"TERMS OF USE","291744889":"<0>1. Trade parameters:<0>","291817757":"Go to our Deriv community and learn about APIs, API tokens, ways to use Deriv APIs, and more.","292491635":"If you select “Stop loss” and specify an amount to limit your loss, your position will be closed automatically when your loss is more than or equals to this amount. Your loss may be more than the amount you entered depending on the market price at closing.","292526130":"Tick and candle analysis","292589175":"This will display the SMA for the specified period, using a candle list.","292887559":"Transfer to {{selected_value}} is not allowed, Please choose another account from dropdown","294305803":"Manage account settings","294335229":"Sell at market price","295173783":"Long/Short","301441673":"Select your citizenship/nationality as it appears on your passport or other government-issued ID.","303959005":"Sell Price:","304309961":"We're reviewing your withdrawal request. You may still cancel this transaction if you wish. Once we start processing, you won't be able to cancel.","310234308":"Close all your positions.","312142140":"Save new limits?","312300092":"Trims the spaces within a given string or text.","313298169":"Our cashier is temporarily down due to system maintenance. You can access the Cashier in a few minutes when the maintenance is complete.","313741895":"This block returns “True” if the last candle is black. It can be placed anywhere on the canvas except within the Trade parameters root block.","315306603":"You have an account that do not have currency assigned. Please choose a currency to trade with this account.","316694303":"Is candle black?","318865860":"close","318984807":"This block repeats the instructions contained within for a specific number of times.","321457615":"Oops, something went wrong!","323179846":"The time interval for each candle can be set from one minute to one day.","323209316":"Select a Deriv Bot Strategy","323360883":"Baskets","325662004":"Expand Block","325763347":"result","326770937":"Withdraw {{currency}} ({{currency_symbol}}) to your wallet","327534692":"Duration value is not allowed. To run the bot, please enter {{min}}.","328539132":"Repeats inside instructions specified number of times","329353047":"Malta Financial Services Authority (MFSA) (licence no. IS/70156)","329404045":"<0>Switch to your real account<1> to create a {{platform}} {{account_title}} account.","333121115":"Select Deriv MT5's account type","333456603":"Withdrawal limits","333807745":"Click on the block you want to remove and press Delete on your keyboard.","334680754":"Switch to your real account to create a Deriv MT5 account","334942497":"Buy time","335040248":"About us","337023006":"Start time cannot be in the past.","339449279":"Remaining time","339610914":"Spread Up/Spread Down","339879944":"GBP/USD","340807218":"Description not found.","342181776":"Cancel transaction","343873723":"This block displays a message. You can specify the color of the message and choose from 6 different sound options.","344418897":"These trading limits and self-exclusion help you control the amount of money and time you spend on {{brand_website_name}} and exercise <0>responsible trading.","345320063":"Invalid timestamp","345818851":"Sorry, an internal error occurred. Hit the above checkbox to try again.","347029309":"Forex: standard/micro","347039138":"Iterate (2)","347217485":"Trouble accessing Deriv MT5 on your mobile?","348951052":"Your cashier is currently locked","349047911":"Over","349110642":"<0>{{payment_agent}}<1>'s contact details","350602311":"Stats show the history of consecutive tick counts, i.e. the number of ticks the price remained within range continuously.","351744408":"Tests if a given text string is empty","352363702":"You may see links to websites with a fake Deriv login page where you’ll get scammed for your money.","353731490":"Job done","354945172":"Submit document","357477280":"No face found","359053005":"Please enter a token name.","359649435":"Given candle list is not valid","359809970":"This block gives you the selected candle value from a list of candles within the selected time interval. You can choose from open price, close price, high price, low price, and open time.","360224937":"Logic","360773403":"Bot Builder","362946954":"Our legacy automated trading platform.","363576009":"- High price: the highest price","363738790":"Browser","363990763":"Sell price:","367801124":"Total assets in your Deriv accounts.","368160866":"in list","369035361":"<0>•Your account number","371151609":"Last used","371710104":"This scope will allow third-party apps to buy and sell contracts for you, renew your expired purchases, and top up your demo accounts.","372291654":"Exclude time must be after today.","372645383":"True if the market direction matches the selection","373021397":"random","373306660":"{{label}} is required.","373495360":"This block returns the entire SMA line, containing a list of all values for a given period.","374537470":"No results for \"{{text}}\"","375714803":"Deal Cancellation Error","377231893":"Deriv Bot is unavailable in the EU","379523479":"To avoid loss of funds, do not share tokens with the Admin scope with unauthorised parties.","380606668":"tick","380694312":"Maximum consecutive trades","384303768":"This block returns \"True\" if the last candle is black. It can be placed anywhere on the canvas except within the Trade parameters root block.","386191140":"You can choose between CFD trading accounts or Options and Multipliers accounts","386278304":"Install the {{platform_name_trader}} web app","386502387":"Bot is not running","389923099":"Zoom in","390647540":"Real account","390890891":"Last quarter","391915203":"Hedging","392582370":"Fall Equals","393789743":"Letters, spaces, periods, hyphens, apostrophes only.","396418990":"Offline","396801529":"To start trading, top-up funds from your Deriv account into this account.","398816980":"Launch {{platform_name_trader}} in seconds the next time you want to trade.","401339495":"Verify address","401345454":"Head to the Tutorials tab to do so.","402343402":"Due to an issue on our server, some of your {{platform}} accounts are unavailable at the moment. Please bear with us and thank you for your patience.","403456289":"The formula for SMA is:","404743411":"Total deposits","406359555":"Contract details","406497323":"Sell your active contract if needed (optional)","411482865":"Add {{deriv_account}} account","412433839":"I agree to the <0>terms and conditions.","413594348":"Only letters, numbers, space, hyphen, period, and forward slash are allowed.","417714706":"If your margin level drops below our stop out level, your positions may be closed automatically to protect you from further losses.","417864079":"You’ll not be able to change currency once you have made a deposit.","418265501":"Demo Derived","419485005":"Spot","419496000":"Your contract is closed automatically when your profit is more than or equals to this amount. This block can only be used with the multipliers trade type.","420072489":"CFD trading frequency","422055502":"From","424272085":"We take your financial well-being seriously and want to ensure you are fully aware of the risks before trading.<0/><0/>","424897068":"Do you understand that you could potentially lose 100% of the money you use to trade?","426031496":"Stop","427134581":"Try using another file type.","427617266":"Bitcoin","428709688":"Your preferred time interval between each report:","431267979":"Here’s a quick guide on how to use Deriv Bot on the go.","432273174":"1:100","432508385":"Take Profit: {{ currency }} {{ take_profit }}","432519573":"Document uploaded","433348384":"Real accounts are not available to politically exposed persons (PEPs).","433616983":"2. Investigation phase","434548438":"Highlight function definition","434896834":"Custom functions","436364528":"Your account will be opened with {{legal_entity_name}}, and will be subject to the laws of Saint Vincent and the Grenadines.","436534334":"<0>We've sent you an email.","437138731":"Create a new {{platform}} password","437453244":"Choose your preferred cryptocurrency","437485293":"File type not supported","437904704":"Maximum open positions","438067535":"Over $500,000","439398769":"This strategy is currently not compatible with Deriv Bot.","442520703":"$250,001 - $500,000","443203714":"Your contract will be closed automatically if your loss reaches this amount.","443559872":"Financial SVG","444484637":"Logic negation","445419365":"1 - 2 years","450983288":"Your deposit is unsuccessful due to an error on the blockchain. Please contact your crypto wallet service provider for more info.","451852761":"Continue on your phone","452054360":"Similar to RSI, this block gives you a list of values for each entry in the input list.","453175851":"Your MT5 Financial STP account will be opened through {{legal_entity_name}}. All trading in this account is subject to the regulations and guidelines of the Labuan Financial Service Authority (LFSA). None of your other accounts, including your Deriv account, is subject to the regulations and guidelines of the Labuan Financial Service Authority (LFSA).","453409608":"Your profit is the percentage change in market price times your stake and the multiplier of your choice.","454196938":"Regulation:","456746157":"Grant access to your camera from your browser settings","457020083":"It’ll take longer to verify you if we can’t read it","457494524":"1. From the block library, enter a name for the new variable and click Create.","459612953":"Select account","459817765":"Pending","460070238":"Congratulations","460975214":"Complete your Appropriateness Test","461795838":"Please contact us via live chat to unlock it.","462079779":"Resale not offered","463361726":"Select an item","465993338":"Oscar's Grind","466369320":"Your gross profit is the percentage change in market price times your stake and the multiplier chosen here.","466837068":"Yes, increase my limits","467839232":"I trade forex CFDs and other complex financial instruments regularly on other platforms.","473154195":"Settings","474306498":"We’re sorry to see you leave. Your account is now closed.","475492878":"Try Synthetic Indices","476023405":"Didn't receive the email?","477557241":"Remote blocks to load must be a collection.","478280278":"This block displays a dialog box that uses a customised message to prompt for an input. The input can be either a string of text or a number and can be assigned to a variable. When the dialog box is displayed, your strategy is paused and will only resume after you enter a response and click \"OK\".","479420576":"Tertiary","480356486":"*Boom 300 and Crash 300 Index","481276888":"Goes Outside","483279638":"Assessment Completed<0/><0/>","483551811":"Your <0>payout is the sum of your inital stake and profit.","483591040":"Delete all {{ delete_count }} blocks?","485379166":"View transactions","487239607":"Converts a given True or False to the opposite value","488150742":"Resend email","489768502":"Change investor password","491603904":"Unsupported browser","492198410":"Make sure everything is clear","492566838":"Taxpayer identification number","497518317":"Function that returns a value","498562439":"or","499522484":"1. for \"string\": 1325.68 USD","500215405":"Server maintenance starts at 01:00 GMT every Sunday and may last up to 2 hours. You may experience service disruption during this time.","500855527":"Chief Executives, Senior Officials and Legislators","500920471":"This block performs arithmetic operations between two numbers.","501401157":"You are only allowed to make deposits","501537611":"*Maximum number of open positions","502007051":"Demo Swap-Free SVG","502041595":"This block gives you a specific candle from within the selected time interval.","503137339":"Payout limit","505793554":"last letter","508390614":"Demo Financial STP","510815408":"Letters, numbers, spaces, hyphens only","511679687":"Accumulators allow you to express a view on the range of movement of an index and grow your stake exponentially at a fixed <0>growth rate.","514031715":"list {{ input_list }} is empty","514776243":"Your {{account_type}} password has been changed.","514948272":"Copy link","518955798":"7. Run Once at Start","520136698":"Boom 500 Index","521872670":"item","522283618":"Digital options trading experience","522703281":"divisible by","523123321":"- 10 to the power of a given number","524459540":"How do I create variables?","527329988":"This is a top-100 common password","529056539":"Options","530953413":"Authorised applications","531114081":"3. Contract Type","531675669":"Euro","535041346":"Max. total stake per day","537788407":"Other CFDs Platform","538017420":"0.5 pips","541650045":"Manage {{platform}} password","541700024":"First, enter your driving licence number and the expiry date.","542038694":"Only letters, numbers, space, underscore, and hyphen are allowed for {{label}}.","542305026":"You must also submit a proof of identity.","543413346":"You have no open positions for this asset. To view other open positions, click Go to Reports","543915570":"Forex, stocks, stock indices, cryptocurrencies, synthetic indices","545476424":"Total withdrawals","549479175":"Deriv Multipliers","550589723":"Your stake will grow at {{growth_rate}}% per tick as long as the current spot price remains within ±{{tick_size_barrier}} from the previous spot price.","551569133":"Learn more about trading limits","554135844":"Edit","554410233":"This is a top-10 common password","555351771":"After defining trade parameters and trade options, you may want to instruct your bot to purchase contracts when specific conditions are met. To do that you can use conditional blocks and indicators blocks to help your bot to make decisions.","555881991":"National Identity Number Slip","556264438":"Time interval","558262475":"On your MT5 mobile app, delete your existing Deriv account:","558866810":"Run your bot","559224320":"Our classic “drag-and-drop” tool for creating trading bots, featuring pop-up trading charts, for advanced users.","561982839":"Change your currency","562599414":"This block returns the purchase price for the selected trade type. This block can be used only in the \"Purchase conditions\" root block.","563034502":"We shall try to resolve your complaint within 15 business days. We will inform you of the outcome together with an explanation of our position and propose any remedial measures we intend to take.","563166122":"We shall acknowledge receiving your complaint, review it carefully, and keep you updated on the handling process. We might request further information or clarifications to facilitate the resolution of the complaint.","563652273":"Go to block","565410797":"The below image illustrates how Simple Moving Average Array block works:","566274201":"1. Market","567019968":"A variable is among the most important and powerful components in creating a bot. It is a way to store information, either as text or numbers. The information stored as a variable can be used and changed according to the given instructions. Variables can be given any name, but usually they are given useful, symbolic names so that it is easier to call them during the execution of instructions.","567163880":"Create a {{platform}} password","567755787":"Tax Identification Number is required.","569057236":"In which country was your document issued?","571921777":"Funds protection level","572576218":"Languages","573173477":"Is candle {{ input_candle }} black?","575702000":"Remember, selfies, pictures of houses, or non-related images will be rejected.","576355707":"Select your country and citizenship:","577215477":"count with {{ variable }} from {{ start_number }} to {{ end_number }} by {{ step_size }}","577779861":"Withdrawal","577883523":"4. Awards and orders","578640761":"Call Spread","579529868":"Show all details — including the bottom 2 lines","580431127":"Restart buy/sell on error (disable for better performance): {{ checkbox }}","580665362":"Stays In/Goes Out","580774080":"insert at","581168980":"Legal","582945649":"2 minutes","584028307":"Allow equals","587577425":"Secure my account","587856857":"Want to know more about APIs?","588609216":"Repeat tour","592087722":"Employment status is required.","593459109":"Try a different currency","594937260":"Derived - BVI","595080994":"Example: CR123456789","595136687":"Save Strategy","597089493":"Here is where you can decide to sell your contract before it expires. Only one copy of this block is allowed.","597481571":"DISCLAIMER","597707115":"Tell us about your trading experience.","599469202":"{{secondPast}}s ago","602278674":"Verify identity","603849445":"Strike price","603849863":"Look for the <0>Repeat While/Until, and click the + icon to add the block to the workspace area.","603899222":"Distance to current spot","606240547":"- Natural log","606877840":"Back to today","607807243":"Get candle","609519227":"This is the email address associated with your Deriv account.","609650241":"Infinite loop detected","610537973":"Any information you provide is confidential and will be used for verification purposes only.","611020126":"View address on Blockchain","611786123":"FX-majors (standard/micro lots), FX-minors, Commodities, Cryptocurrencies, Stocks, and Stock Indices","617345387":"If you select \"Reset-Up”, you win the payout if the exit spot is strictly higher than either the entry spot or the spot at reset time.","617910072":"Use your Deriv account email and password to login into the {{ platform }} platform.","618520466":"Example of a cut-off document","619268911":"<0>a.The Financial Commission will investigate the validity of the complaint within 5 business days.","619407328":"Are you sure you want to unlink from {{identifier_title}}?","623192233":"Please complete the <0>Appropriateness Test to access your cashier.","623542160":"Exponential Moving Average Array (EMAA)","624668261":"You’ve just stopped the bot. Any open contracts can be viewed on the <0>Reports page.","625571750":"Entry spot:","626175020":"Standard Deviation Up Multiplier {{ input_number }}","626809456":"Resubmit","627292452":"<0>Your Proof of Identity or Proof of Address did not meet our requirements. Please check your email for further instructions.","627814558":"This block returns a value when a condition is true. Use this block within either of the function blocks above.","628193133":"Account ID","629145209":"In case if the \"AND\" operation is selected, the block returns \"True\" only if both given values are \"True\"","629395043":"All growth rates","632398049":"This block assigns a null value to an item or statement.","634219491":"You have not provided your tax identification number. This information is necessary for legal and regulatory requirements. Please go to <0>Personal details in your account settings, and fill in your latest tax identification number.","636219628":"<0>c.If no settlement opportunity can be found, the complaint will proceed to the determination phase to be handled by the DRC.","639382772":"Please upload supported file type.","640596349":"You have yet to receive any notifications","640730141":"Refresh this page to restart the identity verification process","641420532":"We've sent you an email","642210189":"Please check your email for the verification link to complete the process.","642393128":"Enter amount","642546661":"Upload back of license from your computer","642995056":"Email","644150241":"The number of contracts you have won since you last cleared your stats.","645016681":"Trading frequency in other financial instruments","645902266":"EUR/NZD","647039329":"Proof of address required","647192851":"Contract will be sold at the prevailing market price when the request is received by our servers. This price may differ from the indicated price.","647745382":"Input List {{ input_list }}","648035589":"Other CFD Platforms","649317411":"On the basis of the information provided in relation to your knowledge and experience, we consider that the investments available via this website are not appropriate for you.<0/><1/>","649923867":"Adds a sign to a number to create a barrier offset. (deprecated)","651284052":"Low Tick","651684094":"Notify","652041791":"To create a Deriv X real account, create a Deriv real account first.","652298946":"Date of birth","654264404":"Up to 1:30","654507872":"True-False","654924603":"Martingale","655937299":"We’ll update your limits. Click <0>Accept to acknowledge that you are fully responsible for your actions, and we are not liable for any addiction or loss.","656296740":"While “Deal cancellation” is active:","656893085":"Timestamp","657325150":"This block is used to define trade options within the Trade parameters root block. Some options are only applicable for certain trade types. Parameters such as duration and stake are common among most trade types. Prediction is used for trade types such as Digits, while barrier offsets are for trade types that involve barriers such as Touch/No Touch, Ends In/Out, etc.","659482342":"Please remember that it is your responsibility to keep your answers accurate and up to date. You can update your personal details at any time in your account settings.","660481941":"To access your mobile apps and other third-party apps, you'll first need to generate an API token.","660991534":"Finish","661759508":"On the basis of the information provided in relation to your knowledge and experience, we consider that the investments available via this website are not appropriate for you.<0/><0/>","662548260":"Forex, Stock indices, Commodities and Cryptocurrencies","662578726":"Available","662609119":"Download the MT5 app","665089217":"Please submit your <0>proof of identity to authenticate your account and access your Cashier.","665777772":"XLM/USD","665872465":"In the example below, the opening price is selected, which is then assigned to a variable called \"op\".","666724936":"Please enter a valid ID number.","672008428":"ZEC/USD","673915530":"Jurisdiction and choice of law","674973192":"Use this password to log in to your Deriv MT5 accounts on the desktop, web, and mobile apps.","676159329":"Could not switch to default account.","677918431":"Market: {{ input_market }} > {{ input_submarket }} > {{ input_symbol }}","680334348":"This block was required to correctly convert your old strategy.","680478881":"Total withdrawal limit","681808253":"Previous spot price","681926004":"Example of a blurry document","682056402":"Standard Deviation Down Multiplier {{ input_number }}","684282133":"Trading instruments","685391401":"If you're having trouble signing in, let us know via <0>chat","686312916":"Trading accounts","686387939":"How do I clear my transaction log?","687193018":"Slippage risk","687212287":"Amount is a required field.","688510664":"You've {{two_fa_status}} 2FA on this device. You'll be logged out of your account on other devices (if any). Use your password and a 2FA code to log back in.","689137215":"Purchase price","691956534":"<0>You have added a {{currency}} account.<0> Make a deposit now to start trading.","693396140":"Deal cancellation (expired)","694035561":"Trade options multipliers","696870196":"- Open time: the opening time stamp","697630556":"This market is presently closed.","698037001":"National Identity Number","699159918":"1. Filing complaints","699646180":"A minimum deposit value of <0>{{minimum_deposit}} {{currency}} is required. Otherwise, the funds will be lost and cannot be recovered.","700259824":"Account currency","701034660":"We are still processing your withdrawal request.<0 />Please wait for the transaction to be completed before deactivating your account.","701462190":"Entry spot","701647434":"Search for string","702451070":"National ID (No Photo)","702561961":"Change theme","705299518":"Next, upload the page of your passport that contains your photo.","706413212":"To access the cashier, you are now in your {{regulation}} {{currency}} ({{loginid}}) account.","706727320":"Binary options trading frequency","706755289":"This block performs trigonometric functions.","706960383":"We’ll offer to buy your contract at this price should you choose to sell it before its expiry. This is based on several factors, such as the current spot price, duration, etc. However, we won’t offer a contract value if the remaining duration is below 60 seconds.","707662672":"{{unblock_date}} at {{unblock_time}}","708055868":"Driving licence number","710123510":"repeat {{ while_or_until }} {{ boolean }}","711999057":"Successful","712101776":"Take a photo of your passport photo page","712635681":"This block gives you the selected candle value from a list of candles. You can choose from open price, close price, high price, low price, and open time.","713054648":"Sending","714080194":"Submit proof","714746816":"MetaTrader 5 Windows app","715841616":"Please enter a valid phone number (e.g. +15417541234).","716428965":"(Closed)","718504300":"Postal/ZIP code","720293140":"Log out","720519019":"Reset my password","721011817":"- Raise the first number to the power of the second number","723045653":"You'll log in to your Deriv account with this email address.","723961296":"Manage password","724203548":"You can send your complaint to the <0>European Commission's Online Dispute Resolution (ODR) platform. This is not applicable to UK clients.","724526379":"Learn more with our tutorials","728042840":"To continue trading with us, please confirm where you live.","728824018":"Spanish Index","729651741":"Choose a photo","730473724":"This block performs the \"AND\" or the \"OR\" logic operation with the given values.","731382582":"BNB/USD","734390964":"Insufficient balance","734881840":"false","742469109":"Reset Balance","742676532":"Trade CFDs on forex, derived indices, cryptocurrencies, and commodities with high leverage.","743623600":"Reference","744110277":"Bollinger Bands Array (BBA)","745656178":"Use this block to sell your contract at the market price.","745674059":"Returns the specific character from a given string of text according to the selected option. ","746112978":"Your computer may take a few seconds to update","750886728":"Switch to your real account to submit your documents","751468800":"Start now","751692023":"We <0>do not guarantee a refund if you make a wrong transfer.","752024971":"Reached maximum number of digits","752992217":"This block gives you the selected constant values.","753088835":"Default","753184969":"In providing our services to you, we are required to obtain information from you in order to assess whether a given product or service is appropriate for you (that is, whether you possess the experience and knowledge to understand the risks involved).<0/><1/>","753727511":"Type","755867072":"{{platform_name_mt5}} is not available in {{country}}","756152377":"SMA places equal weight to the entire distribution of values.","758003269":"make list from text","759783233":"For more information and assistance to counselling and support services, please visit <0>begambleaware.org.","760528514":"Please note that changing the value of \"i\" won't change the value of the original item in the list","761576760":"Fund your account to start trading.","762185380":"<0>Multiply returns by <0>risking only what you put in.","762871622":"{{remaining_time}}s","762926186":"A quick strategy is a ready-made strategy that you can use in Deriv Bot. There are 3 quick strategies you can choose from: Martingale, D'Alembert, and Oscar's Grind.","764366329":"Trading limits","766317539":"Language","770171141":"Go to {{hostname}}","773091074":"Stake:","773309981":"Oil/USD","773336410":"Tether is a blockchain-enabled platform designed to facilitate the use of fiat currencies in a digital manner.","775679302":"{{pending_withdrawals}} pending withdrawal(s)","775706054":"Do you sell trading bots?","776085955":"Strategies","781924436":"Call Spread/Put Spread","783974693":"Avoid recent years","784311461":"Exponential Moving Average (EMA)","784583814":"Linked to your computer","785969488":"Jump 75 Index","787727156":"Barrier","788005234":"NA","792164271":"This is when your contract will expire based on the Duration or End time you’ve selected.","792622364":"Negative balance protection","793526589":"To file a complaint about our service, send an email to <0>complaints@deriv.com and state your complaint in detail. Please submit any relevant screenshots of your trading or system for our better understanding.","793531921":"Our company is one of the oldest and most reputable online trading companies in the world. We are committed to treat our clients fairly and provide them with excellent service.<0/><1/>Please provide us with feedback on how we can improve our services to you. Rest assured that you will be heard, valued, and treated fairly at all times.","793826881":"This is your personal start page for Deriv","794682658":"Copy the link to your phone","795859446":"Password saved","797007873":"Follow these steps to recover camera access:","797500286":"negative","800228448":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name_svg}} and {{legal_entity_name_fx}}.","800521289":"Your personal details are incomplete","801430087":"A link can contain the word \"Deriv\" and still be fake.","802436811":"View transaction details","802438383":"New proof of address is needed","802556390":"seconds","802989607":"Drag your XML file here","803500173":"Initial stake","806165583":"Australia 200","807499069":"Financial commission complaints procedure","808323704":"You can also use \"Compare\" and \"Logic operation\" blocks to make test variables.","811876954":"You may transfer between your Deriv fiat, cryptocurrency, {{platform_name_mt5}}, and {{platform_name_dxtrade}} accounts.","812430133":"Spot price on the previous tick.","812775047":"below the barrier","814827314":"The stop-out level on the chart indicates the price at which your potential loss equals your entire stake. When the market price reaches this level, your position will be closed automatically. This ensures that your loss does not exceed the amount you paid to purchase the contract.","815925952":"This block is mandatory. Only one copy of this block is allowed. It is added to the canvas by default when you open Deriv Bot.","816580787":"Welcome back! Your messages have been restored.","816738009":"<0/><1/>You may also raise your unresolved dispute to the <2>Office of the Arbiter for Financial Services.","818447476":"Switch account?","820877027":"Please verify your proof of identity","821163626":"Server maintenance occurs every first Saturday of the month from 7 to 10 GMT time. You may experience service disruption during this time.","823186089":"A block that can contain text.","824797920":"Is list empty?","825042307":"Let’s try again","826511719":"USD/SEK","827688195":"Disable Block","828219890":"then","828602451":"Returns the list of tick values in string format","830164967":"Last name","830703311":"My profile","830993327":"No current transactions available","832053636":"Document submission","832217983":"40 transactions or more in the past 12 months","832398317":"Sell Error","832588873":"Order execution","832721563":"If you select \"Low Tick\", you win the payout if the selected tick is the lowest among the next five ticks.","834966953":"1551661986 seconds since Jan 01 1970 (UTC) translates to 03/04/2019 @ 1:13am (UTC).","835058671":"Total buy price","835336137":"View Detail","835350845":"Add another word or two. Uncommon words are better.","836097457":"I am interested in trading but have very little experience.","837063385":"Do not send other currencies to this address.","837066896":"Your document is being reviewed, please check back in 1-3 days.","839618971":"ADDRESS","839805709":"To smoothly verify you, we need a better photo","840672750":"If this doesn’t work, uninstall and re-install the MT5 app. Then redo steps <0>2 and <0>3.","841434703":"Disable stack","841543189":"View transaction on Blockchain","843333337":"You can only make deposits. Please complete the <0>financial assessment to unlock withdrawals.","845213721":"Logout","845304111":"Slow EMA Period {{ input_number }}","848083350":"Your payout is equal to the <0>payout per point multiplied by the difference between the final price and the strike price. You will only earn a profit if your payout is higher than your initial stake.","850582774":"Please update your personal info","851054273":"If you select \"Higher\", you win the payout if the exit spot is strictly higher than the barrier.","851264055":"Creates a list with a given item repeated for a specific number of times.","851508288":"This block constrains a given number within a set range.","852527030":"Step 2","852583045":"Tick List String","854399751":"Digit code must only contain numbers.","854630522":"Choose a cryptocurrency account","857363137":"Volatility 300 (1s) Index","857445204":"Deriv currently supports withdrawals of Tether eUSDT to Ethereum wallet. To ensure a successful transaction, enter a wallet address compatible with the tokens you wish to withdraw. <0>Learn more","857986403":"do something","860319618":"Tourism","862283602":"Phone number*","863328851":"Proof of identity","864610268":"First, enter your {{label}} and the expiry date.","864957760":"Math Number Positive","865424952":"High-to-Low","865642450":"2. Logged in from a different browser","866496238":"Make sure your license details are clear to read, with no blur or glare","868826608":"Excluded from {{brand_website_name}} until","869068127":"The cashier is temporarily down due to maintenance. It will be available as soon as the maintenance is complete.","869823595":"Function","869993298":"Minimum withdrawal","872549975":"You have {{number}} transfers remaining for today.","872661442":"Are you sure you want to update email <0>{{prev_email}} to <1>{{changed_email}}?","872721776":"2. Select your XML file and hit Select.","872817404":"Entry Spot Time","873166343":"1. 'Log' displays a regular message.","874461655":"Scan the QR code with your phone","874484887":"Take profit must be a positive number.","875101277":"If I close my web browser, will Deriv Bot continue to run?","875532284":"Restart process on a different device","876086855":"Complete the financial assessment form","876292912":"Exit","879014472":"Reached maximum number of decimals","879647892":"You may sell the contract up until 60 seconds before expiry. If you do, we’ll pay you the <0>contract value.","881963105":"(XAUUSD, XAGUSD)","885065431":"Get a Deriv account","888274063":"Town/City","888924866":"We don’t accept the following inputs for:","890299833":"Go to Reports","891337947":"Select country","892341141":"Your trading statistics since: {{date_time}}","893117915":"Variable","893963781":"Close-to-Low","893975500":"You do not have any recent bots","894191608":"<0>c.We must award the settlement within 28 days of when the decision is reached.","898457777":"You have added a Deriv Financial account.","898904393":"Barrier:","900646972":"page.","902045490":"3 minutes","903429103":"In candles list read {{ candle_property }} # from end {{ input_number }}","904696726":"API token","905134118":"Payout:","905227556":"Strong passwords contain at least 8 characters, combine uppercase and lowercase letters and numbers.","905564365":"MT5 CFDs","906049814":"We’ll review your documents and notify you of its status within 5 minutes.","907680782":"Proof of ownership verification failed","909272635":"Financial - SVG","910888293":"Too many attempts","911048905":"(BTCUSD, ETHUSD)","912406629":"Follow these steps:","912967164":"Import from your computer","915735109":"Back to {{platform_name}}","918447723":"Real","920125517":"Add demo account","921901739":"- your account details of the bank linked to your account","924046954":"Upload a document showing your name and bank account number or account details.","926813068":"Fixed/Variable","929608744":"You are unable to make withdrawals","930346117":"Capitalization doesn't help very much","930546422":"Touch","933126306":"Enter some text here","933193610":"Only letters, periods, hyphens, apostrophes, and spaces, please.","934835052":"Potential profit","934932936":"PERSONAL","936766426":"You are limited to one fiat account. You won’t be able to change your account currency if you have already made your first deposit.","937237342":"Strategy name cannot be empty","937682366":"Upload both of these documents to prove your identity.","937831119":"Last name*","937992258":"Table","938500877":"{{ text }}. <0>You can view the summary of this transaction in your email.","938947787":"Withdrawal {{currency}}","938988777":"High barrier","943535887":"Please close your positions in the following Deriv MT5 account(s):","944499219":"Max. open positions","945532698":"Contract sold","946204249":"Read","946841802":"A white (or green) candle indicates that the open price is lower than the close price. This represents an upward movement of the market price.","946944859":"Hit the button below and we'll send you an email with a link. Click that link to verify your withdrawal request.","947046137":"Your withdrawal will be processed within 24 hours","947363256":"Create list","947758334":"City is required","947914894":"Top up  <0>","948156236":"Create {{type}} password","948176566":"New!","948545552":"150+","949859957":"Submit","952927527":"Regulated by the Malta Financial Services Authority (MFSA) (licence no. IS/70156)","955352264":"Trade on {{platform_name_dxtrade}}","956448295":"Cut-off image detected","957182756":"Trigonometric functions","958430760":"In/Out","959031082":"set {{ variable }} to MACD Array {{ dropdown }} {{ dummy }}","960201789":"3. Sell conditions","961266215":"140+","961327418":"My computer","961692401":"Bot","966457287":"set {{ variable }} to Exponential Moving Average {{ dummy }}","968576099":"Up/Down","969987233":"Win up to maximum payout if exit spot is between lower and upper barrier, in proportion to the difference between exit spot and lower barrier.","970915884":"AN","975668699":"I confirm and accept {{company}} 's <0>Terms and Conditions","975950139":"Country of Residence","977929335":"Go to my account settings","981138557":"Redirect","981568830":"You have chosen to exclude yourself from trading on our website until {{exclude_until}}. If you are unable to place a trade or deposit after your self-exclusion period, please contact us via <0>live chat.","981965437":"Scan the QR code below with your 2FA app. We recommend <0>Authy or <1>Google Authenticator.","982146443":"WhatsApp","982402892":"First line of address","982829181":"Barriers","983451828":"2. Select the asset and trade type.","987224688":"How many trades have you placed with other financial instruments in the past 12 months?","988064913":"4. Come back to Deriv Bot and add the Notify Telegram block to the workspace. Paste the Telegram API token and chat ID into the block fields accordingly.","988361781":"You have no trading activity yet.","988934465":"When prompted, you must enable camera access to continue","990739582":"170+","992294492":"Your postal code is invalid","992677950":"Logging out on other devices","993827052":"Choosing this jurisdiction will give you a Financial STP account. Your trades will go directly to the market and have tighter spreads.","995563717":"not {{ boolean }}","999008199":"text","1001160515":"Sell","1001749987":"You’ll get a warning, named margin call, if your account balance drops down close to the stop out level.","1003876411":"Should start with letter or number and may contain a hyphen, period and slash.","1004127734":"Send email","1006458411":"Errors","1006664890":"Silent","1009032439":"All time","1010198306":"This block creates a list with strings and numbers.","1010337648":"We were unable to verify your proof of ownership.","1011424042":"{{text}}. stake<0/>","1012102263":"You will not be able to log in to your account until this date (up to 6 weeks from today).","1015201500":"Define your trade options such as duration and stake.","1016220824":"You need to switch to a real money account to use this feature.<0/>You can do this by selecting a real account from the <1>Account Switcher.","1018803177":"standard deviation","1019265663":"You have no transactions yet.","1019508841":"Barrier 1","1021679446":"Multipliers only","1022934784":"1 minute","1023237947":"1. In the example below, the instructions are repeated as long as the value of x is less than or equal to 10. Once the value of x exceeds 10, the loop is terminated.","1023643811":"This block purchases contract of a specified type.","1023795011":"Even/Odd","1024205076":"Logic operation","1025887996":"Negative Balance Protection","1026046972":"Please enter a payout amount that's lower than {{max_payout}}.","1026289179":"Trade on the go","1027098103":"Leverage gives you the ability to trade a larger position using your existing capital. Leverage varies across different symbols.","1028211549":"All fields are required","1028758659":"Citizenship*","1029164365":"We presume that you possess the experience, knowledge, and expertise to make your own investment decisions and properly assess the risk involved.","1030021206":"change {{ variable }} by {{ number }}","1031602624":"We've sent a secure link to %{number}","1031731167":"Pound Sterling","1032173180":"Deriv","1032907147":"AUD/NZD","1033076894":"- current profit/loss: Use this variable to store the cumulative profit or loss while your bot is running. Set the initial value to 0.","1035893169":"Delete","1036116144":"Speculate on the price movement of an asset without actually owning it.","1036867749":"The desired duration, stake, prediction, and/or barrier(s) for the contract is defined here.","1038575777":"Change password","1039428638":"EU regulation","1039755542":"Use a few words, avoid common phrases","1040472990":"1. Go to Bot Builder.","1040677897":"To continue trading, you must also submit a proof of address.","1041001318":"This block performs the following operations on a given list: sum, minimum, maximum, average, median, mode, antimode, standard deviation, random item.","1041620447":"If you are unable to scan the QR code, you can manually enter this code instead:","1042659819":"You have an account that needs action","1043790274":"There was an error","1044540155":"100+","1044599642":"<0> has been credited into your {{platform}} {{title}} account.","1045704971":"Jump 150 Index","1045782294":"Click the <0>Change password button to change your Deriv password.","1047389068":"Food Services","1047881477":"Unfortunately, your browser does not support the video.","1048687543":"Labuan Financial Services Authority","1048947317":"Sorry, this app is unavailable in {{clients_country}}.","1049384824":"Rise","1050063303":"Videos on Deriv Bot","1050128247":"I confirm that I have verified the payment agent’s transfer information.","1050844889":"Reports","1052779010":"You are on your demo account","1053153674":"Jump 50 Index","1053159279":"Level of education","1053556481":"Once you submit your complaint, we will send you an acknowledgement email to confirm that we have received it.","1055313820":"No document detected","1056381071":"Return to trade","1056821534":"Are you sure?","1057216772":"text {{ input_text }} is empty","1057749183":"Two-factor authentication (2FA)","1057765448":"Stop out level","1057904606":"The concept of the D’Alembert Strategy is said to be similar to the Martingale Strategy where you will increase your contract size after a loss. With the D’Alembert Strategy, you will also decrease your contract size after a successful trade.","1058804653":"Expiry","1060231263":"When are you required to pay an initial margin?","1061308507":"Purchase {{ contract_type }}","1062423382":"Explore the video guides and FAQs to build your bot in the tutorials tab.","1062536855":"Equals","1065275078":"cTrader is only available on desktop for now.","1065353420":"110+","1065498209":"Iterate (1)","1066235879":"Transferring funds will require you to create a second account.","1066459293":"4.3. Acknowledging your complaint","1069347258":"The verification link you used is invalid or expired. Please request for a new one.","1069576070":"Purchase lock","1070624871":"Check proof of address document verification status","1073261747":"Verifications","1076006913":"Profit/loss on the last {{item_count}} contracts","1077515534":"Date to","1078221772":"Leverage prevents you from opening large positions.","1080068516":"Action","1080990424":"Confirm","1082158368":"*Maximum account cash balance","1082406746":"Please enter a stake amount that's at least {{min_stake}}.","1083781009":"Tax identification number*","1083826534":"Enable Block","1086118495":"Traders Hub","1087112394":"You must select the strike price before entering the contract.","1088031284":"Strike:","1088138125":"Tick {{current_tick}} - ","1089085289":"Mobile number","1089436811":"Tutorials","1089687322":"Stop your current bot?","1090041864":"The {{block_type}} block is mandatory and cannot be deleted/disabled.","1095295626":"<0>•The Arbiter for Financial Services will determine whether the complaint can be accepted and is in accordance with the law.","1096078516":"We’ll review your documents and notify you of its status within 3 days.","1096175323":"You’ll need a Deriv account","1098147569":"Purchase commodities or shares of a company.","1098622295":"\"i\" starts with the value of 1, and it will be increased by 2 at every iteration. The loop will repeat until \"i\" reaches the value of 12, and then the loop is terminated.","1100133959":"National ID","1100870148":"To learn more about account limits and how they apply, please go to the <0>Help Centre.","1101560682":"stack","1101712085":"Buy Price","1102420931":"Next, upload the front and back of your driving licence.","1102995654":"Calculates Exponential Moving Average (EMA) list from a list of values with a period","1103309514":"Target","1103452171":"Cookies help us to give you a better experience and personalised content on our site.","1104912023":"Pending verification","1107474660":"Submit proof of address","1107555942":"To","1109217274":"Success!","1110102997":"Statement","1112582372":"Interval duration","1113119682":"This block gives you the selected candle value from a list of candles.","1113292761":"Less than 8MB","1114679006":"You have successfully created your bot using a simple strategy.","1117281935":"Sell conditions (optional)","1117863275":"Security and safety","1118294625":"You have chosen to exclude yourself from trading on our website until {{exclusion_end}}. If you are unable to place a trade or deposit after your self-exclusion period, please contact us via live chat.","1119887091":"Verification","1119986999":"Your proof of address was submitted successfully","1120985361":"Terms & conditions updated","1122910860":"Please complete your <0>financial assessment.","1123927492":"You have not selected your account currency","1125090693":"Must be a number","1126075317":"Add your Deriv MT5 <0>{{account_type_name}} STP account under Deriv (FX) Ltd regulated by Labuan Financial Services Authority (Licence no. MB/18/0024).","1126934455":"Length of token name must be between 2 and 32 characters.","1127149819":"Make sure§","1127224297":"Sorry for the interruption","1128139358":"How many CFD trades have you placed in the past 12 months?","1128321947":"Clear All","1128404172":"Undo","1129124569":"If you select \"Under\", you will win the payout if the last digit of the last tick is less than your prediction.","1129842439":"Please enter a take profit amount.","1130744117":"We shall try to resolve your complaint within 10 business days. We will inform you of the outcome together with an explanation of our position and propose any remedial measures we intend to take.","1130791706":"N","1133651559":"Live chat","1134879544":"Example of a document with glare","1138126442":"Forex: standard","1139483178":"Enable stack","1143730031":"Direction is {{ direction_type }}","1144028300":"Relative Strength Index Array (RSIA)","1145927365":"Run the blocks inside after a given number of seconds","1146064568":"Go to Deposit page","1147269948":"Barrier cannot be zero.","1150637063":"*Volatility 150 Index and Volatility 250 Index","1151964318":"both sides","1152294962":"Upload the front of your driving licence.","1154021400":"list","1154239195":"Title and name","1155011317":"This block converts the date and time to the number of seconds since the Unix Epoch (1970-01-01 00:00:00).","1155626418":"below","1158678321":"<0>b.The Head of the Dispute Resolution Committee (DRC) will contact both you and us within 5 business days to obtain all necessary information and see if there is a chance to settle the complaint during the investigation phase.","1160761178":"No payout if exit spot is below or equal to the lower barrier.","1161924555":"Please select an option","1163771266":"The third block is <0>optional. You may use this block if you want to sell your contract before it expires. For now, leave the block as it is. ","1163836811":"Real Estate","1164773983":"Take profit and/or stop loss are not available while deal cancellation is active.","1166128807":"Choose one of your accounts or add a new cryptocurrency account","1166377304":"Increment value","1168029733":"Win payout if exit spot is also equal to entry spot.","1169201692":"Create {{platform}} password","1170228717":"Stay on {{platform_name_trader}}","1171765024":"Step 3","1171961126":"trade parameters","1172524677":"CFDs Demo","1174542625":"- Find the chat ID property in the response, and copy the value of the id property","1174748431":"Payment channel","1175183064":"Vanuatu","1176926166":"Experience with trading other financial instruments","1177396776":"If you select \"Asian Fall\", you will win the payout if the last tick is lower than the average of the ticks.","1177723589":"There are no transactions to display","1178582280":"The number of contracts you have lost since you last cleared your stats.","1178800778":"Take a photo of the back of your license","1178942276":"Please try again in a minute.","1179704370":"Please enter a take profit amount that's higher than the current potential profit.","1180619731":"Each day, you can make up to {{ allowed_internal }} transfers between your Deriv accounts, up to {{ allowed_mt5 }} transfers between your Deriv and {{platform_name_mt5}} accounts, and up to {{ allowed_dxtrade }} transfers between your Deriv and {{platform_name_dxtrade}} accounts.","1181396316":"This block gives you a random number from within a set range","1181770592":"Profit/loss from selling","1183007646":"- Contract type: the name of the contract type such as Rise, Fall, Touch, No Touch, etс.","1184968647":"Close your contract now or keep it running. If you decide to keep it running, you can check and close it later on the ","1188316409":"To receive your funds, contact the payment agent with the details below","1188980408":"5 minutes","1189249001":"4.1. What is considered a complaint?","1189368976":"Please complete your personal details before you verify your identity.","1191429031":"Please click on the link in the email to change your <0>{{platform_name_dxtrade}} password.","1191644656":"Predict the market direction and select either “Up” or “Down” to open a position. We will charge a commission when you open a position.","1192708099":"Duration unit","1195393249":"Notify {{ notification_type }} with sound: {{ notification_sound }} {{ input_message }}","1196006480":"Profit threshold","1196683606":"Deriv MT5 CFDs demo account","1198368641":"Relative Strength Index (RSI)","1199281499":"Last Digits List","1201533528":"Contracts won","1201773643":"numeric","1203297580":"This block sends a message to a Telegram channel.","1204223111":"In this example, the open prices from a list of candles are assigned to a variable called \"candle_list\".","1206227936":"How to mask your card?","1206821331":"Armed Forces","1207152000":"Choose a template and set your trade parameters.","1208714859":"For Short:","1208729868":"Ticks","1208903663":"Invalid token","1211912982":"Bot is starting","1214893428":"Account creation is currently unavailable for mobile. Please log in with your computer to create a new account.","1216408337":"Self-Employed","1217159705":"Bank account number","1217481729":"Tether as an ERC20 token (eUSDT) is a version of Tether that is hosted on Ethereum.","1218546232":"What is Fiat onramp?","1219844088":"do %1","1221250438":"To enable withdrawals, please submit your <0>Proof of Identity (POI) and <1>Proof of Address (POA) and also complete the <2>financial assessment in your account settings.","1222096166":"Deposit via bank wire, credit card, and e-wallet","1222521778":"Making deposits and withdrawals is difficult.","1222544232":"We’ve sent you an email","1225150022":"Number of assets","1227074958":"random fraction","1227240509":"Trim spaces","1228534821":"Some currencies may not be supported by payment agents in your country.","1229883366":"Tax identification number","1230884443":"State/Province (optional)","1231282282":"Use only the following special characters: {{permitted_characters}}","1232291311":"Maximum withdrawal remaining","1232353969":"0-5 transactions in the past 12 months","1233300532":"Payout","1234292259":"Source of wealth","1234764730":"Upload a screenshot of your name and email address from the personal details section.","1235426525":"50%","1237330017":"Pensioner","1238311538":"Admin","1239752061":"In your cryptocurrency wallet, make sure to select the <0>{{network_name}} network when you transfer funds to Deriv.","1239760289":"Complete your trading assessment","1239940690":"Restarts the bot when an error is encountered.","1240027773":"Please Log in","1240688917":"Glossary","1241238585":"You may transfer between your Deriv fiat, cryptocurrency, and {{platform_name_mt5}} accounts.","1242288838":"Hit the checkbox above to choose your document.","1242994921":"Click here to start building your Deriv Bot.","1243064300":"Local","1243287470":"Transaction status","1246207976":"Enter the authentication code generated by your 2FA app:","1246880072":"Select issuing country","1247280835":"Our cryptocurrency cashier is temporarily down due to system maintenance. You can make cryptocurrency deposits and withdrawals in a few minutes when the maintenance is complete.","1248018350":"Source of income","1248940117":"<0>a.The decisions made by the DRC are binding on us. DRC decisions are binding on you only if you accept them.","1250495155":"Token copied!","1252669321":"Import from your Google Drive","1253531007":"Confirmed","1254565203":"set {{ variable }} to create list with","1255827200":"You can also import or build your bot using any of these shortcuts.","1255909792":"last","1255963623":"To date/time {{ input_timestamp }} {{ dummy }}","1258097139":"What could we do to improve?","1258198117":"positive","1259598687":"GBP/JPY","1260259925":"Phone is not in a proper format.","1263387702":"All {{count}} account types use market execution. This means you agree with the broker's price in advance and will place orders at the broker's price.","1264096613":"Search for a given string","1264842111":"You can switch between real and demo accounts.","1265704976":"","1269296089":"Let's build a Bot!","1270581106":"If you select \"No Touch\", you win the payout if the market never touches the barrier at any time during the contract period.","1271461759":"Your contract will be closed automatically if your profit reaches this amount.","1272012156":"GBP/CHF","1272337240":"Days","1272681097":"Hours","1274819385":"3. Complaints and Disputes","1281045211":"Sorts the items in a given list, by their numeric or alphabetical value, in either ascending or descending order.","1281290230":"Select","1282951921":"Only Downs","1284522768":"If \"Loss\" is selected, it will return \"True\" if your last trade was unsuccessful. Otherwise, it will return an empty string.","1286094280":"Withdraw","1286507651":"Close identity verification screen","1288965214":"Passport","1289146554":"British Virgin Islands Financial Services Commission","1289646209":"Margin call","1290525720":"Example: ","1291887623":"Digital options trading frequency","1291997417":"Contracts will expire at exactly 23:59:59 GMT on your selected expiry date.","1292188546":"Reset Deriv MT5 investor password","1292891860":"Notify Telegram","1293660048":"Max. total loss per day","1294756261":"This block creates a function, which is a group of instructions that can be executed at any time. Place other blocks in here to perform any kind of action that you need in your strategy. When all the instructions in a function have been carried out, your bot will continue with the remaining blocks in your strategy. Click the “do something” field to give it a name of your choice. Click the plus icon to send a value (as a named variable) to your function.","1295284664":"Please accept our <0>updated Terms and Conditions to proceed.","1296380713":"Close my contract","1299479533":"8 hours","1300576911":"Please resubmit your proof of address or we may restrict your account.","1302691457":"Occupation","1303016265":"Yes","1303530014":"We’re processing your withdrawal.","1304083330":"copy","1304272843":"Please submit your proof of address.","1304620236":"Enable camera","1304788377":"<0/><1/>If your complaint relates to our data processing practices, you can submit a formal complaint to the <2>Information and Data Protection Commissioner (Malta) on their website or make a complaint to any supervisory authority within the European Union.","1304807342":"Compare CFDs demo accounts","1305217290":"Upload the back of your identity card.","1308625834":"Sets the default time interval for blocks that read list of candles.","1309017029":"Enabling this allows you to save your blocks as one collection which can be easily integrated into other bots.","1309044871":"Returns the value of the latest tick in string format","1309133590":"Earn a range of payouts by correctly predicting market movements with <0>options, or get the upside of CFDs without risking more than your initial stake with <1>multipliers.","1309186223":"- current stake: Use this variable to store the stake amount used in the last contract. You can assign any amount you want, but it must be a positive number.","1310483610":"Results for \"{{ search_term }}\"","1311680770":"payout","1313167179":"Please log in","1316216284":"You can use this password for all your {{platform}} accounts.","1319217849":"Check your mobile","1320750775":"Front and back","1322804930":"Restart the process on the latest version of Google Chrome","1323327633":"Our complaints process comprises the following 4 steps:","1323476617":"Changes the capitalisation of a string of text to Upper case, Lower case, Title case.","1323941798":"Short","1323996051":"Profile","1324922837":"2. The new variable will appear as a block under Set variable.","1325514262":"(licence no. MB/18/0024)","1327181172":"Financial Vanuatu","1327494533":"{{sell_value}} (Sell)","1329136554":"Jump 200 Index","1329325646":"The content of this block is called on every tick","1331199417":"Please enter the correct format. ","1331367811":"Client account number","1332168410":"Learn more","1332168769":"Disconnect","1333576137":"Please update your {{details}} to continue.","1333839457":"Submit identity card (front)","1334326985":"It may take a few minutes to arrive","1335967988":"Notice","1336052175":"Switch accounts","1337846406":"This block gives you the selected candle value from a list of candles within the selected time interval.","1337864666":"Photo of your document","1338496204":"Ref. ID","1339613797":"Regulator/External dispute resolution","1341840346":"View in Journal","1346204508":"Take profit","1346339408":"Managers","1347071802":"{{minutePast}}m ago","1348009461":"Please close your positions in the following Deriv X account(s):","1349133669":"Try changing your search criteria.","1349289354":"Great, that's everything we need","1349295677":"in text {{ input_text }} get substring from {{ position1 }} {{ index1 }} to {{ position2 }} {{ index2 }}","1351906264":"This feature is not available for payment agents.","1353197182":"Please select","1354288636":"Based on your answers, it looks like you have insufficient knowledge and experience in trading CFDs. CFD trading is risky and you could potentially lose all of your capital.<0/><0/>","1355250245":"{{ calculation }} of list {{ input_list }}","1356373528":"Run Deriv EZ on your browser","1356574493":"Returns a specific portion of a given string of text.","1356607862":"Deriv password","1357129681":"{{num_day}} days {{num_hour}} hours {{num_minute}} minutes","1357213116":"Identity card","1358543466":"Not available","1358543748":"enabled","1359424217":"You have sold this contract at <0 />","1360929368":"Add a Deriv account","1362578283":"High","1363060668":"Your trading statistics since:","1363645836":"Derived FX","1363675688":"Duration is a required field.","1364958515":"Stocks","1366244749":"Limits","1367023655":"To ensure your loss does not exceed your stake, your contract will be closed automatically when your loss equals to <0/>.","1367488817":"4. Restart trading conditions","1367990698":"Volatility 10 Index","1369709538":"Our terms of use","1370647009":"Enjoy higher daily limits","1371193412":"Cancel","1371555192":"Choose your preferred payment agent and enter your withdrawal amount. If your payment agent is not listed, <0>search for them using their account number.","1371641641":"Open the link on your mobile","1371911731":"Financial products in the EU are offered by {{legal_entity_name}}, licensed as a Category 3 Investment Services provider by the Malta Financial Services Authority (<0>Licence no. IS/70156).","1374627690":"Max. account balance","1375884086":"Financial, legal, or government document: recent bank statement, affidavit, or government-issued letter.","1376329801":"Last 60 days","1378419333":"Ether","1380349261":"Range","1383017005":"You have switched accounts.","1384127719":"You should enter {{min}}-{{max}} numbers.","1384222389":"Please submit valid identity documents to unlock the cashier.","1385418910":"Please set a currency for your existing real account before creating another account.","1387503299":"Log in","1388770399":"Proof of identity required","1389197139":"Import error","1390792283":"Trade parameters","1391174838":"Potential payout:","1392966771":"Mrs","1392985917":"This is similar to a commonly used password","1393559748":"Invalid date/time: {{ datetime_string }}","1393901361":"There’s an app for that","1393903598":"if true {{ return_value }}","1396179592":"Commission","1396417530":"Bear Market Index","1397628594":"Insufficient funds","1400341216":"We’ll review your documents and notify you of its status within 1 to 3 days.","1400732866":"View from camera","1402208292":"Change text case","1403376207":"Update my details","1405584799":"with interval: {{ candle_interval_type }}","1407191858":"DTrader","1408844944":"Click the plus icon to extend the functionality of this block.","1411373212":"Strong passwords contain at least 8 characters. combine uppercase and lowercase letters, numbers, and symbols.","1412535872":"You can check the result of the last trade with this block. It can only be placed within the \"Restart trading conditions\" root block.","1413047745":"Assigns a given value to a variable","1413359359":"Make a new transfer","1414205271":"prime","1415006332":"get sub-list from first","1415513655":"Download cTrader on your phone to trade with the Deriv cTrader account","1415974522":"If you select \"Differs\", you will win the payout if the last digit of the last tick is not the same as your prediction.","1417558007":"Max. total loss over 7 days","1417914636":"Login ID","1418115525":"This block repeats instructions as long as a given condition is true.","1421749665":"Simple Moving Average (SMA)","1422060302":"This block replaces a specific item in a list with another given item. It can also insert the new item in the list at a specific position.","1422129582":"All details must be clear — nothing blurry","1423082412":"Last Digit","1423296980":"Enter your SSNIT number","1424741507":"See more","1424779296":"If you've recently used bots but don't see them in this list, it may be because you:","1428657171":"You can only make deposits. Please contact us via <0>live chat for more information.","1430396558":"5. Restart buy/sell on error","1430632931":"To get trading, please confirm who you are, and where you live.","1433367863":"Sorry, an error occured while processing your request.","1433468641":"We offer our services in all countries, except for the ones mentioned in our terms and conditions.","1434382099":"Displays a dialog window with a message","1434767075":"Get started on Deriv Bot","1434976996":"Announcement","1435363248":"This block converts the number of seconds since the Unix Epoch to a date and time format such as 2019-08-01 00:00:00.","1435380105":"Minimum deposit","1437396005":"Add comment","1438247001":"A professional client receives a lower degree of client protection due to the following.","1438340491":"else","1439168633":"Stop loss:","1441208301":"Total<0 />profit/loss","1442747050":"Loss amount: <0>{{profit}}","1442840749":"Random integer","1443478428":"Selected proposal does not exist","1444843056":"Corporate Affairs Commission","1445592224":"You accidentally gave us another email address (Usually a work or a personal one instead of the one you meant).","1446742608":"Click here if you ever need to repeat this tour.","1449462402":"In review","1452260922":"Too many failed attempts","1452941569":"This block delays execution for a given number of seconds. You can place any blocks within this block. The execution of other blocks in your strategy will be paused until the instructions in this block are carried out.","1453317405":"This block gives you the balance of your account either as a number or a string of text.","1454406889":"Choose <0>until as the repeat option.","1454648764":"deal reference id","1454865058":"Do not enter an address linked to an ICO purchase or crowdsale. If you do, the ICO tokens will not be credited into your account.","1455741083":"Upload the back of your driving licence.","1457341530":"Your proof of identity verification has failed","1457603571":"No notifications","1458160370":"Enter your {{platform}} password to add a {{platform_name}} {{account}} {{jurisdiction_shortcode}} account.","1459761348":"Submit proof of identity","1461323093":"Display messages in the developer’s console.","1464190305":"This block will transfer the control back to the Purchase conditions block, enabling you to purchase another contract without manually stopping and restarting your bot.","1464253511":"You already have an account for each of the cryptocurrencies available on {{deriv}}.","1465084972":"How much experience do you have with other financial instruments?","1465919899":"Pick an end date","1466430429":"Should be between {{min_value}} and {{max_value}}","1466900145":"Doe","1467017903":"This market is not yet available on {{platform_name_trader}}, but it is on {{platform_name_smarttrader}}.","1467421920":"with interval: %1","1467661678":"Cryptocurrency trading","1467880277":"3. General queries","1468308734":"This block repeats instructions as long as a given condition is true","1468419186":"Deriv currently supports withdrawals of Tether USDT to Omni wallet. To ensure a successful transaction, enter a wallet address compatible with the tokens you wish to withdraw. <0>Learn more","1468937050":"Trade on {{platform_name_trader}}","1469133110":"cTrader Windows app","1469150826":"Take Profit","1469764234":"Cashier Error","1469814942":"- Division","1470319695":"Returns either True or False","1471008053":"Deriv Bot isn't quite ready for real accounts","1471070549":"Can contract be sold?","1471741480":"Severe error","1473369747":"Synthetics only","1476301886":"Similar to SMA, this block gives you the entire SMA line containing a list of all values for a given period.","1478030986":"Create or delete API tokens for trading and withdrawals","1480915523":"Skip","1481977420":"Please help us verify your withdrawal request.","1483470662":"Click ‘Open’ to start trading with your account","1484336612":"This block is used to either terminate or continue a loop, and can be placed anywhere within a loop block.","1487086154":"Your documents were submitted successfully","1488548367":"Upload again","1491392301":"<0>Sold for: {{sold_for}}","1492686447":"Your MT5 Financial STP account will be opened through Deriv (FX) Ltd. All trading in this account is subject to the regulations and guidelines of the Labuan Financial Service Authority (LFSA). None of your other accounts, including your Deriv account, is subject to the regulations and guidelines of the Labuan Financial Service Authority (LFSA).","1493673429":"Change email","1493866481":"Run Deriv X on your browser","1496810530":"GBP/AUD","1497773819":"Deriv MT5 accounts","1499074768":"Add a real Deriv Multipliers account","1499080621":"Tried to perform an invalid operation.","1501691227":"Add Your Deriv MT5 <0>{{account_type_name}} account under Deriv (V) Ltd, regulated by the Vanuatu Financial Services Commission.","1502039206":"Over {{barrier}}","1502325741":"Your password cannot be the same as your email address.","1503618738":"- Deal reference ID: the reference ID of the contract","1505420815":"No payment agents found for your search","1505898522":"Download stack","1505927599":"Our servers hit a bump. Let’s refresh to move on.","1509559328":"cTrader","1509570124":"{{buy_value}} (Buy)","1509678193":"Education","1510075920":"Gold/USD","1510357015":"Tax residence is required.","1510735345":"This block gives you a list of the last digits of the last 1000 tick values.","1512469749":"In the above example it is assumed that variable candle_open_price is processed somewhere within other blocks.","1516559721":"Please select one file only","1516676261":"Deposit","1516834467":"‘Get’ the accounts you want","1517503814":"Drop file or click here to upload","1519124277":"Derived SVG","1519891032":"Welcome to Trader's Hub","1520332426":"Net annual income","1524636363":"Authentication failed","1526483456":"2. Enter a name for your variable, and hit Create. New blocks containing your new variable will appear below.","1527251898":"Unsuccessful","1527664853":"Your payout is equal to the payout per point multiplied by the difference between the final price and the strike price.","1527906715":"This block adds the given number to the selected variable.","1531017969":"Creates a single text string from combining the text value of each attached item, without spaces in between. The number of items can be added accordingly.","1533177906":"Fall","1534796105":"Gets variable value","1537711064":"You need to make a quick identity verification before you can access the Cashier. Please go to your account settings to submit your proof of identity.","1540585098":"Decline","1541508606":"Looking for CFDs? Go to Trader's Hub","1541969455":"Both","1542742708":"Synthetics, Forex, Stocks, Stock indices, Commodities, and Cryptocurrencies","1544642951":"If you select \"Only Ups\", you win the payout if consecutive ticks rise successively after the entry spot. No payout if any tick falls or is equal to any of the previous ticks.","1547148381":"That file is too big (only up to 8MB allowed). Please upload another file.","1548765374":"Verification of document number failed","1549098835":"Total withdrawn","1551172020":"AUD Basket","1552162519":"View onboarding","1555345325":"User Guide","1557426040":"Demo Derived SVG","1557682012":"Account Settings","1557904289":"We accept only these types of documents as proof of your address. The document must be recent (issued within last 6 months) and include your name and address:","1558972889":"set {{ variable }} to Simple Moving Average {{ dummy }}","1559220089":"Options and multipliers trading platform.","1560302445":"Copied","1562374116":"Students","1562982636":"Re-add your MT5 account using the same log in credentials.","1564392937":"When you set your limits or self-exclusion, they will be aggregated across all your account types in {{platform_name_trader}} and {{platform_name_dbot}}. For example, the losses made on both platforms will add up and be counted towards the loss limit you set.","1566037033":"Bought: {{longcode}} (ID: {{transaction_id}})","1566717687":"We also provide a guide on the Tutorial tab to show you how you can build and execute a simple strategy.","1567076540":"Only use an address for which you have proof of residence - ","1567586204":"Self-exclusion","1567745852":"Bot name","1569624004":"Dismiss alert","1570484627":"Ticks list","1571303610":"3. Set your trade parameters and hit Create.","1571575776":"Accepted formats: pdf, jpeg, jpg, and png. Max file size: 8MB","1572504270":"Rounding operation","1572982976":"Server","1573429525":"Call/Put","1573533094":"Your document is pending for verification.","1574989243":"- trade again: Use this variable to stop trading when your loss limit is reached. Set the initial value to true.","1575556189":"Tether on the Ethereum blockchain, as an ERC20 token, is a newer transport layer, which now makes Tether available in Ethereum smart contracts. As a standard ERC20 token, it can also be sent to any Ethereum address.","1577480486":"Your mobile link will expire in one hour","1577527507":"Account opening reason is required.","1577612026":"Select a folder","1579839386":"Appstore","1580498808":"Multiple faces found","1584109614":"Ticks String List","1584936297":"XML file contains unsupported elements. Please check or modify file.","1585859194":"We’ll charge a 1% transfer fee for transfers in different currencies between your Deriv fiat and {{platform_name_mt5}} accounts, your Deriv fiat and {{platform_name_derivez}} accounts, and your Deriv fiat and {{platform_name_dxtrade}} accounts.","1587046102":"Documents from that country are not currently supported — try another document type","1589148299":"Start","1589640950":"Resale of this contract is not offered.","1589702653":"Proof of address","1590400723":"Total assets in all your accounts","1591933071":"Resubmit document","1593010588":"Login now","1594147169":"Please come back in","1594322503":"Sell is available","1596378630":"You have added a real Gaming account.<0/>Make a deposit now to start trading.","1597672660":"Deriv MT5 Password","1598009247":"<0>a.You may file a complaint with the Financial Commission up to 45 days after the incident.","1598443642":"Transaction hash","1602894348":"Create a password","1604916224":"Absolute","1605222432":"I have no knowledge and experience in trading at all.","1605292429":"Max. total loss","1612105450":"Get substring","1612638396":"Cancel your trade at any time within a specified timeframe.","1613633732":"Interval should be between 10-60 minutes","1615897837":"Signal EMA Period {{ input_number }}","1618809782":"Maximum withdrawal","1619070150":"You are being redirected to an external website.","1620278321":"Names and surnames by themselves are easy to guess","1620346110":"Set currency","1621024661":"Tether as a TRC20 token (tUSDT) is a version of Tether that is hosted on Tron.","1622662457":"Date from","1622944161":"Now, go to the <0>Restart trading conditions block.","1623706874":"Use this block when you want to use multipliers as your trade type.","1628981793":"Can I trade cryptocurrencies on Deriv Bot?","1630417358":"Please go to your account settings and complete your personal details to enable withdrawals.","1631281562":"GBP Basket","1634903642":"Only your face can be in the selfie","1634969163":"Change currency","1635266650":"It seems that your name in the document is not the same as your Deriv profile. Please update your name in the <0>Personal details page to solve this issue.","1635628424":"An envelope with your name and address.","1636605481":"Platform settings","1636782601":"Multipliers","1638321777":"Your demo account balance is low. Reset your balance to continue trading from your demo account.","1639262461":"Pending withdrawal request:","1639304182":"Please click on the link in the email to reset your password.","1641395634":"Last digits list","1641635657":"New proof of identity document needed","1641980662":"Salutation is required.","1644636153":"Transaction hash: <0>{{value}}","1644703962":"Looking for CFD accounts? Go to Trader's Hub","1644864436":"You’ll need to authenticate your account before requesting to become a professional client. <0>Authenticate my account","1644908559":"Digit code is required.","1647186767":"The bot encountered an error while running.","1648938920":"Netherlands 25","1649239667":"2. Under the Blocks menu, you'll see a list of categories. Blocks are grouped within these categories. Choose the block you want and drag them to the workspace.","1651513020":"Display remaining time for each interval","1651951220":"Repeats like \"abcabcabc\" are only slightly harder to guess than \"abc\"","1652366857":"get and remove","1652968048":"Define your trade options such as multiplier and stake.","1652976865":"In this example, this block is used with another block to get the open prices from a list of candles. The open prices are then assigned to the variable called \"cl\".","1653136377":"copied!","1653180917":"We cannot verify you without using your camera","1654365787":"Unknown","1654721858":"Upload anyway","1655627840":"UPPER CASE","1656155124":"Resend in <0 /> seconds","1658954996":"Plant and Machine Operators and Assemblers","1659074761":"Reset Put","1659352235":"Add your Deriv MT5 CFDs account under Deriv Investments (Europe) Limited, regulated by the Malta Financial Services Authority (MFSA) (licence no. IS/70156).","1665272539":"Remember: You cannot log in to your account until the selected date.","1665738338":"Balance","1665756261":"Go to live chat","1668138872":"Modify account settings","1670016002":"Multiplier: {{ multiplier }}","1670426231":"End Time","1671232191":"You have set the following limits:","1674163852":"You can determine the expiry of your contract by setting the duration or end time.","1675030608":"To create this account first we need you to resubmit your proof of address.","1675289747":"Switched to real account","1676549796":"Dynamic Leverage","1677027187":"Forex","1677990284":"My apps","1679743486":"1. Go to Quick strategy and select the strategy you want.","1680666439":"Upload your bank statement showing your name, account number, and transaction history.","1682409128":"Untitled Strategy","1682636566":"Resend email in","1683522174":"Top-up","1683963454":"Your contract will be closed automatically at the next available asset price on {{date}} at {{timestamp}}.","1684419981":"What's this?","1686800117":"{{error_msg}}","1687173740":"Get more","1689103988":"Second Since Epoch","1689258195":"We were unable to verify your address with the details you provided. Please check and resubmit or choose a different document type.","1691335819":"To continue trading with us, please confirm who you are.","1691765860":"- Negation","1692912479":"Deriv MT5, Deriv X","1693614409":"Start time","1694331708":"You can switch between CFDs, digital options, and multipliers at any time.","1694517345":"Enter a new email address","1698624570":"2. Hit Ok to confirm.","1700233813":"Transfer from {{selected_value}} is not allowed, Please choose another account from dropdown","1701447705":"Please update your address","1702339739":"Common mistakes","1703091957":"We collect information about your employment as part of our due diligence obligations, as required by anti-money laundering legislation.","1704656659":"How much experience do you have in CFD trading?","1708413635":"For your {{currency_name}} ({{currency}}) account","1709401095":"Trade CFDs on Deriv X with financial markets and our Derived indices.","1709859601":"Exit Spot Time","1710662619":"If you have the app, launch it to start trading.","1711013665":"Anticipated account turnover","1711676335":"square root","1711929663":"Your funds have been transferred","1712357617":"Invalid email address.","1714255392":"To enable withdrawals, please complete your financial assessment.","1715011380":"Jump 25 Index","1715630945":"Returns the total profit in string format","1717023554":"Resubmit documents","1719248689":"EUR/GBP/USD","1720451994":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv fiat and Deriv cryptocurrency accounts.","1720968545":"Upload passport photo page from your computer","1723589564":"Represents the maximum number of outstanding contracts in your portfolio. Each line in your portfolio counts for one open position. Once the maximum is reached, you will not be able to open new positions without closing an existing position first.","1724696797":"You are limited to one fiat account only.","1725958461":"Account number","1726472773":"Function with no return value","1726565314":"Close my account","1728121741":"Transactions.csv","1728183781":"About Tether","1729145421":"Risk warning","1731747596":"The block(s) highlighted in red are missing input values. Please update them and click \"Run bot\".","1732891201":"Sell price","1733711201":"Regulators/external dispute resolution","1734185104":"Balance: %1","1734264460":"Disclaimer","1736292549":"Update postal code","1737352280":"Bot.init is not called","1738094481":"<0>Duration: Ticks 1","1738681493":"Remove your glasses, if necessary","1739086943":"Wall Street 30","1739384082":"Unemployed","1739668049":"Close your account","1740371444":"Underlying market is not selected","1742256256":"Please upload one of the following documents:","1743448290":"Payment agents","1743679873":"If you select <0>\"Call\", you’ll earn a <1>payout if the <1>final price is above the <1>strike price at <1>expiry. Otherwise, you won’t receive a payout.","1743902050":"Complete your financial assessment","1744509610":"Just drag the XML file from your computer onto the workspace, and your bot will be loaded accordingly. Alternatively, you can hit Import in Bot Builder, and choose to import your bot from your computer or from your Google Drive.","1745523557":"- Square root","1746051371":"Download the app","1746273643":"Moving Average Convergence Divergence","1747501260":"Sell conditions","1747523625":"Go back","1747674345":"Please use `.` as a decimal separator for fractional numbers.","1747682136":"Contract was cancelled.","1748754976":"Run","1749675724":"Deriv charges no commission across all account types.","1750065391":"Login time:","1753183432":"We take all complaints seriously and aim to resolve them as quickly and fairly as possible. If you are unhappy with any aspect of our service, please let us know by submitting a complaint using the guidance below:","1753226544":"remove","1753975551":"Upload passport photo page","1756678453":"break out","1758386013":"Do not get lured to fake \"Deriv\" pages!","1761038852":"Let’s continue with providing proofs of address and identity.","1761762171":"Restart last trade on error (bot ignores the unsuccessful trade): {{ checkbox }}","1762707297":"Phone number","1762746301":"MF4581125","1763123662":"Upload your NIMC slip.","1766212789":"Server maintenance starts at 06:00 GMT every Sunday and may last up to 2 hours. You may experience service disruption during this time.","1766993323":"Only letters, numbers, and underscores are allowed.","1767429330":"Add a Derived account","1768293340":"Contract value","1768861315":"Minute","1768918213":"Only letters, space, hyphen, period, and apostrophe are allowed.","1769068935":"Choose any of these exchanges to buy cryptocurrencies:","1771037549":"Add a Deriv real account","1771592738":"Conditional block","1777847421":"This is a very common password","1778893716":"Click here","1779144409":"Account verification required","1779519903":"Should be a valid number.","1780442963":"Scan the QR code to download {{ platform }}.","1780770384":"This block gives you a random fraction between 0.0 to 1.0.","1781393492":"We do not charge a transfer fee for transfers in the same currency between your Deriv fiat and {{platform_name_mt5}} accounts, your Deriv fiat and {{platform_name_derivez}} accounts and your Deriv fiat and {{platform_name_dxtrade}} accounts.","1782308283":"Quick strategy","1782395995":"Last Digit Prediction","1782690282":"Blocks menu","1782703044":"Sign up","1783526986":"How do I build a trading bot?","1783740125":"Upload your selfie","1787135187":"Postal/ZIP code is required","1787492950":"Indicators on the chart tab are for indicative purposes only and may vary slightly from the ones on the {{platform_name_dbot}} workspace.","1788515547":"<0/>For more information on submitting a complaint with the Office of the Arbiter for Financial Services, please <1>see their guidance.","1788966083":"01-07-1999","1789273878":"Payout per point","1789497185":"Make sure your passport details are clear to read, with no blur or glare","1790770969":"FX-majors (standard/micro lots), FX-minors, Commodities, Cryptocurrencies","1791017883":"Check out this <0>user guide.","1791432284":"Search for country","1791971912":"Recent","1793913365":"To deposit money, please switch to your {{currency_symbol}} account.","1794815502":"Download your transaction history.","1796787905":"Please upload the following document(s).","1798943788":"You can only make deposits.","1801093206":"Get candle list","1801270786":"Ready to automate your trading strategy without writing any code? You’ve come to the right place.","1801927731":"{{platform_name_dxtrade}} accounts","1803338729":"Choose what type of contract you want to trade. For example, for the Rise/Fall trade type you can choose one of three options: Rise, Fall, or Both. Selected option will determine available options for the Purchase block.","1804620701":"Expiration","1804789128":"{{display_value}} Ticks","1806017862":"Max. ticks","1806355993":"No commission","1808058682":"Blocks are loaded successfully","1808393236":"Login","1808867555":"This block uses the variable “i” to control the iterations. With each iteration, the value of “i” is determined by the items in a given list.","1810217569":"Please refresh this page to continue.","1811109068":"Jurisdiction","1811972349":"Market","1811973475":"Returns a specific character from a given string","1812006199":"Identity verification","1812582011":"Connecting to server","1813700208":"Boom 300 Index","1813958354":"Remove comment","1815034361":"alphabetic","1815905959":"DTrader, DBot, SmartTrader, and Binary Bot","1815995250":"Buying contract","1816126006":"Trade on Deriv MT5 ({{platform_name_dmt5}}), the all-in-one FX and CFD trading platform.","1817154864":"This block gives you a random number from within a set range.","1820242322":"e.g. United States","1820332333":"Top up","1821818748":"Enter Driver License Reference number","1823177196":"Most popular","1824193700":"This block gives you the last digit of the latest tick value.","1824292864":"Call","1827607208":"File not uploaded.","1828370654":"Onboarding","1830520348":"{{platform_name_dxtrade}} Password","1831847842":"I confirm that the name and date of birth above match my chosen identity document (see below)","1833481689":"Unlock","1833499833":"Proof of identity documents upload failed","1836767074":"Search payment agent name","1837762008":"Please submit your proof of identity and proof of address to verify your account in your account settings to access the cashier.","1838639373":"Resources","1839021527":"Please enter a valid account number. Example: CR123456789","1840865068":"set {{ variable }} to Simple Moving Average Array {{ dummy }}","1841381387":"Get more wallets","1841788070":"Palladium/USD","1841996888":"Daily loss limit","1842266423":"back","1842862156":"Welcome to your Deriv X dashboard","1843658716":"If you select \"Only Downs\", you win the payout if consecutive ticks fall successively after the entry spot. No payout if any tick rises or is equal to any of the previous ticks.","1845892898":"(min: {{min_stake}} - max: {{max_payout}})","1846266243":"This feature is not available for demo accounts.","1846587187":"You have not selected your country of residence","1846664364":"{{platform_name_dxtrade}}","1849484058":"Any unsaved changes will be lost.","1850031313":"- Low: the lowest price","1850132581":"Country not found","1850659345":"- Payout: the payout of the contract","1850663784":"Submit proofs","1851052337":"Place of birth is required.","1851776924":"upper","1854480511":"Cashier is locked","1854874899":"Back to list","1855566768":"List item position","1856485118":"Please <0>resubmit your proof of address to transfer funds between MT5 and Deriv accounts.","1856755117":"Pending action required","1856932069":"For Long:","1858251701":"minute","1859308030":"Give feedback","1863053247":"Please upload your identity document.","1863694618":"Trade CFDs on MT5 with forex, stocks, stock indices, commodities, and cryptocurrencies.","1863731653":"To receive your funds, contact the payment agent","1865525612":"No recent transactions.","1866811212":"Deposit in your local currency via an authorised, independent payment agent in your country.","1866836018":"<0/><1/>If your complaint relates to our data processing practices, you can submit a formal complaint to your local supervisory authority.","1867217564":"Index must be a positive integer","1867783237":"High-to-Close","1869315006":"See how we protect your funds to unlock the cashier.","1869787212":"Even","1870933427":"Crypto","1871196637":"True if the result of the last trade matches the selection","1871377550":"Do you offer pre-built trading bots on Deriv Bot?","1871664426":"Note","1873838570":"Please verify your address","1874481756":"Use this block to purchase the specific contract you want. You may add multiple Purchase blocks together with conditional blocks to define your purchase conditions. This block can only be used within the Purchase conditions block.","1874756442":"BVI","1875702561":"Load or build your bot","1876015808":"Social Security and National Insurance Trust","1876325183":"Minutes","1877225775":"Your proof of address is verified","1877832150":"# from end","1878172674":"No, we don't. However, you'll find quick strategies on Deriv Bot that'll help you build your own trading bot for free.","1879042430":"Appropriateness Test, WARNING:","1879412976":"Profit amount: <0>{{profit}}","1879651964":"<0>Pending verification","1880029566":"Australian Dollar","1880097605":"prompt for {{ string_or_number }} with message {{ input_text }}","1880875522":"Create \"get %1\"","1881018702":"hour","1881587673":"Total stake since you last cleared your stats.","1882825238":"Restart trading conditions","1883531976":"Clerks","1885708031":"#","1889357660":"Enter a value in minutes, up to 60480 minutes (equivalent to 6 weeks).","1890171328":"By clicking Accept below and proceeding with the Account Opening you should note that you may be exposing yourself to risks (which may be significant, including the risk of loss of the entire sum invested) that you may not have the knowledge and experience to properly assess or mitigate.","1890332321":"Returns the number of characters of a given string of text, including numbers, spaces, punctuation marks, and symbols.","1893869876":"(lots)","1894667135":"Please verify your proof of address","1898670234":"{{formatted_opening_time}} (GMT) on {{opening_day}},<0> {{opening_date}}.","1899898605":"Maximum size: 8MB","1902547203":"MetaTrader 5 MacOS app","1903437648":"Blurry photo detected","1905032541":"We're now ready to verify your identity","1905589481":"If you want to change your account currency, please contact us via <0>live chat.","1906213000":"Our system will finish any Deriv Bot trades that are running, and Deriv Bot will not place any new trades.","1906639368":"If this is the first time you try to create a password, or you have forgotten your password, please reset it.","1907884620":"Add a real Deriv Gaming account","1908239019":"Make sure all of the document is in the photo","1908686066":"Appropriateness Test Warning","1909647105":"TRX/USD","1909769048":"median","1913777654":"Switch account","1914014145":"Today","1914270645":"Default Candle Interval: {{ candle_interval_type }}","1914725623":"Upload the page that contains your photo.","1917178459":"Bank Verification Number","1917523456":"This block sends a message to a Telegram channel. You will need to create your own Telegram bot to use this block.","1918796823":"Please enter a stop loss amount.","1918832194":"No experience","1919030163":"Tips to take a good selfie","1919594496":"{{website_name}} is not affiliated with any payment agents. Customers deal with payment agents at their sole risk. Customers are advised to check the credentials of payment agents and the accuracy of any information about payment agents (on {{website_name}} or elsewhere) before using their services.","1919694313":"To start trading, transfer funds from your Deriv account into this account.","1920217537":"Compare","1920468180":"How to use the SMA block","1921634159":"A few personal details","1921914669":"Deposit with Deriv P2P","1922529883":"Boom 1000 Index","1922955556":"Use a longer keyboard pattern with more turns","1923431535":"“Stop loss” is deactivated and will only be available when “Deal cancellation” expires.","1924365090":"Maybe later","1924765698":"Place of birth*","1926987784":"- iOS: Swipe left on the account and tap <0>Delete.","1928930389":"GBP/NOK","1929309951":"Employment Status","1929379978":"Switch between your demo and real accounts.","1929694162":"Compare accounts","1930899934":"Tether","1931659123":"Run on every tick","1931884033":"It seems that your date of birth in the document is not the same as your Deriv profile. Please update your date of birth in the <0>Personal details page to solve this issue.","1934450653":"For <0>Contract type, set it to Both.","1938327673":"Deriv {{platform}} <0>{{is_demo}}","1939014728":"How do I remove blocks from the workspace?","1939902659":"Signal","1940408545":"Delete this token","1941915555":"Try later","1942091675":"Cryptocurrency trading is not available for clients residing in the United Kingdom.","1943440862":"Calculates Bollinger Bands (BB) list from a list with a period","1944204227":"This block returns current account balance.","1947527527":"1. This link was sent by you","1948092185":"GBP/CAD","1949719666":"Here are the possible reasons:","1950413928":"Submit identity documents","1952580688":"Submit passport photo page","1955219734":"Town/City*","1957759876":"Upload identity document","1958807602":"4. 'Table' takes an array of data, such as a list of candles, and displays it in a table format.","1959678342":"Highs & Lows","1960240336":"first letter","1964097111":"USD","1964165648":"Connection lost","1965916759":"Asian options settle by comparing the last tick with the average spot over the period.","1966023998":"2FA enabled","1966281100":"Console {{ message_type }} value: {{ input_message }}","1968025770":"Bitcoin Cash","1968077724":"Agriculture","1968368585":"Employment status","1970060713":"You’ve successfully deleted a bot.","1971898712":"Add or manage account","1973060793":"- maximum loss: Use this variable to store your maximum loss limit. You can assign any amount you want, but it must be a positive number.","1973536221":"You have no open positions yet.","1973564194":"You are limited to one fiat account. You won’t be able to change your account currency if you have already made your first deposit or created a real {{dmt5_label}} or {{platform_name_dxtrade}} account.","1973910243":"Manage your accounts","1974273865":"This scope will allow third-party apps to view your account activity, settings, limits, balance sheets, trade purchase history, and more.","1974903951":"If you hit Yes, the info you entered will be lost.","1981940238":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name_svg}} and {{legal_entity_name_v}}.","1982912252":"Relative Strength Index (RSI) from a list with a period","1983001416":"Define your trade options such as multiplier and stake. This block can only be used with the multipliers trade type. If you select another trade type, this block will be replaced with the Trade options block.","1983358602":"This policy, which may change from time to time, applies to your account registered with {{legal_entity_name}}.","1983387308":"Preview","1983480826":"Sign in","1983544897":"P.O. Box is not accepted in address","1983676099":"Please check your email for details.","1984700244":"Request an input","1984742793":"Uploading documents","1985366224":"Each day, you can make up to {{ allowed_internal }} transfers between your Deriv accounts and up to {{ allowed_mt5 }} transfers between your Deriv and {{platform_name_mt5}} accounts.","1985637974":"Any blocks placed within this block will be executed at every tick. If the default candle interval is set to 1 minute in the Trade Parameters root block, the instructions in this block will be executed once every minute. Place this block outside of any root block.","1986498784":"BTC/LTC","1987080350":"Demo","1987447369":"Your cashier is locked","1988153223":"Email address","1988302483":"Take profit:","1988601220":"Duration value","1990331072":"Proof of ownership","1990735316":"Rise Equals","1991055223":"View the market price of your favourite assets.","1991448657":"Don't know your tax identification number? Click <0>here to learn more.","1991524207":"Jump 100 Index","1994023526":"The email address you entered had a mistake or typo (happens to the best of us).","1994558521":"The platforms aren’t user-friendly.","1994600896":"This block requires a list of candles as an input parameter.","1995023783":"First line of address*","1996767628":"Please confirm your tax information.","1997138507":"If the last tick is equal to the average of the ticks, you don't win the payout.","1997313835":"Your stake will continue to grow as long as the current spot price remains within a specified <0>range from the <0>previous spot price. Otherwise, you lose your stake and the trade is terminated.","1998199587":"You can also exclude yourself entirely for a specified duration. If, at any time, you decide to trade again, you must then contact our Customer Support to remove this self-exclusion. There will be a 24-hour-cooling-off period before you can resume trading. ","1999346412":"For faster verification, input the same address here as in your proof of address document (see section below)","2001222130":"Check your spam or junk folder. If it's not there, try resending the email.","2004395123":"New trading tools for MT5","2004792696":"If you are a UK resident, to self-exclude from all online gambling companies licensed in Great Britain, go to <0>www.gamstop.co.uk.","2007028410":"market, trade type, contract type","2007092908":"Trade with leverage and low spreads for better returns on successful trades.","2010759971":"Uploads successful","2010866561":"Returns the total profit/loss","2011609940":"Please input number greater than 0","2011808755":"Purchase Time","2014536501":"Card number","2014590669":"Variable '{{variable_name}}' has no value. Please set a value for variable '{{variable_name}}' to notify.","2017672013":"Please select the country of document issuance.","2020545256":"Close your account?","2021037737":"Please update your details to continue.","2021161151":"Watch this video to learn how to build a trading bot on Deriv Bot. Also, check out this blog post on building a trading bot.","2023659183":"Student","2023762268":"I prefer another trading website.","2025339348":"Move away from direct light — no glare","2027625329":"Simple Moving Average Array (SMAA)","2027696535":"Tax information","2028163119":"EOS/USD","2029237955":"Labuan","2029641956":"CFDCompareAccounts","2030018735":"RSI is a technical analysis tool that helps you identify the market trend. It will give you a value from 0 to 100. An RSI value of 70 and above means that the asset is overbought and the current trend may reverse, while a value of 30 and below means that the asset is oversold.","2030045667":"Message","2033648953":"This block gives you the specified candle value for a selected time interval.","2034803607":"You must be 18 years old and above.","2035258293":"Start trading with us","2035925727":"sort {{ sort_type }} {{ sort_direction }} {{ input_list }}","2036578466":"Should be {{value}}","2037607934":"The purchase of <0>{{trade_type_name}} contract has been completed successfully for the amount of <0> {{buy_price}} {{currency}}","2037665157":"Expand All Blocks","2037906477":"get sub-list from #","2042023623":"We’re reviewing your documents. This should take about 5 minutes.","2042050260":"- Purchase price: the purchase price (stake) of the contract","2042115724":"Upload a screenshot of your account and personal details page with your name, account number, phone number, and email address.","2044086432":"The close is the latest tick at or before the end time. If you selected a specific end time, the end time is the selected time.","2046273837":"Last tick","2046577663":"Import or choose your bot","2048110615":"Email address*","2048134463":"File size exceeded.","2049386104":"We need you to submit these in order to get this account:","2050170533":"Tick list","2051558666":"View transaction history","2054889300":"Create \"%1\"","2055317803":"Copy the link to your mobile browser","2057082550":"Accept our updated <0>terms and conditions","2057419639":"Exit Spot","2059365224":"Yes, you can get started with a pre-built bot using the Quick strategy feature. You’ll find some of the most popular trading strategies here: Martingale, D'Alembert, and Oscar's Grind. Just select the strategy, enter your trade parameters, and your bot will be created for you. You can always tweak the parameters later.","2059753381":"Why did my verification fail?","2060873863":"Your order {{order_id}} is complete","2062912059":"function {{ function_name }} {{ function_params }}","2063655921":"By purchasing the \"Close-to-Low\" contract, you'll win the multiplier times the difference between the close and low over the duration of the contract.","2063812316":"Text Statement","2063890788":"Cancelled","2065278286":"Spread","2067903936":"Driving licence","2070002739":"Don’t accept","2070345146":"When opening a leveraged CFD trade.","2070518923":"Import your bot or tap Quick Strategies to choose from the ready-to-use bot templates.","2070752475":"Regulatory Information","2071043849":"Browse","2073813664":"CFDs, Options or Multipliers","2074235904":"Last name is required.","2074497711":"The Telegram notification could not be sent","2074713563":"4.2. Submission of a complaint","2080553498":"3. Get the chat ID using the Telegram REST API (read more: https://core.telegram.org/bots/api#getupdates)","2080829530":"Sold for: {{sold_for}}","2082533832":"Yes, delete","2084693624":"Converts a string representing a date/time string into seconds since Epoch. Example: 2019-01-01 21:03:45 GMT+0800 will be converted to 1546347825. Time and time zone offset are optional.","2085387371":"Must be numbers, letters, and special characters . , ' -","2085602195":"- Entry value: the value of the first tick of the contract","2086742952":"You have added a real Options account.<0/>Make a deposit now to start trading.","2086792088":"Both barriers should be relative or absolute","2088735355":"Your session and login limits","2089581483":"Expires on","2090650973":"The spot price may change by the time your order reaches our servers. When this happens, your payout may be affected.","2091671594":"Status","2093675079":"- Close: the closing price","2096014107":"Apply","2096456845":"Date of birth*","2096603244":"Derived - Vanuatu","2097170986":"About Tether (Omni)","2097365786":"A copy of your identity document (identity card, passport)","2097381850":"Calculates Simple Moving Average line from a list with a period","2097932389":"Upload 2 separate screenshots from the personal details page and the account page via <0>https://app.astropay.com/profile","2100713124":"account","2101972779":"This is the same as the above example, using a tick list.","2102572780":"Length of digit code must be 6 characters.","2104115663":"Last login","2104364680":"Please switch to your demo account to run your Deriv Bot.","2104397115":"Please go to your account settings and complete your personal details to enable deposits and withdrawals.","2107381257":"Scheduled cashier system maintenance","2109312805":"The spread is the difference between the buy price and sell price. A variable spread means that the spread is constantly changing, depending on market conditions. A fixed spread remains constant but is subject to alteration, at the Broker's absolute discretion.","2110365168":"Maximum number of trades reached","2111015970":"This block helps you check if your contract can be sold. If your contract can be sold, it returns “True”. Otherwise, it returns an empty string.","2111528352":"Creating a variable","2112119013":"Take a selfie showing your face","2112175277":"with delimiter","2113321581":"Add a Deriv Gaming account","2115223095":"Loss","2117073379":"Our cryptocurrency cashier is temporarily down due to system maintenance. You can access the Cashier in a few minutes when the maintenance is complete.","2117165122":"1. Create a Telegram bot and get your Telegram API token. Read more on how to create bots in Telegram here: https://core.telegram.org/bots#6-botfather","2117489390":"Auto update in {{ remaining }} seconds","2118315870":"Where do you live?","2119449126":"Example output of the below example will be:","2119710534":"FAQ","2121227568":"NEO/USD","2122152120":"Assets","2127564856":"Withdrawals are locked","2131963005":"Please withdraw your funds from the following Deriv MT5 account(s):","2133451414":"Duration","2133470627":"This block returns the potential payout for the selected trade type. This block can be used only in the \"Purchase conditions\" root block.","2135563258":"Forex trading frequency","2136246996":"Selfie uploaded","2137901996":"This will clear all data in the summary, transactions, and journal panels. All counters will be reset to zero.","2137993569":"This block compares two values and is used to build a conditional structure.","2138861911":"Scans and photocopies are not accepted","2139171480":"Reset Up/Reset Down","2139362660":"left side","2141055709":"New {{type}} password","2141873796":"Get more info on <0>CFDs, <1>multipliers, and <2>options.","2143803283":"Purchase Error","2144609616":"If you select \"Reset-Down”, you win the payout if the exit spot is strictly lower than either the entry spot or the spot at reset time.","2145690912":"Income Earning","2145995536":"Create new account","2146336100":"in text %1 get %2","2146698770":"Pro tip: You can also click and drag out the desired block","2146892766":"Binary options trading experience","2147244655":"How do I import my own trading bot into Deriv Bot?","-1232613003":"<0>Verification failed. <1>Why?","-2029508615":"<0>Need verification.<1>Verify now","-931052769":"Submit verification","-1004605898":"Tips","-1938142055":"Documents uploaded","-448090287":"The link only works on mobile devices","-1244287721":"Something's gone wrong","-241258681":"You'll need to restart your verification on your computer","-929254273":"Get secure link","-2021867851":"Check back here to finish the submission","-1547069149":"Open the link and complete the tasks","-1767652006":"Here's how to do it:","-277611959":"You can now return to your computer to continue","-724178625":"Make sure full document is visible","-1519380038":"Glare detected","-1895280620":"Make sure your card details are clear to read, with no blur or glare","-1464447919":"Make sure your permit details are clear to read, with no blur or glare","-1436160506":"Make sure details are clear to read, with no blur or glare","-759124288":"Close","-759118956":"Redo","-753375398":"Enlarge image","-1042933881":"Driver's license","-1503134764":"Face photo page","-1335343167":"Sorry, no mobile phone bills","-699045522":"Documents you can use to verify your identity","-543666102":"It must be an official photo ID","-903877217":"These are the documents most likely to show your current home address","-1356835948":"Choose document","-1364375936":"Select a %{country} document","-401586196":"or upload photo – no scans or photocopies","-3110517":"Take a photo with your phone","-2033894027":"Submit identity card (back)","-20684738":"Submit license (back)","-1359585500":"Submit license (front)","-106779602":"Submit residence permit (back)","-1287247476":"Submit residence permit (front)","-1954762444":"Restart the process on the latest version of Safari","-261174676":"Must be under 10MB.","-685885589":"An error occurred while loading the component","-502539866":"Your face is needed in the selfie","-1377968356":"Please try again","-1226547734":"Try using a JPG or PNG file","-849068301":"Loading...","-1730346712":"Loading","-1849371752":"Check that your number is correct","-309848900":"Copy","-1424436001":"Send link","-1093833557":"How to scan a QR code","-1408210605":"Point your phone’s camera at the QR code","-1773802163":"If it doesn’t work, download a QR code scanner from Google Play or the App Store","-109026565":"Scan QR code","-1644436882":"Get link via SMS","-1667839246":"Enter mobile number","-1533172567":"Enter your mobile number:","-1352094380":"Send this one-time link to your phone","-28974899":"Get your secure link","-359315319":"Continue","-1279080293":"2. Your desktop window stays open","-102776692":"Continue with the verification","-89152891":"Take a photo of the back of your card","-1646367396":"Take a photo of the front of your card","-1350855047":"Take a photo of the front of your license","-2119367889":"Take a photo using the basic camera mode instead","-342915396":"Take a photo","-419040068":"Passport photo page","-1354983065":"Refresh","-1925063334":"Recover camera access to continue face verification","-54784207":"Camera access is denied","-1392699864":"Allow camera access","-269477401":"Provide the whole document page for best results","-864639753":"Upload back of card from your computer","-1309771027":"Upload front of license from your computer","-1722060225":"Take photo","-565732905":"Selfie","-1703181240":"Check that it is connected and functional. You can also continue verification on your phone","-2043114239":"Camera not working?","-2029238500":"It may be disconnected. Try using your phone instead.","-468928206":"Make sure your device's camera works","-466246199":"Camera not working","-698978129":"Remember to press stop when you're done. Redo video actions","-538456609":"Looks like you took too long","-781816433":"Photo of your face","-1471336265":"Make sure your selfie clearly shows your face","-1375068556":"Check selfie","-1914530170":"Face forward and make sure your eyes are clearly visible","-776541617":"We'll compare it with your document","-478752991":"Your link will expire in one hour","-1859729380":"Keep this window open while using your mobile","-1283761937":"Resend link","-629011256":"Don't refresh this page","-1005231905":"Once you've finished we'll take you to the next step","-542134805":"Upload photo","-1462975230":"Document example","-1472844935":"The photo should clearly show your document","-189310067":"Account closed","-1823540512":"Personal details","-849320995":"Assessments","-773766766":"Email and passwords","-1466827732":"Self exclusion","-1498206510":"Account limits","-241588481":"Login history","-966136867":"Connected apps","-213009361":"Two-factor authentication","-1214803297":"Dashboard-only path","-526636259":"Error 404","-1227878799":"Speculative","-1196936955":"Upload a screenshot of your name and email address from the personal information section.","-1286823855":"Upload your mobile bill statement showing your name and phone number.","-1309548471":"Upload your bank statement showing your name and account details.","-1410396115":"Upload a photo showing your name and the first six and last four digits of your card number. If the card does not display your name, upload the bank statement showing your name and card number in the transaction history.","-3805155":"Upload a screenshot of either of the following to process the transaction:","-1523487566":"- your account profile section on the website","-613062596":"- the Account Information page on the app","-1718304498":"User ID","-609424336":"Upload a screenshot of your name, account number, and email address from the personal details section of the app or profile section of your account on the website.","-1954436643":"Upload a screenshot of your username on the General Information page at <0>https://onlinenaira.com/members/index.htm","-79853954":"Upload a screenshot of your account number and phone number on the Bank Account/Mobile wallet page at <0>https://onlinenaira.com/members/bank.htm","-1192882870":"Upload a screenshot of your name and account number from the personal details section.","-1120954663":"First name*","-1659980292":"First name","-962979523":"Your {{ field_name }} as in your identity document","-1416797980":"Please enter your {{ field_name }} as in your official identity documents.","-1466268810":"Please remember that it is your responsibility to keep your answers accurate and up to date. You can update your personal details at any time in your <0>account settings.","-32386760":"Name","-766265812":"first name","-1857534296":"John","-1282749116":"last name","-1485480657":"Other details","-1784741577":"date of birth","-1702919018":"Second line of address (optional)","-1315410953":"State/Province","-2040322967":"Citizenship","-344715612":"Employment status*","-1543016582":"I hereby confirm that the tax information I provided is true and complete. I will also inform {{legal_entity_name}} about any changes to this information.","-946282997":"Additional information","-1315571766":"Place of birth","-789291456":"Tax residence*","-1692219415":"Tax residence","-1903720068":"The country in which you meet the criteria for paying taxes. Usually the country in which you physically reside.","-651516152":"Tax Identification Number","-1387062433":"Account opening reason","-222283483":"Account opening reason*","-1113902570":"Details","-71696502":"Previous","-1541554430":"Next","-987011273":"Your proof of ownership isn't required.","-808299796":"You are not required to submit proof of ownership at this time. We will inform you if proof of ownership is required in the future.","-179726573":"We’ve received your proof of ownership.","-813779897":"Proof of ownership verification passed.","-638756912":"Black out digits 7 to 12 of the card number that’s shown on the front of your debit/credit card.⁤","-2073934245":"The financial trading services offered on this site are only suitable for customers who accept the possibility of losing all the money they invest and who understand and have experience of the risk involved in the purchase of financial contracts. Transactions in financial contracts carry a high degree of risk. If the contracts you purchased expire as worthless, you will lose all your investment, which includes the contract premium.","-1166068675":"Your account will be opened with {{legal_entity_name}}, regulated by the UK Gaming Commission (UKGC), and will be subject to the laws of the Isle of Man.","-975118358":"Your account will be opened with {{legal_entity_name}}, regulated by the Malta Financial Services Authority (MFSA), and will be subject to the laws of Malta.","-680528873":"Your account will be opened with {{legal_entity_name}} and will be subject to the laws of Samoa.","-1125193491":"Add account","-2068229627":"I am not a PEP, and I have not been a PEP in the last 12 months.","-684271315":"OK","-740157281":"Trading Experience Assessment","-1720468017":"In providing our services to you, we are required to obtain information from you in order to assess whether a given product or service is appropriate for you.","-186841084":"Change your login email","-907403572":"To change your email address, you'll first need to unlink your email address from your {{identifier_title}} account.","-1850792730":"Unlink from {{identifier_title}}","-307865807":"Risk Tolerance Warning","-690100729":"Yes, I understand the risk.","-2010628430":"CFDs and other financial instruments come with a high risk of losing money rapidly due to leverage. You should consider whether you understand how CFDs and other financial instruments work and whether you can afford to take the high risk of losing your money. <0/><0/> To continue, you must confirm that you understand your capital is at risk.","-863770104":"Please note that by clicking ‘OK’, you may be exposing yourself to risks. You may not have the knowledge or experience to properly assess or mitigate these risks, which may be significant, including the risk of losing the entire sum you have invested.","-1292808093":"Trading Experience","-2145244263":"This field is required","-884768257":"You should enter 0-35 characters.","-1784470716":"State is not in a proper format","-1699820408":"Please enter a {{field_name}} under {{max_number}} characters.","-1575567374":"postal/ZIP code","-2113555886":"Only letters, numbers, space, and hyphen are allowed.","-874280157":"This Tax Identification Number (TIN) is invalid. You may continue using it, but to facilitate future payment processes, valid tax information will be required.","-1174064217":"Mr","-855506127":"Ms","-1037916704":"Miss","-634958629":"We use the information you give us only for verification purposes. All information is kept confidential.","-731992635":"Title*","-352888977":"Title","-136976514":"Country of residence*","-945104751":"We’re legally obliged to ask for your tax information.","-1024240099":"Address","-1124948631":"Professional Client","-259515058":"By default, all {{brand_website_name}} clients are retail clients but anyone can request to be treated as a professional client.","-1463348492":"I would like to be treated as a professional client.","-1958764604":"Email preference","-2121071263":"Check this box to receive updates via email.","-2068064150":"Get updates about Deriv products, services and events.","-1558679249":"Please make sure your information is correct or it may affect your trading experience.","-179005984":"Save","-2116332353":"Please close your positions in the following Deriv account(s):","-2048005267":"{{number_of_positions}} position(s)","-1923892687":"Please withdraw your funds from the following Deriv X account(s):","-1629894615":"I have other financial priorities.","-844051272":"I want to stop myself from trading.","-1113965495":"I’m no longer interested in trading.","-1224285232":"Customer service was unsatisfactory.","-9323953":"Remaining characters: {{remaining_characters}}","-839094775":"Back","-2061895474":"Closing your account will automatically log you out. We shall delete your personal information as soon as our legal obligations are met.","-203298452":"Close account","-937707753":"Go Back","-1219849101":"Please select at least one reason","-484540402":"An error occurred","-1911549768":"Inaccessible MT5 account(s)","-1869355019":"Action required","-1030102424":"You can't trade on Deriv.","-448385353":"You can't make transactions.","-1058447223":"Before closing your account:","-912764166":"Withdraw your funds.","-60139953":"We shall delete your personal information as soon as our legal obligations are met, as mentioned in the section on Data Retention in our <0>Security and privacy policy","-1725454783":"Failed","-506510414":"Date and time","-1708927037":"IP address","-619126443":"Use the <0>Deriv password to log in to {{brand_website_name}} and {{platform_name_trader}}.","-623760979":"Use the <0>Deriv password to log in to {{brand_website_name}}, {{platform_name_trader}} and {{platform_name_go}}.","-459147994":"Use the <0>Deriv password to log in to {{brand_website_name}}, {{platform_name_go}}, {{platform_name_trader}}, {{platform_name_smarttrader}}, {{platform_name_dbot}} and {{platform_name_ctrader}}.","-80717068":"Apps you have linked to your <0>Deriv password:","-9570380":"Use the {{platform_name_dxtrade}} password to log in to your {{platform_name_dxtrade}} accounts on the web and mobile apps.","-2131200819":"Disable","-200487676":"Enable","-1840392236":"That's not the right code. Please try again.","-2067796458":"Authentication code","-790444493":"Protect your account with 2FA. Each time you log in to your account, you will need to enter your password and an authentication code generated by a 2FA app on your smartphone.","-368010540":"You have enabled 2FA for your Deriv account.","-403552929":"To disable 2FA, please enter the six-digit authentication code generated by your 2FA app below:","-752939584":"How to set up 2FA for your Deriv account","-90649785":"Click here to copy key","-206376148":"Key copied!","-1592318047":"See example","-1376950117":"That file format isn't supported. Please upload .pdf, .png, .jpg, or .jpeg files only.","-1272489896":"Please complete this field.","-397487797":"Enter your full card number","-153346659":"Upload your selfie.","-602131304":"Passport number","-1051213440":"Upload the front and back of your identity card.","-1600807543":"First, enter your identity card number and the expiry date.","-1139923664":"Next, upload the front and back of your identity card.","-783705755":"Upload the front of your identity card.","-566750665":"NIMC slip and proof of age","-1465944279":"NIMC slip number","-429612996":"Next, upload both of the following documents.","-376981174":"Upload your proof of age: birth certificate or age declaration document.","-612174191":"First line of address is required","-242734402":"Only {{max}} characters, please.","-378415317":"State is required","-1497654315":"Our accounts and services are unavailable for the Jersey postal code.","-755626951":"Complete your address details","-584911871":"Select wallet currency","-1461267236":"Please choose your currency","-1352330125":"CURRENCY","-1027595143":"Less than $25,000","-40491332":"$25,000 - $50,000","-1139806939":"$50,001 - $100,000","-626752657":"0-1 year","-532014689":"1-2 years","-1001024004":"Over 3 years","-790513277":"6-10 transactions in the past 12 months","-580085300":"11-39 transactions in the past 12 months","-654781670":"Primary","-1717373258":"Secondary","-996132458":"Construction","-915003867":"Health","-1430012453":"Information & Communications Technology","-987824916":"Science & Engineering","-146630682":"Social & Cultural","-761306973":"Manufacturing","-739367071":"Employed","-1156937070":"$500,001 - $1,000,000","-315534569":"Over $1,000,000","-2068544539":"Salaried Employee","-531314998":"Investments & Dividends","-1235114522":"Pension","-1298056749":"State Benefits","-449943381":"Savings & Inheritance","-1631552645":"Professionals","-474864470":"Personal Care, Sales and Service Workers","-1129355784":"Agricultural, Forestry and Fishery Workers","-1242914994":"Craft, Metal, Electrical and Electronics Workers","-1317824715":"Cleaners and Helpers","-1592729751":"Mining, Construction, Manufacturing and Transport Workers","-2137323480":"Company Ownership","-1590574533":"Divorce Settlement","-1667683002":"Inheritance","-1237843731":"Investment Income","-777506574":"Sale of Property","-1161338910":"First name is required.","-1161818065":"Last name should be between 2 and 50 characters.","-1281693513":"Date of birth is required.","-26599672":"Citizenship is required","-912174487":"Phone is required.","-673765468":"Letters, numbers, spaces, periods, hyphens and forward slashes only.","-212167954":"Tax Identification Number is not properly formatted.","-621555159":"Identity information","-204765990":"Terms of use","-231863107":"No","-870902742":"How much knowledge and experience do you have in relation to online trading?","-1929477717":"I have an academic degree, professional certification, and/or work experience related to financial services.","-1540148863":"I have attended seminars, training, and/or workshops related to trading.","-922751756":"Less than a year","-542986255":"None","-1337206552":"In your understanding, CFD trading allows you to","-456863190":"Place a position on the price movement of an asset where the outcome is a fixed return or nothing at all.","-1314683258":"Make a long-term investment for a guaranteed profit.","-1546090184":"How does leverage affect CFD trading?","-1636427115":"Leverage helps to mitigate risk.","-800221491":"Leverage guarantees profits.","-811839563":"Leverage lets you open large positions for a fraction of trade value, which may result in increased profit or loss.","-1185193552":"Close your trade automatically when the loss is equal to or more than a specified amount, as long as there is adequate market liquidity.","-1046354":"Close your trade automatically when the profit is equal to or more than a specified amount, as long as there is adequate market liquidity.","-1842858448":"Make a guaranteed profit on your trade.","-860053164":"When trading multipliers.","-1250327770":"When buying shares of a company.","-1222388581":"All of the above.","-477761028":"Voter ID","-1466346630":"CPF","-1515286538":"Please enter your document number. ","-1694758788":"Enter your document number","-1458676679":"You should enter 2-50 characters.","-1176889260":"Please select a document type.","-1030759620":"Government Officers","-612752984":"These are default limits that we apply to your accounts.","-1598263601":"To learn more about trading limits and how they apply, please go to the <0>Help Centre.","-1411635770":"Learn more about account limits","-1340125291":"Done","-1101543580":"Limit","-858297154":"Represents the maximum amount of cash that you may hold in your account. If the maximum is reached, you will be asked to withdraw funds.","-976258774":"Not set","-1182362640":"Represents the maximum aggregate payouts on outstanding contracts in your portfolio. If the maximum is attained, you may not purchase additional contracts without first closing out existing positions.","-1781293089":"Maximum aggregate payouts on open positions","-1412690135":"*Any limits in your Self-exclusion settings will override these default limits.","-1598751496":"Represents the maximum volume of contracts that you may purchase in any given trading day.","-173346300":"Maximum daily turnover","-138380129":"Total withdrawal allowed","-854023608":"To increase limit please verify your identity","-1500958859":"Verify","-1502578110":"Your account is fully authenticated and your withdrawal limits have been lifted.","-1662154767":"a recent utility bill (e.g. electricity, water, gas, landline, or internet), bank statement, or government-issued letter with your name and this address.","-190838815":"We need this for verification. If the information you provide is fake or inaccurate, you won’t be able to deposit and withdraw.","-223216785":"Second line of address*","-594456225":"Second line of address","-1940457555":"Postal/ZIP Code*","-1964954030":"Postal/ZIP Code","-516397235":"Be careful who you share this token with. Anyone with this token can perform the following actions on your account behalf","-989216986":"Add accounts","-617480265":"Delete token","-316749685":"Are you sure you want to delete this token?","-786372363":"Learn more about API token","-55560916":"To access our mobile apps and other third-party apps, you'll first need to generate an API token.","-198329198":"API Token","-955038366":"Copy this token","-1668692965":"Hide this token","-1661284324":"Show this token","-1076138910":"Trade","-1666909852":"Payments","-488597603":"Trading information","-605778668":"Never","-1628008897":"Token","-1238499897":"Last Used","-1171226355":"Length of token name must be between {{MIN_TOKEN}} and {{MAX_TOKEN}} characters.","-1803339710":"Maximum {{MAX_TOKEN}} characters.","-408613988":"Select scopes based on the access you need.","-5605257":"This scope will allow third-party apps to withdraw to payment agents and make inter-account transfers for you.","-1373485333":"This scope will allow third-party apps to view your trading history.","-758221415":"This scope will allow third-party apps to open accounts for you, manage your settings and token usage, and more. ","-1117963487":"Name your token and click on 'Create' to generate your token.","-2005211699":"Create","-2115275974":"CFDs","-1879666853":"Deriv MT5","-460645791":"You are limited to one fiat account. You won’t be able to change your account currency if you have already made your first deposit or created a real {{dmt5_label}} account.","-1146960797":"Fiat currencies","-1959484303":"Cryptocurrencies","-561724665":"You are limited to one fiat currency only","-2087317410":"Oops, something went wrong.","-184202848":"Upload file","-1447142373":"Click here to upload.","-863586176":"Drag and drop a file or click to browse your files.","-723198394":"File size should be 8MB or less","-1948369500":"File uploaded is not supported","-1040865880":"Drop files here..","-1100235269":"Industry of employment","-684388823":"Estimated net worth","-509054266":"Anticipated annual turnover","-601903492":"Forex trading experience","-1012699451":"CFD trading experience","-1117345066":"Choose the document type","-651192353":"Sample:","-1044962593":"Upload Document","-164448351":"Show less","-1361653502":"Show more","-337620257":"Switch to real account","-2120454054":"Add a real account","-38915613":"Unsaved changes","-2137450250":"You have unsaved changes. Are you sure you want to discard changes and leave this page?","-1067082004":"Leave Settings","-1982432743":"It appears that the address in your document doesn’t match the address\n in your Deriv profile. Please update your personal details now with the\n correct address.","-1451334536":"Continue trading","-1525879032":"Your documents for proof of address is expired. Please submit again.","-1425489838":"Proof of address verification not required","-1008641170":"Your account does not need address verification at this time. We will inform you if address verification is required in the future.","-60204971":"We could not verify your proof of address","-1944264183":"To continue trading, you must also submit a proof of identity.","-1088324715":"We’ll review your documents and notify you of its status within 1 - 3 working days.","-329713179":"Ok","-1926456107":"The ID you submitted is expired.","-555047589":"It looks like your identity document has expired. Please try again with a valid document.","-841187054":"Try Again","-2097808873":"We were unable to verify your ID with the details you provided. ","-228284848":"We were unable to verify your ID with the details you provided.","-1391934478":"Your ID is verified. You will also need to submit proof of your address.","-118547687":"ID verification passed","-200989771":"Go to personal details","-1358357943":"Please check and update your postal code before submitting proof of identity.","-1401994581":"Your personal details are missing","-2004327866":"Please select a valid country of document issuance.","-1664159494":"Country","-749870311":"Please contact us via <0>live chat.","-1084991359":"Proof of identity verification not required","-1981334109":"Your account does not need identity verification at this time. We will inform you if identity verification is required in the future.","-182918740":"Your proof of identity submission failed because:","-155705811":"A clear colour photo or scanned image","-246893488":"JPEG, JPG, PNG, PDF, or GIF","-1454880310":"Must be valid for at least 6 months","-100534371":"Before uploading, please ensure that you’re facing forward in the selfie, your face is within the frame, and your eyes are clearly visible even if you’re wearing glasses.","-1529523673":"Confirm and upload","-705047643":"Sorry, an error occured. Please select another file.","-1664309884":"Tap here to upload","-856213726":"You must also submit a proof of address.","-1389323399":"You should enter {{min_number}}-{{max_number}} characters.","-1313806160":"Please request a new password and check your email for the new token.","-1598167506":"Success","-1077809489":"You have a new {{platform}} password to log in to your {{platform}} accounts on the web and mobile apps.","-2068479232":"{{platform}} password","-1332137219":"Strong passwords contain at least 8 characters that include uppercase and lowercase letters, numbers, and symbols.","-1597186502":"Reset {{platform}} password","-848721396":"These trading limits are optional, and you can strengthen them at any time. If you don’t wish to set a specific limit, leave the field blank. If you live in the United Kingdom, Customer Support can only remove or weaken your trading limits after 24 hours of receiving the request. If you live in the Isle of Man, Customer Support can only remove or weaken your trading limits after your trading limit period has expired.","-469096390":"These trading limits are optional, and you can strengthen them at any time. If you don’t wish to set a specific limit, leave the field blank. Customer Support can only remove or weaken your trading limits after 24 hours of receiving the request.","-42808954":"You can also exclude yourself entirely for a specified duration. This can only be removed once your self-exclusion has expired. If you wish to continue trading once your self-exclusion period expires, you must contact Customer Support by calling <0>+447723580049 to lift this self-exclusion. Requests by chat or email shall not be entertained. There will be a 24-hour cooling-off period before you can resume trading.","-1088698009":"These self-exclusion limits help you control the amount of money and time you spend trading on {{platform_name_trader}}, {{platform_name_dbot}}, {{platform_name_smarttrader}} and {{platform_name_bbot}} on Deriv. The limits you set here will help you exercise <0>responsible trading.","-1702324712":"These limits are optional, and you can adjust them at any time. You decide how much and how long you’d like to trade. If you don’t wish to set a specific limit, leave the field blank.","-1819875658":"You can also exclude yourself entirely for a specified duration. Once the self-exclusion period has ended, you can either extend it further or resume trading immediately. If you wish to reduce or remove the self-exclusion period, contact our <0>Customer Support.","-1031814119":"About trading limits and self-exclusion","-183468698":"Trading limits and self-exclusion","-933963283":"No, review my limits","-1759860126":"Yes, log me out immediately","-572347855":"{{value}} mins","-313333548":"You’ll be able to adjust these limits at any time. You can reduce your limits from the <0>self-exclusion page. To increase or remove your limits, please contact our <1>Customer Support team.","-1265833982":"Accept","-2123139671":"Your stake and loss limits","-1250802290":"24 hours","-2070080356":"Max. total stake","-1545823544":"7 days","-180147209":"You will be automatically logged out from each session after this time limit.","-374553538":"Your account will be excluded from the website until this date (at least 6 months, up to 5 years).","-2121421686":"To self-exclude from all online gambling companies licensed in Great Britain, go to <0>www.gamstop.co.uk.","-2105708790":"Your maximum account balance and open positions","-1960600163":"Once your account balance reaches this amount, you will not be able to deposit funds into your account.","-1073845224":"No. of open position(s)","-288196326":"Your maximum deposit limit","-568749373":"Max. deposit limit","-1884902844":"Max. deposit limit per day","-545085253":"Max. deposit limit over 7 days","-1031006762":"Max. deposit limit over 30 days","-1116871438":"Max. total loss over 30 days","-2134714205":"Time limit per session","-1884271702":"Time out until","-1265825026":"Timeout time must be greater than current time.","-1332882202":"Timeout time cannot be more than 6 weeks.","-1635977118":"Exclude time cannot be less than 6 months.","-1617352279":"The email is in your spam folder (Sometimes things get lost there).","-547557964":"We can’t deliver the email to this address (Usually because of firewalls or filtering).","-142444667":"Please click on the link in the email to change your Deriv MT5 password.","-742748008":"Check your email and click the link in the email to proceed.","-84068414":"Still didn't get the email? Please contact us via <0>live chat.","-428335668":"You will need to set a password to complete the process.","-818898181":"Name in document doesn’t match your Deriv profile.","-310316375":"Address in document doesn’t match address you entered above.","-485368404":"Document issued more than 6-months ago.","-367016488":"Blurry document. All information must be clear and visible.","-1957076143":"Cropped document. All information must be clear and visible.","-2139303636":"You may have followed a broken link, or the page has moved to a new address.","-1448368765":"Error code: {{error_code}} page not found","-254792921":"You can only make deposits at the moment. To enable withdrawals, please complete your financial assessment.","-1437017790":"Financial information","-70342544":"We’re legally obliged to ask for your financial information.","-39038029":"Trading experience","-1894668798":"Other trading instruments experience","-1026468600":"Other trading instruments frequency","-1743024217":"Select Language","-1822545742":"Ether Classic","-1334641066":"Litecoin","-1214036543":"US Dollar","-1782590355":"No currency has been set for this account","-536187647":"Confirm revoke access?","-1357606534":"Permission","-570222048":"Revoke access","-1526404112":"Utility bill: electricity, water, gas, or landline phone bill.","-537552700":"Home rental agreement: valid and current agreement.","-890084320":"Save and submit","-30772747":"Your personal details have been saved successfully.","-1107320163":"Automate your trading, no coding needed.","-829643221":"Multipliers trading platform.","-1585707873":"Financial Commission","-199154602":"Vanuatu Financial Services Commission","-191165775":"Malta Financial Services Authority","-194969520":"Counterparty company","-1089385344":"Deriv (SVG) LLC","-2019617323":"Deriv (BVI) Ltd","-112814932":"Deriv (FX) Ltd","-1131400885":"Deriv Investments (Europe) Limited","-1471207907":"All assets","-781132577":"Leverage","-1591882610":"Synthetics","-543177967":"Stock indices","-362324454":"Commodities","-1071336803":"Platform","-820028470":"Options & Multipliers","-1018945969":"TradersHub","-1856204727":"Reset","-213142918":"Deposits and withdrawals temporarily unavailable ","-224804428":"Transactions","-1186807402":"Transfer","-1308346982":"Derived","-1145604233":"Trade CFDs on MT5 with Derived indices that simulate real-world market movements.","-328128497":"Financial","-1484404784":"Trade CFDs on MT5 with forex, stock indices, commodities, and cryptocurrencies.","-659955365":"Swap-Free","-674118045":"Trade swap-free CFDs on MT5 with synthetics, forex, stocks, stock indices, cryptocurrencies, and ETFs.","-1210359945":"Transfer funds to your accounts","-81256466":"You need a Deriv account to create a CFD account.","-699372497":"Trade with leverage and tight spreads for better returns on successful trades. <0>Learn more","-1884966862":"Get more Deriv MT5 account with different type and jurisdiction.","-145462920":"Deriv cTrader","-982095728":"Get","-1277942366":"Total assets","-1255879419":"Trader's Hub","-493788773":"Non-EU","-673837884":"EU","-230566990":"The following documents you submitted did not pass our checks:","-846812148":"Proof of address.","-2055865877":"Non-EU regulation","-643108528":"Non-EU and EU regulation","-172898036":"CR5236585","-1665192032":"Multipliers account","-744999940":"Deriv account","-1638358352":"Get the upside of CFDs without risking more than your initial stake with <0>Multipliers.","-749129977":"Get a real Deriv account, start trading and manage your funds.","-1814994113":"CFDs <0>{{compare_accounts_title}}","-318106501":"Trade CFDs on MT5 with synthetics, baskets, and derived FX.","-1328701106":"Trade CFDs on MT5 with forex, stocks, stock indices, synthetics, cryptocurrencies, and commodities.","-1173266642":"This account offers CFDs on a feature-rich trading platform.","-1290112064":"Deriv EZ","-1453519913":"Trade CFDs on an easy-to-get-started platform with all your favourite assets.","-2051096382":"Earn a range of payouts by correctly predicting market movements with <0>options, or get the\n upside of CFDs without risking more than your initial stake with <1>multipliers.","-2146691203":"Choice of regulation","-249184528":"You can create real accounts under EU or non-EU regulation. Click the <0><0/> icon to learn more about these accounts.","-1505234170":"Trader's Hub tour","-181080141":"Trading hub tour","-1042025112":"Need help moving around?<0>We have a short tutorial that might help. Hit Repeat tour to begin.","-1536335438":"These are the trading accounts available to you. You can click on an account’s icon or description to find out more","-1034232248":"CFDs or Multipliers","-1320214549":"You can choose between CFD trading accounts and Multipliers accounts","-2069414013":"Click the ‘Get’ button to create an account","-951876657":"Top-up your account","-1945421757":"Once you have an account click on ‘Deposit’ or ‘Transfer’ to add funds to an account","-1965920446":"Start trading","-33612390":"<0>EU statutory disclaimer: CFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. <0>73% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether you understand how CFDs work and whether you can afford to take the high risk of losing your money.","-2021135479":"This field is required.","-1870909526":"Our server cannot retrieve an address.","-582721696":"The current allowed withdraw amount is {{format_min_withdraw_amount}} to {{format_max_withdraw_amount}} {{currency}}","-1975494965":"Cashier","-42592103":"Deposit cryptocurrencies","-60779216":"Withdrawals are temporarily unavailable due to system maintenance. You can make your withdrawals when the maintenance is complete.","-215186732":"You’ve not set your country of residence. To access Cashier, please update your country of residence in the Personal details section in your account settings.","-1392897508":"The identification documents you submitted have expired. Please submit valid identity documents to unlock Cashier. ","-954082208":"Your cashier is currently locked. Please contact us via <0>live chat to find out how to unlock it.","-929148387":"Please set your account currency to enable deposits and withdrawals.","-541392118":"Your account has not been authenticated. Please submit your <0>proof of identity and <1>proof of address to authenticate your account and access your cashier.","-247122507":"Your cashier is locked. Please complete the <0>financial assessment to unlock it.","-1443721737":"Your cashier is locked. See <0>how we protect your funds before you proceed.","-901712457":"Your access to Cashier has been temporarily disabled as you have not set your 30-day turnover limit. Please go to <0>Self-exclusion and set your 30-day turnover limit.","-166472881":"Your <0>personal details are incomplete. Please go to your account settings and complete your personal details to enable deposits and withdrawals.","-666905139":"Deposits are locked","-378858101":"Your <0>personal details are incomplete. Please go to your account settings and complete your personal details to enable deposits.","-1318742415":"Your account has not been authenticated. Please submit your <0>proof of identity and <1>proof of address to authenticate your account and request for withdrawals.","-1923809087":"Unfortunately, you can only make deposits. Please contact us via <0>live chat to enable withdrawals.","-172277021":"Cashier is locked for withdrawals","-1624999813":"It seems that you've no commissions to withdraw at the moment. You can make withdrawals once you receive your commissions.","-1077304626":"Amount ({{currency}})","-1559994981":"Approximate value","-190084602":"Transaction","-1995606668":"Amount","-2024290965":"Confirmations","-811190405":"Time","-1984478597":"The details of this transaction is available on CoinsPaid.","-1272778997":"We've sent you an email.","-89973258":"Resend email in {{seconds}}s","-1332236294":"Please verify your identity","-1675848843":"Error","-283017497":"Retry","-1838982691":"UNKNOWN","-532693866":"Something went wrong. Please refresh the page and try again.","-1196049878":"First line of home address","-1326406485":"Postal Code/ZIP","-939625805":"Telephone","-442575534":"Email verification failed","-1459042184":"Update your personal details","-1603543465":"We can't validate your personal details because there is some information missing.","-614516651":"Need help? <0>Contact us.","-203002433":"Deposit now","-720315013":"You have no funds in your {{currency}} account","-2052373215":"Please make a deposit to use this feature.","-379487596":"{{selected_percentage}}% of available balance ({{format_amount}} {{currency__display_code}})","-1957498244":"more","-1059419768":"Notes","-285921910":"Learn more about <0>payment methods.","-316545835":"Please ensure <0>all details are <0>correct before making your transfer.","-949073402":"I confirm that I have verified the client’s transfer information.","-1752211105":"Transfer now","-1787304306":"Deriv P2P","-174976899":"P2P verification","-1705887186":"Your deposit is successful.","-142361708":"In process","-1582681840":"We’ve received your request and are waiting for more blockchain confirmations.","-1626218538":"You’ve cancelled your withdrawal request.","-1062841150":"Your withdrawal is unsuccessful due to an error on the blockchain. Please <0>contact us via live chat for more info.","-630780094":"We’re awaiting confirmation from the blockchain.","-1525882769":"Your withdrawal is unsuccessful. We've sent you an email with more information.","-298601922":"Your withdrawal is successful.","-1463156905":"Learn more about payment methods","-1236567184":"This is your <0>{{regulation}}{{currency}} account {{loginid}}.","-1547606079":"We accept the following cryptocurrencies:","-1517325716":"Deposit via the following payment methods:","-639677539":"Buy cryptocurrencies","-1560098002":"Buy cryptocurrencies via fiat onramp","-541870313":"Deposit via payment agents","-197251450":"Don't want to trade in {{currency_code}}? You can open another cryptocurrency account.","-91824739":"Deposit {{currency}}","-523804269":"{{amount}} {{currency}} on {{date}}","-494847428":"Address: <0>{{value}}","-1117977576":"Confirmations: <0>{{value}}","-1935946851":"View more","-1744490898":"Unfortunately, we cannot retrieve the information at this time. ","-515809216":"Send only {{currency_name}} ({{currency_code}}) to this address.","-1589407981":"To avoid loss of funds:","-1042704302":"Make sure to copy your Deriv account address correctly into your crypto wallet.","-80329359":"<0>Note: You’ll receive an email when your deposit start being processed.","-2108344100":"Looking for a way to buy cryptocurrencies? <0>Try Fiat onramp.","-598073640":"About Tether (Ethereum)","-275902914":"Tether on Ethereum (eUSDT)","-1188009792":"Tether on Omni Layer (USDT)","-1239329687":"Tether was originally created to use the bitcoin network as its transport protocol ‒ specifically, the Omni Layer ‒ to allow transactions of tokenised traditional currency.","-314177745":"Unfortunately, we couldn't get the address since our server was down. Please click Refresh to reload the address or try again later.","-1068036170":"We do not charge a transfer fee for transfers in the same currency between your Deriv fiat and {{platform_name_mt5}} accounts and between your Deriv fiat and {{platform_name_dxtrade}} accounts.","-2056016338":"You’ll not be charged a transfer fee for transfers in the same currency between your Deriv fiat and {{platform_name_mt5}} accounts.","-599632330":"We’ll charge a 1% transfer fee for transfers in different currencies between your Deriv fiat and {{platform_name_mt5}} accounts and between your Deriv fiat and {{platform_name_dxtrade}} accounts.","-1196994774":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv cryptocurrency accounts.","-1361372445":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv cryptocurrency and Deriv MT5 accounts, your Deriv cryptocurrency and {{platform_name_derivez}} accounts, and your Deriv cryptocurrency and {{platform_name_dxtrade}} accounts.","-993556039":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv cryptocurrency and Deriv MT5 accounts and between your Deriv cryptocurrency and {{platform_name_dxtrade}} accounts.","-1382702462":"We’ll charge a 2% transfer fee or {{minimum_fee}} {{currency}}, whichever is higher, for transfers between your Deriv cryptocurrency and Deriv MT5 accounts.","-1995859618":"You may transfer between your Deriv fiat, cryptocurrency, {{platform_name_mt5}}, {{platform_name_derivez}} and {{platform_name_dxtrade}} accounts.","-545616470":"Each day, you can make up to {{ allowed_internal }} transfers between your Deriv accounts, up to {{ allowed_mt5 }} transfers between your Deriv and {{platform_name_mt5}} accounts, up to {{ allowed_derivez }} transfers between your Deriv and {{platform_name_derivez}} accounts, and up to {{ allowed_dxtrade }} transfers between your Deriv and {{platform_name_dxtrade}} accounts.","-1151983985":"Transfer limits may vary depending on the exchange rates.","-1747571263":"Please bear in mind that some transfers may not be possible.","-757062699":"Transfers may be unavailable due to high volatility or technical issues and when the exchange markets are closed.","-1866405488":"Deriv cTrader accounts","-1344870129":"Deriv accounts","-1156059326":"You have {{number}} transfer remaining for today.","-1109729546":"You will be able to transfer funds between MT5 accounts and other accounts once your address is verified.","-1593609508":"Transfer between your accounts in Deriv","-464965808":"Transfer limits: <0 /> - <1 />","-553249337":"Transfers are locked","-1638172550":"To enable this feature you must complete the following:","-1949883551":"You only have one account","-1149845849":"Back to Trader's Hub","-1232852916":"We’re switching over to your {{currency}} account to view the transaction.","-759000391":"We were unable to verify your information automatically. To enable this function, you must complete the following:","-1632668764":"I accept","-544232635":"Please go to the Deposit page to generate an address. Then come back here to continue with your transaction.","-1161069724":"Please copy the crypto address you see below. You'll need it to deposit your cryptocurrency.","-1388977563":"Copied!","-1962894999":"This address can only be used ONCE. Please copy a new one for your next transaction.","-451858550":"By clicking 'Continue' you will be redirected to {{ service }}, a third-party payment service provider. Please note that {{ website_name }} is not responsible for the content or services provided by {{ service }}. If you encounter any issues related to {{ service }} services, you must contact {{ service }} directly.","-2005265642":"Fiat onramp is a cashier service that allows you to convert fiat currencies to crypto to top up your Deriv crypto accounts. Listed here are third-party crypto exchanges. You’ll need to create an account with them to use their services.","-1593063457":"Select payment channel","-1309258714":"From account number","-1247676678":"To account number","-816476007":"Account holder name","-344403983":"Description","-922432739":"Please enter a valid client login ID.","-1024241603":"Insufficient balance.","-1979554765":"Please enter a valid description.","-1254233806":"You've transferred","-953082600":"Some payment methods may not be listed here but payment agents may still offer them. If you can’t find your favourite method, contact the payment agents directly to check further.","-1491457729":"All payment methods","-142563298":"Contact your preferred payment agent for payment instructions and make your deposit.","-1023961762":"Commission on deposits","-552873274":"Commission on withdrawal","-880645086":"Withdrawal amount","-118683067":"Withdrawal limits: <0 />-<1 />","-1125090734":"Important notice to receive your funds","-1924707324":"View transaction","-1474202916":"Make a new withdrawal","-511423158":"Enter the payment agent account number","-2059278156":"Note: {{website_name}} does not charge any transfer fees.","-1201279468":"To withdraw your funds, please choose the same payment method you used to make your deposits.","-2004264970":"Your wallet address should have 25 to 64 characters.","-1707299138":"Your {{currency_symbol}} wallet address","-38063175":"{{account_text}} wallet","-705272444":"Upload a proof of identity to verify your identity","-2024958619":"This is to protect your account from unauthorised withdrawals.","-130833284":"Please note that your maximum and minimum withdrawal limits aren’t fixed. They change due to the high volatility of cryptocurrency.","-1531269493":"We'll send you an email once your transaction has been processed.","-113940416":"Current stake:","-1999539705":"Deal cancel. fee:","-447037544":"Buy price:","-1342699195":"Total profit/loss:","-1511825574":"Profit/Loss:","-726626679":"Potential profit/loss:","-338379841":"Indicative price:","-2027409966":"Initial stake:","-1525144993":"Payout limit:","-1167474366":"Tick ","-555886064":"Won","-529060972":"Lost","-571642000":"Day","-155989831":"Decrement value","-1192773792":"Don't show this again","-1769852749":"N/A","-1572746946":"Asian Up","-686840306":"Asian Down","-2141198770":"Higher","-816098265":"Lower","-1646655742":"Spread Up","-668987427":"Spread Down","-912577498":"Matches","-1862940531":"Differs","-808904691":"Odd","-556230215":"Ends Outside","-1268220904":"Ends Between","-703542574":"Up","-1127399675":"Down","-768425113":"No Touch","-1163058241":"Stays Between","-1354485738":"Reset Call","-376148198":"Only Ups","-1337379177":"High Tick","-328036042":"Please enter a stop loss amount that's higher than the current potential loss.","-2127699317":"Invalid stop loss. Stop loss cannot be more than stake.","-590765322":"Unfortunately, this trading platform is not available for EU Deriv account. Please switch to a non-EU account to continue trading.","-2110207996":"Deriv Bot is unavailable for this account","-971295844":"Switch to another account","-1194079833":"Deriv Bot is not available for EU clients","-1223145005":"Loss amount: {{profit}}","-1062922595":"Reference ID (buy)","-2068574600":"Reference ID (sell)","-994038153":"Start Time","-1979852400":"Entry Spot","-427802309":"Profit/Loss","-668558002":"Journal.csv","-746652890":"Notifications","-824109891":"System","-749186458":"Account switching is disabled while your bot is running. Please stop your bot before switching accounts.","-662836330":"Would you like to keep your current contract or close it? If you decide to keep it running, you can check and close it later on the <0>Reports page.","-597939268":"Keep my contract","-1322453991":"You need to log in to run the bot.","-236548954":"Contract Update Error","-1428017300":"THE","-1450728048":"OF","-255051108":"YOU","-1845434627":"IS","-931434605":"THIS","-740712821":"A","-187634388":"This block is mandatory. Here is where you can decide if your bot should continue trading. Only one copy of this block is allowed.","-2105473795":"The only input parameter determines how block output is going to be formatted. In case if the input parameter is \"string\" then the account currency will be added.","-1800436138":"2. for \"number\": 1325.68","-530632460":"This block is used to determine if the market price moves in the selected direction or not. It gives you a value of \"True\" or \"False\".","-1875717842":"Examples:","-890079872":"1. If the selected direction is \"Rise\", and the previous tick value is less than the current tick value, the output will be \"True\". Otherwise, the output will be an empty string.","-489739641":"2. If the selected direction is \"Fall\", and the previous tick value is more than the current tick value, the output will be \"True\". Otherwise, the output will be an empty string.","-2116076360":"There are 4 message types:","-1421941045":"2. 'Warn' displays a message in yellow to highlight something that needs attention.","-277850921":"If \"Win\" is selected, it will return \"True\" if your last trade was successful. Otherwise, it will return an empty string.","-1918487001":"Example:","-2139916657":"1. In the below example the loop is terminated in case \"x\" is \"False\" even though only one iteration is complete","-1238900333":"2. In the below example the loop jumps to the next iteration without executing below block in case if \"x\" is \"False\"","-1729479576":"You can use \"i\" inside the loop, for example to access list items","-1474636594":"In this example, the loop will repeat three times, as that is the number of items in the given list. During each iteration, the variable \"i\" will be assigned a value from the list. ","-908772734":"This block evaluates a statement and will perform an action only when the statement is true.","-334040831":"2. In this example, the instructions are repeated as long as the value of x is greater than or equal to 10. Once the value of x drops below 10, the loop is terminated.","-444267958":"\"Seconds Since Epoch\" block returns the number of seconds since January 1st, 1970.","-447522129":"You might need it when you want to repeat an actions after certain amount of time.","-1488259879":"The term \"candle\" refers to each bar on the candlestick chart. Each candle represents four market prices for the selected time interval:","-2020693608":"Each candlestick on the chart represents 4 market prices for the selected time interval:","-62728852":"- Open price: the opening price","-1247744334":"- Low price: the lowest price","-1386365697":"- Close price: the closing price","-1498732382":"A black (or red) candle indicates that the open price is higher than the close price. This represents a downward movement of the market price.","-1871864755":"This block gives you the last digit of the latest tick value of the selected market. If the latest tick value is 1410.90, this block will return 0. It’s useful for digit-based contracts such as Even/Odd, Matches/Differs, or Higher/Lower.","-1029671512":"In case if the \"OR\" operation is selected, the block returns \"True\" in case if one or both given values are \"True\"","-210295176":"Available operations:","-1385862125":"- Addition","-983721613":"- Subtraction","-854750243":"- Multiplication","-1394815185":"In case if the given number is less than the lower boundary of the range, the block returns the lower boundary value. Similarly, if the given number is greater than the higher boundary, the block will return the higher boundary value. In case if the given value is between boundaries, the block will return the given value unchanged.","-1034564248":"In the below example the block returns the value of 10 as the given value (5) is less than the lower boundary (10)","-2009817572":"This block performs the following operations to a given number","-671300479":"Available operations are:","-514610724":"- Absolute","-1923861818":"- Euler’s number (2.71) to the power of a given number","-1556344549":"Here’s how:","-1061127827":"- Visit the following URL, make sure to replace with the Telegram API token you created in Step 1: https://api.telegram.org/bot/getUpdates","-311389920":"In this example, the open prices from a list of candles are assigned to a variable called \"cl\".","-1460794449":"This block gives you a list of candles within a selected time interval.","-1634242212":"Used within a function block, this block returns a value when a specific condition is true.","-2012970860":"This block gives you information about your last contract.","-1504783522":"You can choose to see one of the following:","-10612039":"- Profit: the profit you’ve earned","-555996976":"- Entry time: the starting time of the contract","-1391071125":"- Exit time: the contract expiration time","-1961642424":"- Exit value: the value of the last tick of the contract","-111312913":"- Barrier: the barrier value of the contract (applicable to barrier-based trade types such as stays in/out, touch/no touch, etc.)","-674283099":"- Result: the result of the last contract: \"win\" or \"loss\"","-704543890":"This block gives you the selected candle value such as open price, close price, high price, low price, and open time. It requires a candle as an input parameter.","-482281200":"In the example below, the open price is assigned to the variable \"op\".","-364621012":"This block gives you the specified candle value for a selected time interval. You can choose which value you want:","-232477769":"- Open: the opening price","-610736310":"Use this block to sell your contract at the market price. Selling your contract is optional. You may choose to sell if the market trend is unfavourable.","-1307657508":"This block gives you the potential profit or loss if you decide to sell your contract. It can only be used within the \"Sell conditions\" root block.","-1921072225":"In the example below, the contract will only be sold if the potential profit or loss is more than the stake.","-955397705":"SMA adds the market price in a list of ticks or candles for a number of time periods, and divides the sum by that number of time periods.","-1424923010":"where n is the number of periods.","-1835384051":"What SMA tells you","-749487251":"SMA serves as an indicator of the trend. If the SMA points up then the market price is increasing and vice versa. The larger the period number, the smoother SMA line is.","-1996062088":"In this example, each point of the SMA line is an arithmetic average of close prices for the last 10 days.","-1866751721":"Input list accepts a list of ticks or candles, while period is the specified time period.","-1097076512":"You may compare SMA values calculated on every bot run to identify the market trend direction. Alternatively, you may also use a variation of the SMA block, the Simple Moving Average Array block. ","-1254849504":"If a period of 10 is entered, the Simple Moving Average Array block will return a list of SMA values calculated based on period of 10.","-1190046167":"This block displays a dialog box with a customised message. When the dialog box is displayed, your strategy is paused and will only resume after you click \"OK\".","-859028989":"In this example, the date and time will be displayed in a green notification box.","-1452086215":"In this example, a Rise contract will be purchased at midnight on 1 August 2019.","-1765276625":"Click the multiplier drop-down menu and choose the multiplier value you want to trade with.","-1872233077":"Your potential profit will be multiplied by the multiplier value you’ve chosen.","-614454953":"To learn more about multipliers, please go to the <0>Multipliers page.","-2078588404":"Select your desired market and asset type. For example, Forex > Major pairs > AUD/JPY","-2037446013":"2. Trade Type","-533927844":"Select your desired trade type. For example, Up/Down > Rise/Fall","-1192411640":"4. Default Candle Interval","-485434772":"8. Trade Options","-1827646586":"This block assigns a given value to a variable, creating the variable if it doesn't already exist.","-254421190":"List: ({{message_length}})","-1616649196":"results","-90107030":"No results found","-984140537":"Add","-1373954791":"Should be a valid number","-1278608332":"Please enter a number between 0 and {{api_max_losses}}.","-287597204":"Enter limits to stop your bot from trading when any of these conditions are met.","-1445989611":"Limits your potential losses for the day across all Deriv platforms.","-152878438":"Maximum number of trades your bot will execute for this run.","-1490942825":"Apply and run","-1442034178":"Contract bought","-2020280751":"Bot is stopping","-1436403979":"Contract closed","-1711732508":"Reference IDs","-386141434":"(Buy)","-482272687":"(Sell)","-1983189496":"ticks","-694277729":"(High)","-2028564707":"(Low)","-627895223":"Exit spot","-596238067":"Entry/Exit spot","-558594655":"The bot is not running","-478946875":"The stats are cleared","-1842451303":"Welcome to Deriv Bot!","-1391310674":"Check out these guides and FAQs to learn more about building your bot:","-2066779239":"FAQs","-280324365":"What is Deriv Bot?","-1016171176":"Asset","-621128676":"Trade type","-447853970":"Loss threshold","-507620484":"Unsaved","-764102808":"Google Drive","-1696412885":"Import","-320197558":"Sort blocks","-1566369363":"Zoom out","-1285759343":"Search","-1291088318":"Purchase conditions","-112876186":"Analysis","-1769584466":"Stats","-1133736197":"Utility","-1682372359":"Text","-907562847":"Lists","-1646497683":"Loops","-251326965":"Miscellaneous","-934909826":"Load strategy","-1692205739":"Import a bot from your computer or Google Drive, build it from scratch, or start with a quick strategy.","-1545070554":"Delete bot","-1972599670":"Your bot will be permanently deleted when you hit ","-1692956623":"Yes, delete.","-573479616":"Are you sure you want to delete it?","-786915692":"You are connected to Google Drive","-1256971627":"To import your bot from your Google Drive, you'll need to sign in to your Google account.","-1233084347":"To know how Google Drive handles your data, please review Deriv’s <0>Privacy policy.","-1150107517":"Connect","-1150390589":"Last modified","-1393876942":"Your bots:","-767342552":"Enter your bot name, choose to save on your computer or Google Drive, and hit ","-1372891985":"Save.","-1003476709":"Save as collection","-636521735":"Save strategy","-1953880747":"Stop my bot","-1899230001":"Stopping the current bot will load the Quick Strategy you just created to the workspace.","-2131847097":"Any open contracts can be viewed on the ","-563774117":"Dashboard","-939764287":"Charts","-683790172":"Now, <0>run the bot to test out the strategy.","-1127164953":"Hi! Hit <0>Start for a quick tour.","-358288026":"Note: You can also find this tutorial in the <0>Tutorials tab.","-1793577405":"Build from scratch","-358753028":"Create your bot using our drag-and-drop blocks or click Quick Strategy to choose from the ready-to-use bot templates.","-1212601535":"Monitor the market","-21136101":"See how your bot is doing in real-time.","-631097919":"Click <0>Run when you want to start trading, and click <0>Stop when you want to stop.","-1999747212":"Want to retake the tour?","-129587613":"Got it, thanks!","-782992165":"Step 1 :","-1207872534":"First, set the <0>Trade parameters block.","-1656388044":"First, set <0>Market to Derived > Continuous Indices > Volatility 100 (1s) Index.","-1706298865":"Then, set <0>Trade type to Up/Down > Rise/Fall.","-1834358537":"For <0>Default candle interval, set it to 1 minute","-1940971254":"For <0>Trade options, set it as below:","-512839354":"<0>Stake: USD 10 (min: 0.35 - max: 50000)","-753745278":"Step 2 :","-1056713679":"Then, set the <0>Purchase conditions block.","-245497823":"<0>2. Purchase conditions:","-916770284":"<0>Purchase: Rise","-758077259":"Step 3 :","-677396944":"Step 4 :","-295975118":"Next, go to <0>Utility tab under the Blocks menu. Tap the drop-down arrow and hit <0>Loops.","-698493945":"Step 5 :","-1992994687":"Now, tap the <0>Analysis drop-down arrow and hit <0>Contract.","-1844492873":"Go to the <0>Last trade result block and click + icon to add the <0>Result is Win block to the workspace.","-1547091772":"Then, drag the <0>Result is win into the empty slot next to <0>repeat until block.","-736400802":"Step 6 :","-732067680":"Finally, drag and add the whole <0>Repeat block to the <0>Restart trading conditions block.","-1411787252":"Step 1","-1109392787":"Learn how to build your bot from scratch using a simple strategy.","-1263822623":"You can import a bot from your mobile device or from Google drive, see a preview in the bot builder, and start trading by running the bot.","-563921656":"Bot Builder guide","-1109191651":"Must be a number higher than 0","-689786738":"Minimum duration: {{ min }}","-184183432":"Maximum duration: {{ max }}","-1494924808":"The value must be equal to or greater than 2.","-1823621139":"Quick Strategy","-1778025545":"You’ve successfully imported a bot.","-1519425996":"No results found \"{{ faq_search_value }}\"","-155173714":"Let’s build a bot!","-1919212468":"3. You can also search for the blocks you want using the search bar above the categories.","-1520558271":"For more info, check out this blog post on the basics of building a trading bot.","-980360663":"3. Choose the block you want and drag it to the workspace.","-1493168314":"What is a quick strategy?","-1680391945":"Using a quick strategy","-1177914473":"How do I save my strategy?","-271986909":"In Bot Builder, hit Save on the toolbar at the top to download your bot. Give your bot a name, and choose to download your bot to your device or Google Drive. Your bot will be downloaded as an XML file.","-1149045595":"1. After hitting Import, select Local and click Continue.","-288041546":"2. Select your XML file and hit Open.","-2127548288":"3. Your bot will be loaded accordingly.","-1311297611":"1. After hitting Import, select Google Drive and click Continue.","-1549564044":"How do I reset the workspace?","-1127331928":"In Bot Builder, hit Reset on the toolbar at the top. This will clear the workspace. Please note that any unsaved changes will be lost.","-1720444288":"How do I control my losses with Deriv Bot?","-1142295124":"There are several ways to control your losses with Deriv Bot. Here’s a simple example of how you can implement loss control in your strategy:","-986689483":"1. Create the following variables:","-269910127":"3. Update current profit/loss with the profit from the last contract. If the last contract was lost, the value of current profit/loss will be negative.","-1565344891":"Can I run Deriv Bot on multiple tabs in my web browser?","-90192474":"Yes, you can. However, there are limits on your account, such as maximum number of open positions and maximum aggregate payouts on open positions. So, just keep these limits in mind when opening multiple positions. You can find more info about these limits at Settings > Account limits.","-213872712":"No, we don't offer cryptocurrencies on Deriv Bot.","-2147346223":"In which countries is Deriv Bot available?","-352345777":"What are the most popular strategies for automated trading?","-552392096":"Three of the most commonly used strategies in automated trading are Martingale, D'Alembert, and Oscar's Grind — you can find them all ready-made and waiting for you in Deriv Bot.","-418247251":"Download your journal.","-870004399":"<0>Bought: {{longcode}} (ID: {{transaction_id}})","-1211474415":"Filters","-186972150":"There are no messages to display","-999254545":"All messages are filtered out","-1121028020":"or, if you prefer...","-254025477":"Select an XML file from your device","-1131095838":"Please upload an XML file","-523928088":"Create one or upload one from your local drive or Google Drive.","-1684205190":"Why can't I see my recent bots?","-2050879370":"1. Logged in from a different device","-811857220":"3. Cleared your browser cache","-625024929":"Leaving already?","-584289785":"No, I'll stay","-1435060006":"If you leave, your current contract will be completed, but your bot will stop running immediately.","-783058284":"Total stake","-2077494994":"Total payout","-1073955629":"No. of runs","-1729519074":"Contracts lost","-42436171":"Total profit/loss","-1137823888":"Total payout since you last cleared your stats.","-992662695":"The number of times your bot has run since you last cleared your stats. Each run includes the execution of all the root blocks.","-1382491190":"Your total profit/loss since you last cleared your stats. It is the difference between your total payout and your total stake.","-24780060":"When you’re ready to trade, hit ","-2147110353":". You’ll be able to track your bot’s performance here.","-2140412463":"Buy price","-1299484872":"Account","-2004386410":"Win","-266502731":"Transactions detailed summary","-1717650468":"Online","-1825471709":"A whole new trading experience on a powerful yet easy to use platform.","-981017278":"Automated trading at your fingertips. No coding needed.","-1309011360":"Open positions","-1597214874":"Trade table","-1929724703":"Compare CFD accounts","-883103549":"Account deactivated","-1837059346":"Buy / Sell","-1845037007":"Advertiser's page","-494667560":"Orders","-679691613":"My ads","-821418875":"Trader","-679102561":"Contract Details","-430118939":"Complaints policy","-568280383":"Deriv Gaming","-895331276":"Complete your proof of address","-782679300":"Complete your proof of identity","-579984289":"Derived Demo","-1596515467":"Derived BVI","-222394569":"Derived Vanuatu","-533935232":"Financial BVI","-565431857":"Financial Labuan","-291535132":"Swap-Free Demo","-1472945832":"Swap-Free SVG","-144803045":"Only numbers and these special characters are allowed: {{permitted_characters}}","-1450516268":"Only letters, numbers, space, hyphen, period, and apostrophe are allowed.","-1966032552":"The length of token should be 8.","-2128137611":"Should start with letter or number, and may contain hyphen and underscore.","-1590869353":"Up to {{decimal_count}} decimal places are allowed.","-2061307421":"Should be more than {{min_value}}","-1099941162":"Should be less than {{max_value}}","-1528188268":"Straight rows of keys are easy to guess","-1339903234":"Short keyboard patterns are easy to guess","-23980798":"Repeats like \"aaa\" are easy to guess","-235760680":"Avoid repeated words and characters","-1568933154":"Sequences like abc or 6543 are easy to guess","-725663701":"Avoid sequences","-1450768475":"Recent years are easy to guess","-1804838610":"Avoid years that are associated with you","-64849469":"Dates are often easy to guess","-2006915194":"Avoid dates and years that are associated with you","-2124205211":"A word by itself is easy to guess","-1095202689":"All-uppercase is almost as easy to guess as all-lowercase","-2137856661":"Reversed words aren't much harder to guess","-1885413063":"Predictable substitutions like '@' instead of 'a' don't help very much","-369258265":"This password is on the blacklist","-681468758":"Your web browser is out of date and may affect your trading experience. Please <0>update your browser.","-577777971":"You have reached the rate limit of requests per second. Please try later.","-206321775":"Fiat","-522767852":"DEMO","-433761292":"Switching to default account.","-405439829":"Sorry, you can't view this contract because it doesn't belong to this account.","-1590712279":"Gaming","-16448469":"Virtual","-2093768906":"{{name}} has released your funds.
Would you like to give your feedback?","-705744796":"Your demo account balance has reached the maximum limit, and you will not be able to place new trades. Reset your balance to continue trading from your demo account.","-2063700253":"disabled","-800774345":"Power up your Financial trades with intuitive tools from Acuity.","-279582236":"Learn More","-1211460378":"Power up your trades with Acuity","-703292251":"Download intuitive trading tools to keep track of market events. The Acuity suite is only available for Windows, and is most recommended for financial assets.","-1585069798":"Please click the following link to complete your Appropriateness Test.","-1287141934":"Find out more","-367759751":"Your account has not been verified","-596690079":"Enjoy using Deriv?","-265932467":"We’d love to hear your thoughts","-1815573792":"Drop your review on Trustpilot.","-823349637":"Go to Trustpilot","-1204063440":"Set my account currency","-1601813176":"Would you like to increase your daily limits to {{max_daily_buy}} {{currency}} (buy) and {{max_daily_sell}} {{currency}} (sell)?","-1751632759":"Get a faster mobile trading experience with the <0>{{platform_name_go}} app!","-1164554246":"You submitted expired identification documents","-219846634":"Let’s verify your ID","-529038107":"Install","-1738575826":"Please switch to your real account or create one to access the cashier.","-1329329028":"You’ve not set your 30-day turnover limit","-132893998":"Your access to the cashier has been temporarily disabled as you have not set your 30-day turnover limit. Please go to Self-exclusion and set the limit.","-1852207910":"MT5 withdrawal disabled","-764323310":"MT5 withdrawals have been disabled on your account. Please check your email for more details.","-1902997828":"Refresh now","-753791937":"A new version of Deriv is available","-1775108444":"This page will automatically refresh in 5 minutes to load the latest version.","-1175685940":"Please contact us via live chat to enable withdrawals.","-493564794":"Please complete your financial assessment.","-1125797291":"Password updated.","-157145612":"Please log in with your updated password.","-1728185398":"Resubmit proof of address","-612396514":"Please resubmit your proof of address.","-1519764694":"Your proof of address is verified.","-1961967032":"Resubmit proof of identity","-117048458":"Please submit your proof of identity.","-1196422502":"Your proof of identity is verified.","-136292383":"Your proof of address verification is pending","-386909054":"Your proof of address verification has failed","-430041639":"Your proof of address did not pass our verification checks, and we’ve placed some restrictions on your account. Please resubmit your proof of address.","-87177461":"Please go to your account settings and complete your personal details to enable deposits.","-904632610":"Reset your balance","-470018967":"Reset balance","-156611181":"Please complete the financial assessment in your account settings to unlock it.","-1925176811":"Unable to process withdrawals in the moment","-980696193":"Withdrawals are temporarily unavailable due to system maintenance. You can make withdrawals when the maintenance is complete.","-1647226944":"Unable to process deposit in the moment","-488032975":"Deposits are temporarily unavailable due to system maintenance. You can make deposits when the maintenance is complete.","-2136953532":"Scheduled cashier maintenance","-849587074":"You have not provided your tax identification number","-47462430":"This information is necessary for legal and regulatory requirements. Please go to your account settings, and fill in your latest tax identification number.","-2067423661":"Stronger security for your Deriv account","-1719731099":"With two-factor authentication, you’ll protect your account with both your password and your phone - so only you can access your account, even if someone knows your password.","-949074612":"Please contact us via live chat.","-2087822170":"You are offline","-1669693571":"Check your connection.","-1706642239":"<0>Proof of ownership <1>required","-553262593":"<0><1>Your account is currently locked <2><3>Please upload your proof of <4>ownership to unlock your account. <5>","-1834929362":"Upload my document","-1043638404":"<0>Proof of ownership <1>verification failed","-1766760306":"<0><1>Please upload your document <2>with the correct details. <3>","-8892474":"Start assessment","-1330929685":"Please submit your proof of identity and proof of address to verify your account and continue trading.","-99461057":"Please submit your proof of address to verify your account and continue trading.","-577279362":"Please submit your proof of identity to verify your account and continue trading.","-197134911":"Your proof of identity is expired","-152823394":"Your proof of identity has expired. Please submit a new proof of identity to verify your account and continue trading.","-420930276":"Follow these simple instructions to fix it.","-2142540205":"It appears that the address in your document doesn’t match the address in your Deriv profile. Please update your personal details now with the correct address.","-482715448":"Go to Personal details","-2072411961":"Your proof of address has been verified","-384887227":"Update the address in your profile.","-448961363":"non-EU","-1998049070":"If you agree to our use of cookies, click on Accept. For more information, <0>see our policy.","-402093392":"Add Deriv Account","-1721181859":"You’ll need a {{deriv_account}} account","-1989074395":"Please add a {{deriv_account}} account first before adding a {{dmt5_account}} account. Deposits and withdrawals for your {{dmt5_label}} account are done by transferring funds to and from your {{deriv_label}} account.","-689237734":"Proceed","-1642457320":"Help centre","-1966944392":"Network status: {{status}}","-594209315":"Synthetic indices in the EU are offered by {{legal_entity_name}}, W Business Centre, Level 3, Triq Dun Karm, Birkirkara BKR 9033, Malta, licensed and regulated by the Malta Gaming Authority (<0>licence no. MGA/B2C/102/2000) and by the Revenue Commissioners for clients in Ireland (<2>licence no. 1010285).","-181484419":"Responsible trading","-650505513":"Full screen","-1823504435":"View notifications","-1954045170":"No currency assigned","-583559763":"Menu","-1591792668":"Account Limits","-34495732":"Regulatory information","-1496158755":"Go to Deriv.com","-1323441180":"I hereby confirm that my request for opening an account with Deriv to trade OTC products issued and offered exclusively outside Brazil was initiated by me. I fully understand that Deriv is not regulated by CVM and by approaching Deriv I intend to set up a relation with a foreign company.","-1396326507":"Unfortunately, {{website_name}} is not available in your country.","-1019903756":"Synthetic","-288996254":"Unavailable","-735306327":"Manage accounts","-2024365882":"Explore","-1197864059":"Create free demo account","-1813972756":"Account creation paused for 24 hours","-366030582":"Sorry, you're unable to create an account at this time. As you declined our previous risk warnings, we need you to wait for 24 hours after your first account creation attempt before you can proceed.<0/><0/>","-534047566":"Thank you for your understanding. You can create your account on {{real_account_unblock_date}} or later.","-399816343":"Trading Experience Assessment<0/>","-1822498621":"As per our regulatory obligations, we are required to assess your trading knowledge and experience.<0/><0/>Please click ‘OK’ to continue","-71049153":"Keep your account secure with a password","-1861974537":"Strong passwords contain at least 8 characters, combine uppercase and lowercase letters, numbers, and symbols.","-1485242688":"Step {{step}}: {{step_title}} ({{step}} of {{steps}})","-1829842622":"You can open an account for each cryptocurrency.","-987221110":"Choose a currency you would like to trade with.","-1066574182":"Choose a currency","-1914534236":"Choose your currency","-200560194":"Please switch to your {{fiat_currency}} account to change currencies.","-1829493739":"Choose the currency you would like to trade with.","-1814647553":"Add a new","-1269362917":"Add new","-650480777":"crypto account","-175638343":"Choose an account or add a new one","-1768223277":"Your account is ready","-1215717784":"<0>You have successfully changed your currency to {{currency}}.<0>Make a deposit now to start trading.","-786091297":"Trade on demo","-228099749":"Please verify your identity and address","-1041852744":"We're processing your personal information","-1775006840":"Make a deposit now to start trading.","-983734304":"We need proof of your identity and address before you can start trading.","-917733293":"To get trading, please confirm where you live.","-1282628163":"You'll be able to get trading as soon as verification is complete.","-952649119":"Log In","-3815578":"Sign Up","-1456176427":"Set a currency for your real account","-1557011219":"Add a real Deriv Options account","-241733171":"Add a Deriv Financial account","-1329687645":"Create a cryptocurrency account","-1429178373":"Create a new account","-1740162250":"Manage account","-1016775979":"Choose an account","-1362081438":"Adding more real accounts has been restricted for your country.","-1602122812":"24-hour Cool Down Warning","-1519791480":"CFDs and other financial instruments come with a high risk of losing money rapidly due to leverage. You should consider whether you understand how CFDs and other financial instruments work and whether you can afford to take the risk of losing your money. <0/><0/>\n As you have declined our previous warning, you would need to wait 24 hours before you can proceed further.","-1010875436":"CFDs and other financial instruments come with a high risk of losing money rapidly due to leverage. You should consider whether you understand how CFDs and other financial instruments work and whether you can afford to take the high risk of losing your money. <0/><0/> To continue, kindly note that you would need to wait 24 hours before you can proceed further.","-1725418054":"By clicking ‘Accept’ and proceeding with the account opening, you should note that you may be exposing yourself to risks. These risks, which may be significant, include the risk of losing the entire sum invested, and you may not have the knowledge and experience to properly assess or mitigate them.","-1369294608":"Already signed up?","-730377053":"You can’t add another real account","-2100785339":"Invalid inputs","-2061807537":"Something’s not right","-617844567":"An account with your details already exists.","-292363402":"Trading statistics report","-1656860130":"Options trading can become a real addiction, as can any other activity pushed to its limits. To avoid the danger of such an addiction, we provide a reality-check that gives you a summary of your trades and accounts on a regular basis.","-28080461":"Would like to check your statement first? <0>Check Statement","-611059051":"Please specify your preferred interval reality check in minutes:","-1876891031":"Currency","-11615110":"Turnover","-1370419052":"Profit / Loss","-437320982":"Session duration:","-3959715":"Current time:","-1534648620":"Your password has been changed","-596199727":"We will now redirect you to the login page.","-310434518":"The email input should not be empty.","-437918412":"No currency assigned to your account","-1193651304":"Country of residence","-707550055":"We need this to make sure our service complies with laws and regulations in your country.","-280139767":"Set residence","-601615681":"Select theme","-1152511291":"Dark","-1428458509":"Light","-1976089791":"Your Deriv account has been unlinked from your {{social_identity_provider}} account. You can now log in to Deriv using your new email address and password.","-505449293":"Enter a new password for your Deriv account.","-1728963310":"Stop creating an account?","-703818088":"Only log in to your account at this secure link, never elsewhere.","-1235799308":"Fake links often contain the word that looks like \"Deriv\" but look out for these differences.","-2102997229":"Examples","-82488190":"I've read the above carefully.","-97775019":"Do not trust and give away your credentials on fake websites, ads or emails.","-2142491494":"OK, got it","-611136817":"Beware of fake links.","-1787820992":"Platforms","-1793883644":"Trade FX and CFDs on a customisable, easy-to-use trading platform.","-184713104":"Earn fixed payouts with options, or trade multipliers to amplify your gains with limited risk.","-1571775875":"Our flagship options and multipliers trading platform.","-895091803":"If you're looking for CFDs","-1447215751":"Not sure? Try this","-2338797":"<0>Maximise returns by <0>risking more than you put in.","-1682067341":"Earn <0>fixed returns by <0>risking only what you put in.","-1744351732":"Not sure where to start?","-943710774":"This complaints policy, which may change from time to time, applies to your account registered with {{legal_entity_name}}, having its registered office address at First Floor, Millennium House, Victoria Road, Douglas, Isle of Man, IM2 4RW, licensed and regulated respectively by (1) the Gambling Supervision Commission in the Isle of Man (current <0>licence issued on 31 August 2017) and (2) the Gambling Commission in the UK (<1>licence no. 39172).","-255056078":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name}}, having its registered office address at W Business Centre, Level 3, Triq Dun Karm, Birkirkara, BKR 9033, Malta, licensed and regulated by the Malta Gaming Authority in Malta for gambling products only, <0>licence no. MGA/B2C/102/2000, and for clients residing in the UK by the UK Gambling Commission (account number 39495).","-1941013000":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name_svg}}, {{legal_entity_name_fx}}, and {{legal_entity_name_v}}.","-594812204":"This complaints policy, which may change from time to time, applies to your account(s) registered with {{legal_entity_name_svg}}.","-813256361":"We are committed to treating our clients fairly and providing them with excellent service.<0/><1/>We would love to hear from you on how we can improve our services to you. Any information you provide will be treated in the strictest confidence. Rest assured that you will be heard, valued, and always treated fairly.","-1622847732":"If you have an inquiry regarding your trading account with {{legal_entity_name}}, you can contact us through our <0>Help centre or by chatting with a representative via <1>Live Chat.<2/><3/>We are committed to resolving your query in the quickest time possible and appreciate your patience in allowing us time to resolve the matter.<4/><5/>We strive to provide the best possible service and support to our customers. However, in the event that we are unable to resolve your query or if you feel that our response is unsatisfactory, we want to hear from you. We welcome and encourage you to submit an official complaint to us so that we can review your concerns and work towards a resolution.","-1639808836":"If you are not satisfied with the outcome, you can escalate your complaint to the <0>Independent Betting Adjudication Service (IBAS) by filling the IBAS adjudication form. Please note that IBAS only deals with disputes that result from transactions.","-1505742956":"<0/><1/>You can also refer your dispute to the Malta Gaming Authority via the <2>Player Support Unit.","-1406192787":"If you are not satisfied with the outcome, you can escalate your complaint to the <0>Financial Commission.","-1776547326":"<0/><1/>If you reside in the UK and you are unhappy with our response you may escalate your complaint to the <2>Financial Ombudsman Service.","-2115348800":"1. Introduction","-744009523":"2. Fair treatment","-866831420":"3.1. Submission of a complaint","-1102904026":"3.2. Handling your complaint","-603378979":"3.3. Resolving your complaint","-697569974":"3.4. Your decision","-1280998762":"4. Complaints","-1886635232":"A complaint is any expression of dissatisfaction by a client regarding our products or services that requires a formal response.<0/><1/>If what you submit does not fall within the scope of a complaint, we may reclassify it as a query and forward it to the relevant department for handling. However, if you believe that your query should be classified as a complaint due to its relevance to the investment services provided by {{legal_entity_name}}, you may request that we reclassify it accordingly.","-1771496016":"To submit a complaint, please send an email to <0>complaints@deriv.com, providing as much detail as possible. To help us investigate and resolve your complaint more efficiently, please include the following information:","-1197243525":"<0>•A clear and detailed description of your complaint, including any relevant dates, times, and transactions","-1795134892":"<0>•Any relevant screenshots or supporting documentation that will assist us in understanding the issue","-2053887036":"4.4. Handling your complaint","-717170429":"Once we have received the details of your complaint, we shall review it carefully and keep you updated on the handling process. We might request further information or clarifications to facilitate the resolution of the complaint.","-1841922393":"4.5. Resolving your complaint","-1327119795":"4.6. Your decision","-2019654103":"If we are unable to resolve your complaint or you are not satisfied with the outcome, you can escalate your complaint to the Office of the Arbiter for Financial Services.<0/><1/><2>Filing complaints with the Office of the Arbiter for Financial Services","-687172857":"<0>•You may file a complaint with the Arbiter for Financial Services only if you are not satisfied with our decision or the decision wasn’t made within 15 business days.","-262934706":"<0>•If the complaint is accepted by the Arbiter, you will receive another email with further details relating to the payment of the €25 complaint fee and the processes that follow.","-993572476":"<0>b.The Financial Commission has 5 days to acknowledge that your complaint was received and 14 days to answer the complaint through our Internal Dispute Resolution (IDR) procedure.","-1769159081":"<0>c.You will be able to file a complaint with the Financial Commission only if you are not satisfied with our decision or the decision wasn’t made within 14 days.","-58307244":"3. Determination phase","-356618087":"<0>b.The DRC may request additional information from you or us, who must then provide the requested information within 7 days.","-945718602":"<0>b.If you agree with a DRC decision, you will need to accept it within 14 days. If you do not respond to the DRC decision within 14 days, the complaint is considered closed.","-1500907666":"<0>d.If the decision is made in our favour, you must provide a release for us within 7 days of when the decision is made, and the complaint will be considered closed.","-429248139":"5. Disclaimer","-818926350":"The Financial Commission accepts appeals for 45 days following the date of the incident and only after the trader has tried to resolve the issue with the company directly.","-358055541":"Power up your trades with cool new tools","-29496115":"We've partnered with Acuity to give you a suite of intuitive trading tools for MT5 so you can keep track of market events and trends, free of charge!<0/><0/>","-648669944":"Download the Acuity suite and take advantage of the <1>Macroeconomic Calendar, Market Alerts, Research Terminal, and <1>Signal Centre Trade Ideas without leaving your MT5 terminal.<0/><0/>","-794294380":"This suite is only available for Windows, and is most recommended for financial assets.","-922510206":"Need help using Acuity?","-815070480":"Disclaimer: The trading services and information provided by Acuity should not be construed as a solicitation to invest and/or trade. Deriv does not offer investment advice. The past is not a guide to future performance, and strategies that have worked in the past may not work in the future.","-2111521813":"Download Acuity","-778309978":"The link you clicked has expired. Ensure to click the link in the latest email in your inbox. Alternatively, enter your email below and click <0>Resend email for a new link.","-336222114":"Follow these simple steps to fix it:","-1064116456":"Search for the broker <0>Deriv Holdings (Guernsey) Limited and select it.","-941870889":"The cashier is for real accounts only","-352838513":"It looks like you don’t have a real {{regulation}} account. To use the cashier, switch to your {{active_real_regulation}} real account, or get an {{regulation}} real account.","-1858915164":"Ready to deposit and trade for real?","-162753510":"Add real account","-1208519001":"You need a real Deriv account to access the cashier.","-175369516":"Welcome to Deriv X","-939154994":"Welcome to Deriv MT5 dashboard","-1667427537":"Run Deriv X on your browser or download the mobile app","-305915794":"Run MT5 from your browser or download the MT5 app for your devices","-404375367":"Trade forex, basket indices, commodities, and cryptocurrencies with high leverage.","-243985555":"Trade CFDs on forex, stocks, stock indices, synthetic indices, cryptocurrencies, and commodities with leverage.","-2030107144":"Trade CFDs on forex, stocks & stock indices, commodities, and crypto.","-705682181":"Malta","-409563066":"Regulator","-1302404116":"Maximum leverage","-2098459063":"British Virgin Islands","-1510474851":"British Virgin Islands Financial Services Commission (licence no. SIBA/L/18/1114)","-761250329":"Labuan Financial Services Authority (Licence no. MB/18/0024)","-1264604378":"Up to 1:1000","-1686150678":"Up to 1:100","-637908996":"100%","-1420548257":"20+","-1344709651":"40+","-1373949478":"50+","-1382029900":"70+","-1493055298":"90+","-523602297":"Forex majors","-1303090739":"Up to 1:1500","-19213603":"Metals","-1728334460":"Up to 1:300","-646902589":"(US_30, US_100, US_500)","-1835174654":"1:30","-1647612934":"Spreads from","-1587894214":"about verifications needed.","-466784048":"Regulator/EDR","-1920034143":"Synthetics, Baskets and Derived FX","-1326848138":"British Virgin Islands Financial Services Commission (License no. SIBA/L/18/1114)","-777580328":"Forex, Stocks, Stock indices, Commodities, and Cryptocurrencies","-1372141447":"Straight-through processing","-1969608084":"Forex and Cryptocurrencies","-800771713":"Labuan Financial Services Authority (licence no. MB/18/0024)","-1497128311":"80+","-1501230046":"0.6 pips","-1689815930":"You will need to submit proof of identity and address once you reach certain thresholds.","-1175785439":"Deriv (SVG) LLC (company no. 273 LLC 2020)","-235833244":"Synthetics, Forex, Stocks, Stock Indices, Cryptocurrencies, and ETFs","-139026353":"A selfie of yourself.","-70314394":"A recent utility bill (electricity, water or gas) or recent bank statement or government-issued letter with your name and address.","-435524000":"Verification failed. Resubmit during account creation.","-1385099152":"Your document is verified.","-931599668":"ETF","-651501076":"Derived - SVG","-865172869":"Financial - BVI","-1851765767":"Financial - Vanuatu","-558597854":"Financial - Labuan","-2052425142":"Swap-Free - SVG","-1192904361":"Deriv X Demo","-1269597956":"MT5 Platform","-239789243":"(License no. SIBA/L/18/1114)","-1434036215":"Demo Financial","-1416247163":"Financial STP","-1637969571":"Demo Swap-Free","-1882063886":"Demo CFDs","-1347908717":"Demo Financial SVG","-1780324582":"SVG","-785625598":"Use these credentials to log in to your {{platform}} account on the website and mobile apps.","-997127433":"Change Password","-1300381594":"Get Acuity trading tools","-860609405":"Password","-742647506":"Fund transfer","-1972393174":"Trade CFDs on our synthetics, baskets, and derived FX.","-1357917360":"Web terminal","-1454896285":"The MT5 desktop app is not supported by Windows XP, Windows 2003, and Windows Vista.","-810388996":"Download the Deriv X mobile app","-1727991510":"Scan the QR code to download the Deriv X Mobile App","-511301450":"Indicates the availability of cryptocurrency trading on a particular account.","-1647569139":"Synthetics, Baskets, Derived FX, Forex: standard/micro, Stocks, Stock indices, Commodities, Cryptocurrencies","-2102641225":"At bank rollover, liquidity in the forex markets is reduced and may increase the spread and processing time for client orders. This happens around 21:00 GMT during daylight saving time, and 22:00 GMT non-daylight saving time.","-495364248":"Margin call and stop out level will change from time to time based on market condition.","-536189739":"To protect your portfolio from adverse market movements due to the market opening gap, we reserve the right to decrease leverage on all offered symbols for financial accounts before market close and increase it again after market open. Please make sure that you have enough funds available in your {{platform}} account to support your positions at all times.","-712681566":"Peer-to-peer exchange","-1267880283":"{{field_name}} is required","-2084509650":"{{field_name}} is not properly formatted.","-1580554423":"Trade CFDs on our synthetic indices that simulate real-world market movements.","-1385484963":"Confirm to change your {{platform}} password","-1990902270":"This will change the password to all of your {{platform}} accounts.","-1922462747":"Trader's hub","-700260448":"demo","-1769158315":"real","-2015785957":"Compare CFDs {{demo_title}} accounts","-673424733":"Demo account","-1986258847":"Server maintenance starts at 01:00 GMT every Sunday, and this process may take up to 2 hours to complete. Service may be disrupted during this time.","-1199152768":"Please explore our other platforms.","-205020823":"Explore {{platform_name_trader}}","-1982499699":"Explore {{platform_name_dbot}}","-1567989247":"Submit your proof of identity and address","-184453418":"Enter your {{platform}} password","-393388362":"We’re reviewing your documents. This should take about 1 to 3 days.","-790488576":"Forgot password?","-535365199":"Enter your {{platform}} password to add a {{platform_name}} {{account}} account.","-2057918502":"Hint: You may have entered your Deriv password, which is different from your {{platform}} password.","-1936102840":"Congratulations, you have successfully created your {{category}} <0>{{platform}} <1>{{type}} {{jurisdiction_selected_shortcode}} account. ","-1928229820":"Reset Deriv X investor password","-1087845020":"main","-1950683866":"investor","-1874242353":"Fund top up","-89838213":"You can top up your demo account with an additional <0> if your balance is <1> or less.","-1211122723":"{{ platform }} {{ account_title }} account","-78895143":"Current balance","-149993085":"New current balance","-490244964":"Forex, stocks, stock indices, cryptocurrencies","-1368041210":", synthetic indices","-877064208":"EUR","-1318070255":"EUR/GBP","-1284221303":"You’ll get a warning, known as margin call, if your account balance drops down close to the stop out level.","-1848799829":"To understand stop out, first you need to learn about margin level, which is the ratio of your equity (the total balance you would have if you close all your positions at that point) to the margin you're using at the moment. If your margin level drops below our stop out level, your positions may be closed automatically to protect you from further losses.","-224051432":"24/7","-70716111":"FX-majors (standard/micro lots), FX-minors, basket indices, commodities, cryptocurrencies, and stocks and stock indices","-1041629137":"FX-majors, FX-minors, FX-exotics, and cryptocurrencies","-287097947":"FX-majors (standard/micro lots), FX-minors, Commodities, Cryptocurrencies (except UK)","-2016975615":"Deriv MT5 CFDs real account","-1207265427":"Compare CFDs real accounts","-1225160479":"Compare available accounts","-266701451":"derivX wordmark","-2145356061":"Download Deriv X on your phone to trade with the Deriv X account","-251202291":"Broker","-81650212":"MetaTrader 5 web","-2123571162":"Download","-941636117":"MetaTrader 5 Linux app","-637537305":"Download {{ platform }} on your phone to trade with the {{ platform }} {{ account }} account","-678964540":"to","-206829624":"(1:x)","-616293830":"Enjoy dynamic leverage of <0>up to 1:1500 when trading selected instruments in the forex, commodities, cryptocurrencies, and stock indices markets. Our dynamic leverage adjusts automatically to your trading position, based on asset type and trading volume.","-2042845290":"Your investor password has been changed.","-1882295407":"Your password has been changed.","-254497873":"Use this password to grant viewing access to another user. While they may view your trading account, they will not be able to trade or take any other actions.","-161656683":"Current investor password","-374736923":"New investor password","-1793894323":"Create or reset investor password","-21438174":"Add your Deriv cTrader account under Deriv (SVG) LLC (company no. 273 LLC 2020).","-2026018074":"Add your Deriv MT5 <0>{{account_type_name}} account under Deriv (SVG) LLC (company no. 273 LLC 2020).","-162320753":"Add your Deriv MT5 <0>{{account_type_name}} account under Deriv (BVI) Ltd, regulated by the British Virgin Islands Financial Services Commission (License no. SIBA/L/18/1114).","-271828350":"Get more out of Deriv MT5 Financial","-2125860351":"Choose a jurisdiction for your Deriv MT5 CFDs account","-450424792":"You need a real account (fiat currency or cryptocurrency) in Deriv to create a real Deriv MT5 account.","-1760596315":"Create a Deriv account","-525896186":"Download Deriv GO on your phone to trade with the Deriv EZ account","-1547458328":"Run cTrader on your browser","-648956272":"Use this password to log in to your Deriv X accounts on the web and mobile apps.","-1814308691":"Please click on the link in the email to change your {{platform}} password.","-35790392":"Scan the QR code to download {{Deriv}} {{ platform }}.","-1282933308":"Not {{barrier}}","-968190634":"Equals {{barrier}}","-1747377543":"Under {{barrier}}","-1455298001":"Now","-256210543":"Trading is unavailable at this time.","-1150099396":"We’re working to have this available for you soon. If you have another account, switch to that account to continue trading. You may add a Deriv MT5 Financial.","-28115241":"{{platform_name_trader}} is not available for this account","-453920758":"Go to {{platform_name_mt5}} dashboard","-402175529":"History","-902712434":"Deal cancellation","-988484646":"Deal cancellation (executed)","-444882676":"Deal cancellation (active)","-13423018":"Reference ID","-2035315547":"Low barrier","-1551639437":"No history","-1214703885":"You have yet to update either take profit or stop loss","-504849554":"It will reopen at","-59803288":"In the meantime, try our synthetic indices. They simulate real-market volatility and are open 24/7.","-1278109940":"See open markets","-694105443":"This market is closed","-439389714":"We’re working on it","-770929448":"Go to {{platform_name_smarttrader}}","-590131162":"Stay on {{website_domain}}","-1444663817":"Go to Binary.com","-1526466612":"You’ve selected a trade type that is currently unsupported, but we’re working on it.","-1043795232":"Recent positions","-1572796316":"Purchase price:","-1694314813":"Contract value:","-153220091":"{{display_value}} Tick","-802374032":"Hour","-2039780875":"Purchase confirmation","-1672470173":"Require confirmation before purchasing a contract","-1342661765":"Lock contract purchase buttons","-351875097":"Number of ticks","-729830082":"View less","-149836494":"Your transaction reference number is {{transaction_id}}","-1382749084":"Go back to trading","-1231210510":"Tick","-1239477911":"second","-1585766960":"min","-1652791614":"mins","-1977959027":"hours","-442488432":"day","-337314714":"days","-8998663":"Digit: {{last_digit}} ","-1435392215":"About deal cancellation","-2017825013":"Got it","-1280319153":"Cancel your trade anytime within a chosen time-frame. Triggered automatically if your trade reaches the stop out level within the chosen time-frame.","-471757681":"Risk management","-843831637":"Stop loss","-771725194":"Deal Cancellation","-338707425":"Minimum duration is 1 day","-1003473648":"Duration: {{duration}} day","-740702998":"<0>{{title}} {{message}}","-1669741470":"The payout at expiry is equal to the payout per point multiplied by the difference between the final price and the strike price.","-1527492178":"Purchase Locked","-725375562":"You can lock/unlock the purchase button from the Settings menu","-2131851017":"Growth rate","-1358367903":"Stake","-542594338":"Max. payout","-690963898":"Your contract will be automatically closed when your payout reaches this amount.","-511541916":"Your contract will be automatically closed upon reaching this number of ticks.","-434270664":"Current Price","-1956787775":"Barrier Price:","-1513281069":"Barrier 2","-390994177":"Should be between {{min}} and {{max}}","-1804019534":"Expiry: {{date}}","-2055106024":"Toggle between advanced and simple duration settings","-1012793015":"End time","-2037881712":"Your contract will be closed automatically at the next available asset price on <0>.","-629549519":"Commission <0/>","-2131859340":"Stop out <0/>","-1686280757":"<0>{{commission_percentage}}% of (<1/> * {{multiplier}})","-1043117679":"When your current loss equals or exceeds {{stop_out_percentage}}% of your stake, your contract will be closed at the nearest available asset price.","-339236213":"Multiplier","-1763848396":"Put","-194424366":"above","-857660728":"Strike Prices","-243332856":"Last digit stats for latest 1000 ticks for {{ underlying_name }}","-1386326276":"Barrier is a required field.","-1418742026":"Higher barrier must be higher than lower barrier.","-92007689":"Lower barrier must be lower than higher barrier.","-1095538960":"Please enter the start time in the format \"HH:MM\".","-1975910372":"Minute must be between 0 and 59.","-866277689":"Expiry time cannot be in the past.","-347156282":"Submit Proof","-138538812":"Log in or create a free account to place a trade.","-2036388794":"Create free account","-1813736037":"No further trading is allowed on this contract type for the current trading session. For more info, refer to our <0>terms and conditions.","-1738427539":"Purchase","-1937372493":"You can close your trade anytime. However, be aware of <0>slippage risk<0/>.","-1392065699":"If you select \"Rise\", you win the payout if the exit spot is strictly higher than the entry spot.","-1762566006":"If you select \"Fall\", you win the payout if the exit spot is strictly lower than the entry spot.","-1435306976":"If you select \"Allow equals\", you win the payout if exit spot is higher than or equal to entry spot for \"Rise\". Similarly, you win the payout if exit spot is lower than or equal to entry spot for \"Fall\".","-1959473569":"If you select \"Lower\", you win the payout if the exit spot is strictly lower than the barrier.","-1350745673":"If the exit spot is equal to the barrier, you don't win the payout.","-2089488446":"If you select \"Ends Between\", you win the payout if the exit spot is strictly higher than the Low barrier AND strictly lower than the High barrier.","-1876950330":"If you select \"Ends Outside\", you win the payout if the exit spot is EITHER strictly higher than the High barrier, OR strictly lower than the Low barrier.","-546460677":"If the exit spot is equal to either the Low barrier or the High barrier, you don't win the payout.","-1812957362":"If you select \"Stays Between\", you win the payout if the market stays between (does not touch) either the High barrier or the Low barrier at any time during the contract period","-220379757":"If you select \"Goes Outside\", you win the payout if the market touches either the High barrier or the Low barrier at any time during the contract period.","-1281286610":"If you select \"Matches\", you will win the payout if the last digit of the last tick is the same as your prediction.","-1929209278":"If you select \"Even\", you will win the payout if the last digit of the last tick is an even number (i.e., 2, 4, 6, 8, or 0).","-2038865615":"If you select \"Odd\", you will win the payout if the last digit of the last tick is an odd number (i.e., 1, 3, 5, 7, or 9).","-1416078023":"If you select \"Touch\", you win the payout if the market touches the barrier at any time during the contract period.","-1272255095":"If the exit spot is equal to the barrier or the new barrier (if a reset occurs), you don't win the payout.","-231957809":"Win maximum payout if the exit spot is higher than or equal to the upper barrier.","-464144986":"Win maximum payout if the exit spot is lower than or equal to the lower barrier.","-1031456093":"Win up to maximum payout if exit spot is between lower and upper barrier, in proportion to the difference between upper barrier and exit spot.","-968162707":"No payout if exit spot is above or equal to the upper barrier.","-299450697":"If you select \"High Tick\", you win the payout if the selected tick is the highest among the next five ticks.","-705681870":"By purchasing the \"High-to-Low\" contract, you'll win the multiplier times the difference between the high and low over the duration of the contract.","-420387848":"The high is the highest point ever reached by the market during the contract period.","-1666375348":"By purchasing the \"High-to-Close\" contract, you'll win the multiplier times the difference between the high and close over the duration of the contract.","-2024955268":"If you select “Up”, you will earn a profit by closing your position when the market price is higher than the entry spot.","-1598433845":"If you select “Down”, you will earn a profit by closing your position when the market price is lower than the entry spot.","-885323297":"These are optional parameters for each position that you open:","-584696680":"If you select “Take profit” and specify an amount that you’d like to earn, your position will be closed automatically when your profit is more than or equals to this amount. Your profit may be more than the amount you entered depending on the market price at closing.","-1192494358":"If you select “Deal cancellation”, you’ll be able to cancel your trade within a chosen time frame should the market move against your favour. We’ll charge a small fee for this, but we’ll return your stake amount without profit or loss. If the stop-out amount is reached before the deal cancellation expires, your position will be cancelled automatically and we’ll return your stake amount without profit or loss.","-178096090":"“Take profit” cannot be updated. You may update it only when “Deal cancellation” expires.","-206909651":"The entry spot is the market price when your contract is processed by our servers.","-1576967286":"This product allows you to express a strong bullish or bearish view on an underlying asset.","-610471235":"If you think the market price will rise continuously for a specific period, choose <0>Long. You will get a payout at the expiry time if the market price doesn’t touch or cross below the barrier. Your payout will grow proportionally to the distance between the market price and the barrier if the barrier is not breached. You will start making a profit when the payout is higher than your stake. If the market price ever crosses the barrier, there won’t be a payout.","-454245976":"If you think the market price will drop continuously for a specific period, choose <0>Short. You will get a payout at the expiry time if the market price doesn’t touch or cross above the barrier. Your payout will grow proportionally to the distance between the market price and the barrier if the barrier is not breached. You will start making a profit when the payout is higher than your stake. If the market price ever crosses the barrier, there won’t be a payout.","-1790089996":"NEW!","-993480898":"Accumulators","-45873457":"NEW","-1422269966":"You can choose a growth rate with values of 1%, 2%, 3%, 4%, and 5%.","-1186791513":"Payout is the sum of your initial stake and profit.","-1682624802":"It is a percentage of the previous spot price. The percentage rate is based on your choice of the index and the growth rate.","-1221049974":"Final price","-1247327943":"This is the spot price of the last tick at expiry.","-878534036":"If you select \"Call\", you’ll earn a payout if the final price is above the strike price at expiry. Otherwise, you won’t receive a payout.","-1587076792":"If you select \"Put\", you’ll earn a payout if the final price is below the strike price at expiry. Otherwise, you won’t receive a payout.","-1482134885":"We calculate this based on the strike price and duration you’ve selected.","-1890561510":"Cut-off time","-565990678":"Your contract will expire on this date (in GMT), based on the End time you’ve selected.","-127118348":"Choose {{contract_type}}","-543478618":"Try checking your spelling or use a different term","-700280380":"Deal cancel. fee","-438655760":"<0>Note: You can close your trade anytime. Be aware of slippage risk.","-1683683754":"Long","-1046859144":"<0>{{title}} You will get a payout if the market price stays {{price_position}} and doesn't touch or cross the barrier. Otherwise, your payout will be zero.","-1815023694":"above the barrier","-1572548510":"Ups & Downs","-71301554":"Ins & Outs","-952298801":"Look Backs","-763273340":"Digits","-461955353":"purchase price","-172348735":"profit","-1624674721":"contract type","-1644154369":"entry spot time","-510792478":"entry spot price","-1974651308":"exit spot time","-1600267387":"exit spot price","-514917720":"barrier","-1072292603":"No Change","-1631669591":"string","-1768939692":"number","-795152863":"green","-1640576332":"blue","-804983649":"yellow","-94281841":"red","-1242470654":"Earned money","-841561409":"Put Spread","-1429914047":"Low","-1893628957":"Open Time","-1896106455":"10 minutes","-999492762":"15 minutes","-1978767852":"30 minutes","-293628675":"1 hour","-385604445":"2 hours","-1965813351":"4 hours","-525321833":"1 day","-1691868913":"Touch/No Touch","-151151292":"Asians","-1048378719":"Reset Call/Reset Put","-1282312809":"High/Low Ticks","-1237186896":"Only Ups/Only Downs","-529846150":"Seconds","-1635771697":"middle","-1529389221":"Histogram","-1819860668":"MACD","-1750896349":"D'Alembert","-102980621":"The Oscar's Grind Strategy is a low-risk positive progression strategy that first appeared in 1965. By using this strategy, the size of your contract will increase after successful trades, but remains unchanged after unsuccessful trades.","-462715374":"Untitled Bot","-2002533437":"Custom function","-215053350":"with:","-1257232389":"Specify a parameter name:","-1885742588":"with: ","-188442606":"function {{ function_name }} {{ function_params }} {{ dummy }}","-313112159":"This block is similar to the one above, except that this returns a value. The returned value can be assigned to a variable of your choice.","-1783320173":"Prematurely returns a value within a function","-1485521724":"Conditional return","-1482801393":"return","-46453136":"get","-1838027177":"first","-1182568049":"Get list item","-1675454867":"This block gives you the value of a specific item in a list, given the position of the item. It can also remove the item from the list.","-381501912":"This block creates a list of items from an existing list, using specific item positions.","-426766796":"Get sub-list","-1679267387":"in list {{ input_list }} find {{ first_or_last }} occurence of item {{ input_value }}","-2087996855":"This block gives you the position of an item in a given list.","-422008824":"Checks if a given list is empty","-1343887675":"This block checks if a given list is empty. It returns “True” if the list is empty, “False” if otherwise.","-1548407578":"length of {{ input_list }}","-1786976254":"This block gives you the total number of items in a given list.","-2113424060":"create list with item {{ input_item }} repeated {{ number }} times","-1955149944":"Repeat an item","-434887204":"set","-197957473":"as","-851591741":"Set list item","-1874774866":"ascending","-1457178757":"Sorts the items in a given list","-350986785":"Sort list","-324118987":"make text from list","-155065324":"This block creates a list from a given string of text, splitting it with the given delimiter. It can also join items in a list into a string of text.","-459051222":"Create list from text","-977241741":"List Statement","-451425933":"{{ break_or_continue }} of loop","-323735484":"continue with next iteration","-1592513697":"Break out/continue","-713658317":"for each item {{ variable }} in list {{ input_list }}","-1825658540":"Iterates through a given list","-952264826":"repeat {{ number }} times","-887757135":"Repeat (2)","-1608672233":"This block is similar to the block above, except that the number of times it repeats is determined by a given variable.","-533154446":"Repeat (1)","-1059826179":"while","-1893063293":"until","-279445533":"Repeat While/Until","-1003706492":"User-defined variable","-359097473":"set {{ variable }} to {{ value }}","-1588521055":"Sets variable value","-980448436":"Set variable","-1538570345":"Get the last trade information and result, then trade again.","-222725327":"Here is where you can decide if your bot should continue trading.","-1638446329":"Result is {{ win_or_loss }}","-1968029988":"Last trade result","-1588406981":"You can check the result of the last trade with this block.","-1459154781":"Contract Details: {{ contract_detail }}","-1652241017":"Reads a selected property from contract details list","-985351204":"Trade again","-2082345383":"These blocks transfer control to the Purchase conditions block.","-172574065":"This block will transfer the control back to the Purchase conditions block, enabling you to purchase another contract.","-403103225":"restart","-837044282":"Ask Price {{ contract_type }}","-1033917049":"This block returns the purchase price for the selected trade type.","-1863737684":"2. Purchase conditions","-228133740":"Specify contract type and purchase conditions.","-1098726473":"This block is mandatory. Only one copy of this block is allowed. You can place the Purchase block (see below) here as well as conditional blocks to define your purchase conditions.","-1777988407":"Payout {{ contract_type }}","-511116341":"This block returns the potential payout for the selected trade type","-1943211857":"Potential payout","-813464969":"buy","-53668380":"True if active contract can be sold before expiration at current market price","-43337012":"Sell profit/loss","-2112866691":"Returns the profit/loss from selling at market price","-2132417588":"This block gives you the potential profit or loss if you decide to sell your contract.","-1360483055":"set {{ variable }} to Bollinger Bands {{ band_type }} {{ dummy }}","-20542296":"Calculates Bollinger Bands (BB) from a list with a period","-1951109427":"Bollinger Bands (BB)","-857226052":"BB is a technical analysis indicator that’s commonly used by traders. The idea behind BB is that the market price stays within the upper and lower bands for 95% of the time. The bands are the standard deviations of the market price, while the line in the middle is a simple moving average line. If the price reaches either the upper or lower band, there’s a possibility of a trend reversal.","-325196350":"set {{ variable }} to Bollinger Bands Array {{ band_type }} {{ dummy }}","-199689794":"Similar to BB. This block gives you a choice of returning the values of either the lower band, higher band, or the SMA line in the middle.","-920690791":"Calculates Exponential Moving Average (EMA) from a list with a period","-960641587":"EMA is a type of moving average that places more significance on the most recent data points. It’s also known as the exponentially weighted moving average. EMA is different from SMA in that it reacts more significantly to recent price changes.","-1557584784":"set {{ variable }} to Exponential Moving Average Array {{ dummy }}","-32333344":"Calculates Moving Average Convergence Divergence (MACD) from a list","-628573413":"MACD is calculated by subtracting the long-term EMA (26 periods) from the short-term EMA (12 periods). If the short-term EMA is greater or lower than the long-term EMA than there’s a possibility of a trend reversal.","-1133676960":"Fast EMA Period {{ input_number }}","-883166598":"Period {{ input_period }}","-450311772":"set {{ variable }} to Relative Strength Index {{ dummy }}","-1861493523":"Calculates Relative Strength Index (RSI) list from a list of values with a period","-880048629":"Calculates Simple Moving Average (SMA) from a list with a period","-1150972084":"Market direction","-276935417":"This block is used to determine if the market price moves in the selected direction or not. It gives you a value of “True” or “False”.","-764931948":"in candle list get # from end {{ input_number }}","-924607337":"Returns the last digit of the latest tick","-560033550":"Returns the list of last digits of 1000 recent tick values","-74062476":"Make a List of {{ candle_property }} values in candles list with interval: {{ candle_interval_type }}","-1556495906":"Returns a list of specific values from a candle list according to selected time interval","-166816850":"Create a list of candle values (1)","-1261436901":"Candles List","-1174859923":"Read the selected candle value","-1972165119":"Read candle value (1)","-1956100732":"You can use this block to analyze the ticks, regardless of your trades","-443243232":"The content of this block is called on every tick. Place this block outside of any root block.","-641399277":"Last Tick","-1628954567":"Returns the value of the last tick","-1332756793":"This block gives you the value of the last tick.","-2134440920":"Last Tick String","-1466340125":"Tick value","-467913286":"Tick value Description","-785831237":"This block gives you a list of the last 1000 tick values.","-1546430304":"Tick List String Description","-1788626968":"Returns \"True\" if the given candle is black","-436010611":"Make a list of {{ candle_property }} values from candles list {{ candle_list }}","-1384340453":"Returns a list of specific values from a given candle list","-584859539":"Create a list of candle values (2)","-2010558323":"Read {{ candle_property }} value in candle {{ input_candle }}","-2846417":"This block gives you the selected candle value.","-1587644990":"Read candle value (2)","-1202212732":"This block returns account balance","-1737837036":"Account balance","-1963883840":"Put your blocks in here to prevent them from being removed","-1284013334":"Use this block if you want some instructions to be ignored when your bot runs. Instructions within this block won’t be executed.","-1217253851":"Log","-1987568069":"Warn","-104925654":"Console","-1956819233":"This block displays messages in the developer's console with an input that can be either a string of text, a number, boolean, or an array of data.","-1450461842":"Load block from URL: {{ input_url }}","-1088614441":"Loads blocks from URL","-1747943728":"Loads from URL","-2105753391":"Notify Telegram {{ dummy }} Access Token: {{ input_access_token }} Chat ID: {{ input_chat_id }} Message: {{ input_message }}","-1008209188":"Sends a message to Telegram","-1218671372":"Displays a notification and optionally play selected sound","-2099284639":"This block gives you the total profit/loss of your trading strategy since your bot started running. You can reset this by clicking “Clear stats” on the Transaction Stats window, or by refreshing this page in your browser.","-683825404":"Total Profit String","-718220730":"Total Profit String Description","-1861858493":"Number of runs","-264195345":"Returns the number of runs","-303451917":"This block gives you the total number of times your bot has run. You can reset this by clicking “Clear stats” on the Transaction Stats window, or by refreshing this page in your browser.","-2132861129":"Conversion Helper Block","-74095551":"Seconds Since Epoch","-15528039":"Returns the number of seconds since January 1st, 1970","-729807788":"This block returns the number of seconds since January 1st, 1970.","-1370107306":"{{ dummy }} {{ stack_input }} Run after {{ number }} second(s)","-558838192":"Delayed run","-1975250999":"This block converts the number of seconds since the Unix Epoch (1 January 1970) into a string of text representing the date and time.","-702370957":"Convert to date/time","-982729677":"Convert to timestamp","-311268215":"This block converts a string of text that represents the date and time into seconds since the Unix Epoch (1 January 1970). The time and time zone offset are optional. Example: 2019-01-01 21:03:45 GMT+0800 will be converted to 1546347825.","-1797602591":"Stop Loss: {{ currency }} {{ stop_loss }}","-1374685318":"Your contract is closed automatically when your loss is more than or equals to this amount. This block can only be used with the multipliers trade type.","-1214929127":"Stop loss must be a positive number.","-780745489":"If the contract type is “Both”, then the Purchase Conditions should include both Rise and Fall using the “Conditional Block\"","-2142851225":"Multiplier trade options","-625636913":"Amount must be a positive number.","-1466383897":"Duration: {{ duration_unit }} {{ duration_value }}","-440702280":"Trade options","-1193894978":"Define your trade options such as duration and stake. Some options are only applicable for certain trade types.","-46523443":"Duration value is not allowed. To run the bot, please enter a value between {{min}} to {{max}}.","-1483427522":"Trade Type: {{ trade_type_category }} > {{ trade_type }}","-323348124":"1. Trade parameters","-1671903503":"Run once at start:","-783173909":"Trade options:","-376956832":"Here is where you define the parameters of your contract.","-1244007240":"if {{ condition }} then","-1577206704":"else if","-33796979":"true","-1434883449":"This is a single block that returns a boolean value, either true or false.","-1946404450":"Compares two values","-979918560":"This block converts the boolean value (true or false) to its opposite.","-2047257743":"Null","-1274387519":"Performs selected logic operation","-766386234":"This block performs the \"AND\" or the \"OR\" logic operation.","-790995537":"test {{ condition }}","-1860211657":"if false {{ return_value }}","-1643760249":"This block tests if a given value is true or false and returns “True” or “False” accordingly.","-1551875333":"Test value","-52486882":"Arithmetical operations","-1010436425":"This block adds the given number to the selected variable","-999773703":"Change variable","-1272091683":"Mathematical constants","-1396629894":"constrain {{ number }} low {{ low_number }} high {{ high_number }}","-425224412":"This block constrains a given number so that it is within a set range.","-2072551067":"Constrain within a range","-43523220":"remainder of {{ number1 }} ÷ {{ number2 }}","-1291857083":"Returns the remainder after a division","-592154850":"Remainder after division","-736665095":"Returns the remainder after the division of the given numbers.","-1266992960":"Math Number Description","-77191651":"{{ number }} is {{ type }}","-817881230":"even","-142319891":"odd","-1000789681":"whole","-1735674752":"Test a number","-1017805068":"This block tests a given number according to the selection and it returns a value of “True” or “False”. Available options: Even, Odd, Prime, Whole, Positive, Negative, Divisible","-1858332062":"Number","-1053492479":"Enter an integer or fractional number into this block. Please use `.` as a decimal separator for fractional numbers.","-927097011":"sum","-1653202295":"max","-1555878023":"average","-1748351061":"mode","-992067330":"Aggregate operations","-1691561447":"This block gives you a random fraction between 0.0 to 1.0","-523625686":"Random fraction number","-933024508":"Rounds a given number to an integer","-1656927862":"This block rounds a given number according to the selection: round, round up, round down.","-1495304618":"absolute","-61210477":"Operations on a given number","-181644914":"This block performs the selected operations to a given number.","-840732999":"to {{ variable }} append text {{ input_text }}","-1469497908":"Appends a given text to a variable","-1851366276":"Text Append","-1666316828":"Appends a given text to a variable.","-1902332770":"Transform {{ input_text }} to {{ transform_type }}","-1489004405":"Title Case","-904432685":"Changes text case accordingly","-882381096":"letter #","-1027605069":"letter # from end","-2066990284":"random letter","-337089610":"in text {{ input_text1 }} find {{ first_or_last }} occurence of text {{ input_text2 }}","-1966694141":"Searches through a string of text for a specific occurrence of a given character or word, and returns the position.","-697543841":"Text join","-141160667":"length of {{ input_text }}","-1133072029":"Text String Length","-1109723338":"print {{ input_text }}","-736668830":"Print","-1821552998":"trim spaces from {{ side }} of {{ input_text }}","-801766026":"right side","-474779821":"Trims spaces","-1687036846":"Download block","-1266781295":"Expand","-894560707":"function","-1867119688":"Duplicate","-610728049":"Rearrange Vertically","-2033146714":"Collapse All Blocks","-958601558":"Delete Block","-1193267384":"Detach Block","-1750478127":"New variable name","-1061878051":"Y","-2047029150":"Unable to load the block file.","-1410769167":"Target must be an XML file","-609157479":"This URL is already loaded","-241945454":"Proposals are not ready","-1087890592":"Maximum loss amount reached","-1030545878":"You are rate limited for: {{ message_type }}, retrying in {{ delay }}s (ID: {{ request }})","-490766438":"You are disconnected, retrying in {{ delay }}s","-1389975609":"unknown","-1900515692":"Duration must be a positive integer","-245297595":"Please login","-1445046468":"Given candle is not valid","-1891622945":"{{hourPast}}h ago","-1919680487":"workspace","-1703118772":"The {{block_type}} block is misplaced from {{missing_space}}.","-1785726890":"purchase conditions","-538215347":"Net deposits","-280147477":"All transactions","-137444201":"Buy","-130601012":"Please select duration","-232254547":"Custom","-1577570698":"Start date","-1251526905":"Last 7 days","-1904030160":"Transaction performed by (App ID: {{app_id}})","-513103225":"Transaction time","-2066666313":"Credit/Debit","-1981004241":"Sell time","-600828210":"Indicative profit/loss","-706219815":"Indicative price","-3423966":"Take profit<0 />Stop loss","-2082644096":"Current stake","-1131753095":"The {{trade_type_name}} contract details aren't currently available. We're working on making them available soon.","-360975483":"You've made no transactions of this type during this period.","-1226595254":"Turbos","-922253974":"Rise/Fall","-1361254291":"Higher/Lower","-335816381":"Ends In/Ends Out","-1789807039":"Asian Up/Asian Down","-330437517":"Matches/Differs","-657360193":"Over/Under","-558031309":"High Tick/Low Tick","-123659792":"Vanillas","-1669418686":"AUD/CAD","-1548588249":"AUD/CHF","-1552890620":"AUD/JPY","-681231560":"AUD/PLN","-64938413":"AUD/USD","-1430522808":"EUR/AUD","-2020477069":"EUR/CAD","-1201853162":"EUR/CHF","-1197505739":"EUR/JPY","-405907358":"EUR/USD","-1536293064":"NZD/JPY","-79700881":"NZD/USD","-642323838":"USD/CAD","-428199705":"USD/CHF","-424108348":"USD/JPY","-548255282":"USD/NOK","-1834131208":"USD/PLN","-524302516":"Silver/USD","-764731776":"Platinum/USD","-853582174":"France 40","-1096386695":"UK 100","-617646862":"Germany 40","-2077690248":"Japan 225","-512194910":"US Tech 100","-381746202":"US 500","-1935463381":"Swiss 20","-1941767726":"Euro 50","-1925264914":"Volatility 25 Index","-708579504":"Volatility 50 Index","-975255670":"Volatility 75 Index","-1736314513":"Crash 300 Index","-342128411":"Crash 500 Index","-9704319":"Crash 1000 Index","-465860988":"Bull Market Index","-390528194":"Step Index","-280323742":"EUR Basket","-563812039":"Volatility 10 (1s) Index","-764111252":"Volatility 100 (1s) Index","-816110209":"Volatility 150 (1s) Index","-1374309449":"Volatility 200 (1s) Index","-1288044380":"Volatility 250 (1s) Index","-1164978320":"Jump 10 Index","-575272887":"BCH/USD","-295406873":"BTC/ETH","-1713556301":"ZMR/USD","-2046638412":"XRP/USD","-1263203461":"BTC/USD","-1112522776":"DSH/USD","-460689370":"LTC/USD","-1715390759":"I want to do this later","-2092611555":"Sorry, this app is unavailable in your current location.","-1488537825":"If you have an account, log in to continue.","-1603581277":"minutes","-1714959941":"This chart display is not ideal for tick contracts","-1254554534":"Please change the chart duration to tick for a better trading experience.","-1658230823":"Contract was sold for <0 />.","-1905867404":"Contract cancelled"} \ No newline at end of file diff --git a/packages/translations/src/translations/ach.json b/packages/translations/src/translations/ach.json index d20e87637bc3..1d8def962f8d 100644 --- a/packages/translations/src/translations/ach.json +++ b/packages/translations/src/translations/ach.json @@ -176,6 +176,7 @@ "211224838": "crwdns1259231:0crwdne1259231:0", "211461880": "crwdns1259233:0crwdne1259233:0", "211847965": "crwdns1259235:0crwdne1259235:0", + "212871086": "crwdns3030607:0crwdne3030607:0", "216650710": "crwdns1259237:0crwdne1259237:0", "217403651": "crwdns1259239:0crwdne1259239:0", "217504255": "crwdns1259241:0crwdne1259241:0", @@ -861,7 +862,6 @@ "958430760": "crwdns1260379:0crwdne1260379:0", "959031082": "crwdns1260381:0{{ variable }}crwdnd1260381:0{{ dropdown }}crwdnd1260381:0{{ dummy }}crwdne1260381:0", "960201789": "crwdns1260383:0crwdne1260383:0", - "961178214": "crwdns1822823:0crwdne1822823:0", "961266215": "crwdns2154499:0crwdne2154499:0", "961327418": "crwdns2101773:0crwdne2101773:0", "961692401": "crwdns1260385:0crwdne1260385:0", @@ -964,6 +964,7 @@ "1061308507": "crwdns1260549:0{{ contract_type }}crwdne1260549:0", "1062423382": "crwdns2925317:0crwdne2925317:0", "1062536855": "crwdns1260553:0crwdne1260553:0", + "1065275078": "crwdns3030609:0crwdne3030609:0", "1065353420": "crwdns1260555:0crwdne1260555:0", "1065498209": "crwdns1260557:0crwdne1260557:0", "1066235879": "crwdns1855985:0crwdne1855985:0", @@ -3576,6 +3577,7 @@ "-127118348": "crwdns117896:0{{contract_type}}crwdne117896:0", "-543478618": "crwdns117898:0crwdne117898:0", "-700280380": "crwdns89646:0crwdne89646:0", + "-438655760": "crwdns3030605:0crwdne3030605:0", "-1683683754": "crwdns2738429:0crwdne2738429:0", "-1046859144": "crwdns2738441:0{{title}}crwdnd2738441:0{{price_position}}crwdne2738441:0", "-1815023694": "crwdns2738443:0crwdne2738443:0", diff --git a/packages/translations/src/translations/ar.json b/packages/translations/src/translations/ar.json index 62827a2f82e9..81ce78d84070 100644 --- a/packages/translations/src/translations/ar.json +++ b/packages/translations/src/translations/ar.json @@ -176,6 +176,7 @@ "211224838": "الاستثمار", "211461880": "من السهل تخمين الأسماء والألقاب الشائعة", "211847965": "<0>تفاصيلك الشخصية غير مكتملة. يرجى الانتقال إلى إعدادات حسابك وإكمال تفاصيلك الشخصية لتمكين عمليات السحب.", + "212871086": "قريبًا على الهاتف المحمول", "216650710": "أنت تستخدم حساب تجريبي", "217403651": "سانت فينسنت والغرينادين", "217504255": "تم تقديم التقييم المالي بنجاح", @@ -861,7 +862,6 @@ "958430760": "في الداخل/ في الخارج", "959031082": "اضبط {{ variable }} على مصفوفة MACD {{ dropdown }} {{ dummy }}", "960201789": "3. شروط البيع", - "961178214": "يمكنك شراء عقد واحد فقط في كل مرة", "961266215": "140+", "961327418": "جهاز الكمبيوتر الخاص بي", "961692401": "بوت", @@ -964,6 +964,7 @@ "1061308507": "شراء {{ contract_type }}", "1062423382": "استكشف أدلة الفيديو والأسئلة الشائعة لإنشاء الروبوت الخاص بك في علامة تبويب البرامج التعليمية.", "1062536855": "يساوي", + "1065275078": "cTrader متاح فقط على سطح المكتب في الوقت الحالي.", "1065353420": "110+", "1065498209": "التكرار (1)", "1066235879": "يتطلب تحويل الأموال إنشاء حساب ثانٍ.", @@ -3576,6 +3577,7 @@ "-127118348": "اختر {{contract_type}}", "-543478618": "حاول التدقيق الإملائي أو استخدم مصطلحًا مختلفًا", "-700280380": "إلغاء الصفقة. رسوم", + "-438655760": "<0>ملاحظة: يمكنك إغلاق تداولك في أي وقت. كن على دراية بمخاطر الانزلاق.", "-1683683754": "طويل", "-1046859144": "<0>{{title}} ستحصل على عائد إذا بقي سعر السوق {{price_position}} ولم يلمس الحاجز أو يتجاوزه. وإلا، سيكون العائد الخاص بك صفرًا.", "-1815023694": "فوق الحاجز", diff --git a/packages/translations/src/translations/bn.json b/packages/translations/src/translations/bn.json index fd182af1b637..7f7bc1a78cb0 100644 --- a/packages/translations/src/translations/bn.json +++ b/packages/translations/src/translations/bn.json @@ -176,6 +176,7 @@ "211224838": "ইনভেস্টমেন্ট", "211461880": "প্রচলিত নাম এবং উপাধি অনুমান করা সহজ", "211847965": "আপনার <0>ব্যক্তিগত বিবরণ অসম্পূর্ণ। অনুগ্রহ করে আপনার অ্যাকাউন্ট সেটিংসে যান এবং তোলার জন্য আপনার ব্যক্তিগত বিবরণ সম্পূর্ণ করুন।", + "212871086": "মোবাইলে শীঘ্রই আসছে", "216650710": "আপনি একটি ডেমো অ্যাকাউন্ট ব্যবহার করছেন", "217403651": "সেন্ট ভিনসেন্ট ও গ্রেনাডাইনস", "217504255": "আর্থিক মূল্যায়ন সফলভাবে জমা", @@ -861,7 +862,6 @@ "958430760": "ইন/আউট", "959031082": "এমএসিডি অ্যারে {{ dropdown }} {{ dummy }}এ {{ variable }} সেট করুন", "960201789": "3। বিক্রয় শর্তাবলী", - "961178214": "আপনি শুধুমাত্র একটি সময়ে একটি চুক্তি ক্রয় করতে পারেন", "961266215": "140+", "961327418": "আমার কম্পিউটার", "961692401": "বট", @@ -964,6 +964,7 @@ "1061308507": "ক্রয় {{ contract_type }}", "1062423382": "টিউটোরিয়াল ট্যাবে আপনার বট তৈরি করতে ভিডিও গাইড এবং প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী এক্সপ্লোর করুন।", "1062536855": "সমান", + "1065275078": "cTrader এখন শুধুমাত্র ডেস্কটপে উপলব্ধ।", "1065353420": "110+", "1065498209": "পুনরাবৃত্তি (1)", "1066235879": "তহবিল স্থানান্তর করার জন্য আপনাকে একটি দ্বিতীয় অ্যাকাউন্ট তৈরি করতে হবে।", @@ -3576,6 +3577,7 @@ "-127118348": "{{contract_type}}বেছে নিন", "-543478618": "আপনার বানান পরীক্ষা করার চেষ্টা করুন অথবা একটি ভিন্ন শব্দ ব্যবহার করুন", "-700280380": "চুক্তি বাতিল। ফি", + "-438655760": "<0>দ্রষ্টব্য: আপনি যে কোন সময় আপনার ট্রেড বন্ধ করতে পারবেন। স্লিপেজ ঝুঁকি সম্পর্কে সচেতন থাকুন।", "-1683683754": "লং", "-1046859144": "<0>{{title}} বাজার মূল্য {{price_position}} থাকে এবং বাধা স্পর্শ বা অতিক্রম না করলে আপনি একটি অর্থ প্রদান পাবেন। অন্যথায়, আপনার পরিশোধ শূন্য হবে।", "-1815023694": "বাধা উপরে", diff --git a/packages/translations/src/translations/de.json b/packages/translations/src/translations/de.json index b499383c6cad..64c8565651c4 100644 --- a/packages/translations/src/translations/de.json +++ b/packages/translations/src/translations/de.json @@ -176,6 +176,7 @@ "211224838": "Investition", "211461880": "Gebräuchliche Vor- und Nachnamen sind leicht zu erraten", "211847965": "Ihre <0>persönlichen Daten sind unvollständig. Bitte gehen Sie zu Ihren Kontoeinstellungen und geben Sie Ihre persönlichen Daten ein, um Auszahlungen zu ermöglichen.", + "212871086": "Demnächst auch auf dem Handy", "216650710": "Sie verwenden ein Demo-Konto", "217403651": "St. Vincent und die Grenadinen", "217504255": "Finanzielle Bewertung erfolgreich eingereicht", @@ -861,7 +862,6 @@ "958430760": "Ein/Aus", "959031082": "setze {{ variable }} auf MACD Array {{ dropdown }} {{ dummy }}", "960201789": "3. Verkaufsbedingungen", - "961178214": "Sie können jeweils nur einen Vertrag kaufen", "961266215": "140+", "961327418": "Mein Computer", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "Kauf {{ contract_type }}", "1062423382": "Erkunden Sie die Videoanleitungen und FAQs zum Erstellen Ihres Bots auf der Registerkarte „Tutorials“.", "1062536855": "Entspricht", + "1065275078": "cTrader ist vorerst nur auf dem Desktop verfügbar.", "1065353420": "110+", "1065498209": "Iterieren (1)", "1066235879": "Für die Überweisung von Geldern müssen Sie ein zweites Konto erstellen.", @@ -3576,6 +3577,7 @@ "-127118348": "Wähle {{contract_type}}", "-543478618": "Versuchen Sie, Ihre Rechtschreibung zu überprüfen oder verwenden Sie einen anderen Begriff", "-700280380": "Deal stornieren. Gebühr", + "-438655760": "<0>Hinweis: Sie können Ihren Handel jederzeit schließen. Seien Sie sich des Slippage-Risikos bewusst.", "-1683683754": "Lang", "-1046859144": "<0>{{title}} Sie erhalten eine Auszahlung, wenn der Marktpreis {{price_position}} bleibt und die Barriere nicht berührt oder überschreitet. Andernfalls ist Ihre Auszahlung gleich null.", "-1815023694": "über der Barriere", diff --git a/packages/translations/src/translations/es.json b/packages/translations/src/translations/es.json index db988b404e86..3d9e7d1fb43a 100644 --- a/packages/translations/src/translations/es.json +++ b/packages/translations/src/translations/es.json @@ -176,6 +176,7 @@ "211224838": "Inversión", "211461880": "Los nombres y apellidos comunes son fáciles de adivinar", "211847965": "Sus <0>datos personales están incompletos. Vaya a la configuración de su cuenta y complete sus datos personales para permitir retiros.", + "212871086": "Próximamente en móvil", "216650710": "Está usando una cuenta demo", "217403651": "San Vicente y las Granadinas", "217504255": "Su evaluación financiera fue enviada correctamente", @@ -861,7 +862,6 @@ "958430760": "Dentro/Fuera", "959031082": "ajustar {{ variable }} al Conjunto de MACD {{ dropdown }} {{ dummy }}", "960201789": "3. Condiciones de venta", - "961178214": "Solo puedes adquirir un contrato a la vez", "961266215": "140+", "961327418": "Mi ordenador", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "Compre {{ contract_type }}", "1062423382": "Consulta las videoguías y las preguntas frecuentes para crear tu bot en la pestaña de tutoriales.", "1062536855": "Iguales", + "1065275078": "Por ahora, cTrader sólo está disponible en el escritorio.", "1065353420": "+110", "1065498209": "Iterar (1)", "1066235879": "La transferencia de fondos requerirá que cree una segunda cuenta.", @@ -3576,6 +3577,7 @@ "-127118348": "Elija {{contract_type}}", "-543478618": "Intente revisar su ortografía o use un término diferente", "-700280380": "Cuota de cancelación de contrato", + "-438655760": "<0>Nota: Puede cerrar su operación en cualquier momento. Sea consciente del riesgo de deslizamiento.", "-1683683754": "Larga", "-1046859144": "<0>{{title}} Recibirá un pago si el precio de mercado se mantiene en {{price_position}} y no toca ni cruza la barrera. De lo contrario, el pago será cero.", "-1815023694": "encima de la barrera", diff --git a/packages/translations/src/translations/fr.json b/packages/translations/src/translations/fr.json index a08f64d774cb..204e5f4973b3 100644 --- a/packages/translations/src/translations/fr.json +++ b/packages/translations/src/translations/fr.json @@ -176,6 +176,7 @@ "211224838": "Investissement", "211461880": "Les noms et prénoms communs sont faciles à deviner", "211847965": "Vos <0>données personnelles sont incomplètes. Veuillez vous rendre dans les paramètres de votre compte et compléter vos données personnelles pour permettre les retraits.", + "212871086": "Bientôt sur mobile", "216650710": "Vous utilisez un compte démo", "217403651": "Saint-Vincent-et-les Grenadines", "217504255": "Évaluation financière soumise avec succès", @@ -861,7 +862,6 @@ "958430760": "Zone In/Out", "959031082": "définir {{ variable }} sur MACD Array {{ dropdown }} {{ dummy }}", "960201789": "3. Conditions de vente", - "961178214": "Vous ne pouvez acheter qu'un seul contrat à la fois", "961266215": "140+", "961327418": "Mon ordinateur", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "Acheter {{ contract_type }}", "1062423382": "Explorez les guides vidéo et les FAQ pour créer votre bot dans l'onglet Tutoriels.", "1062536855": "Égaux", + "1065275078": "Pour l'instant, cTrader n'est disponible que sur ordinateur.", "1065353420": "110 et +", "1065498209": "Itérer (1)", "1066235879": "Pour transférer des fonds, vous devrez créer un deuxième compte.", @@ -3576,6 +3577,7 @@ "-127118348": "Choisir {{contract_type}}", "-543478618": "Essayez de vérifier votre orthographe ou utilisez un terme différent", "-700280380": "Offre annulation. coût", + "-438655760": "<0>Remarque : vous pouvez clôturer votre transaction à tout moment. Soyez conscient du risque de slippage.", "-1683683754": "Long", "-1046859144": "<0>{{title}} Vous recevrez un paiement si le prix du marché reste à {{price_position}} sans toucher ni franchir la barrière. Sinon, votre paiement sera nul.", "-1815023694": "au-dessus de la barrière", diff --git a/packages/translations/src/translations/id.json b/packages/translations/src/translations/id.json index b2864aa9556f..3db994d862b9 100644 --- a/packages/translations/src/translations/id.json +++ b/packages/translations/src/translations/id.json @@ -176,6 +176,7 @@ "211224838": "Investasi", "211461880": "Nama umum dan nama keluarga mudah ditebak", "211847965": "<0>Detail pribadi Anda tidak lengkap. Kunjungi bagian pengaturan akun dan lengkapi data pribadi Anda untuk mengaktifkan penarikan.", + "212871086": "Coming soon on mobile", "216650710": "Anda sedang menggunakan akun demo", "217403651": "Saint Vincent & Grenadines", "217504255": "Penilaian keuangan telah berhasil dikirim", @@ -861,7 +862,6 @@ "958430760": "In/Out", "959031082": "set {{ variable }} ke MACD Array {{ dropdown }} {{ dummy }}", "960201789": "3. Kondisi jual", - "961178214": "Anda hanya dapat membeli satu kontrak dalam satu waktu", "961266215": "140+", "961327418": "Komputer saya", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "Beli {{ contract_type }}", "1062423382": "Jelajahi panduan video dan FAQ untuk membangun bot Anda di tab tutorial.", "1062536855": "Equal", + "1065275078": "cTrader is only available on desktop for now.", "1065353420": "110+", "1065498209": "Pengulangan (1)", "1066235879": "Mentransfer dana akan mengharuskan Anda untuk membuat akun kedua.", @@ -3576,6 +3577,7 @@ "-127118348": "Pilih {{contract_type}}", "-543478618": "Coba periksa ejaan atau gunakan istilah yang berbeda", "-700280380": "Biaya pembatalan", + "-438655760": "<0>Note: You can close your trade anytime. Be aware of slippage risk.", "-1683683754": "Panjang", "-1046859144": "<0>{{title}} Anda akan mendapatkan pembayaran jika harga pasar tetap {{price_position}} dan tidak menyentuh atau melewati penghalang. Jika tidak, pembayaran Anda akan menjadi nol.", "-1815023694": "di atas penghalang", diff --git a/packages/translations/src/translations/it.json b/packages/translations/src/translations/it.json index ae729fc632de..9ea2c734976c 100644 --- a/packages/translations/src/translations/it.json +++ b/packages/translations/src/translations/it.json @@ -176,6 +176,7 @@ "211224838": "Investimento", "211461880": "Nomi e cognomi abituali sono semplici da indovinare", "211847965": "I<0>dati personali sono incompleti. Vai sulle impostazioni del conto e completa i dati personali per abilitare i prelievi.", + "212871086": "Prossimamente su mobile", "216650710": "Stai usando un conto demo", "217403651": "Saint Vincent e Grenadine", "217504255": "Valutazione finanziaria inviata correttamente", @@ -861,7 +862,6 @@ "958430760": "Dentro/Fuori", "959031082": "imposta {{ variable }} per serie di MACD {{ dropdown }} {{ dummy }}", "960201789": "3. Condizioni di vendita", - "961178214": "Puoi acquistare un solo contratto alla volta", "961266215": "140+", "961327418": "Il mio computer", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "Acquista {{ contract_type }}", "1062423382": "Esplora le guide video e le domande frequenti per creare il tuo bot nella scheda dei tutorial.", "1062536855": "Equivale a", + "1065275078": "Per ora cTrader è disponibile solo su desktop.", "1065353420": "+110", "1065498209": "Esegui iterazione (1)", "1066235879": "Il trasferimento di fondi richiederà la creazione di un secondo conto.", @@ -3576,6 +3577,7 @@ "-127118348": "Scegli {{contract_type}}", "-543478618": "Correggi eventuali errori ortografici o usa un termine diverso", "-700280380": "Commissione per la cancellazione", + "-438655760": "<0>Nota: può chiudere l'operazione in qualsiasi momento. Sia consapevole del rischio di slippage.", "-1683683754": "A lungo", "-1046859144": "<0>{{title}} Riceverai un pagamento se il prezzo di mercato rimane {{price_position}} e non tocca o supera la barriera. Altrimenti, il tuo pagamento sarà pari a zero.", "-1815023694": "al di sopra della barriera", diff --git a/packages/translations/src/translations/ko.json b/packages/translations/src/translations/ko.json index cf4a4007e214..911b6e45212a 100644 --- a/packages/translations/src/translations/ko.json +++ b/packages/translations/src/translations/ko.json @@ -176,6 +176,7 @@ "211224838": "투자", "211461880": "일반적인 이름과 성은 추측하기 쉽습니다", "211847965": "귀하의 <0>개인 세부정보가 아직 완료되지 않았습니다. 인출을 활성화시키기 위해 귀하의 계좌 설정으로 가셔서 인적 세부정보를 완료해주시기 바랍니다.", + "212871086": "모바일에서 곧 출시 예정", "216650710": "귀하꼐서는 데모 계좌를 사용하고 계십니다", "217403651": "세인트빈센트 그레나딘", "217504255": "재무 평가가 성공적으로 제출되었습니다", @@ -861,7 +862,6 @@ "958430760": "인/아웃", "959031082": "{{ variable }} 을 이동평균 확산지수 배열로 설정하기 {{ dropdown }} {{ dummy }}", "960201789": "3. 판매 조건", - "961178214": "한번에 하나의 계약만 구매할 수 있습니다", "961266215": "140+", "961327418": "내 컴퓨터", "961692401": "봇", @@ -964,6 +964,7 @@ "1061308507": "구매 {{ contract_type }}", "1062423382": "튜토리얼 탭에서 동영상 가이드와 FAQ를 살펴보고 봇을 구축하세요.", "1062536855": "일치", + "1065275078": "cTrader는 현재 데스크톱에서만 사용할 수 있습니다.", "1065353420": "110+", "1065498209": "반복 (1)", "1066235879": "자금을 이체하기 위해서는 두 번째 계정을 만들어야 합니다.", @@ -3576,6 +3577,7 @@ "-127118348": "{{contract_type}} 선택", "-543478618": "철자를 확인해보시거나 다른 단어를 사용해보세요", "-700280380": "거래 취소 비용", + "-438655760": "<0>참고: 언제든지 거래를 청산할 수 있습니다. 슬리피지 위험에 유의하세요.", "-1683683754": "롱", "-1046859144": "<0>{{title}} 시장 가격이 {{price_position}} 에 머무르며 장벽에 닿지 않을 경우 또는 넘지 않을 경우에 지급금을 받습니다. 만약 그렇지 못한 경우에는 귀하의 지급금은 없습니다.", "-1815023694": "장벽을 넘어서", diff --git a/packages/translations/src/translations/pl.json b/packages/translations/src/translations/pl.json index 31b5eadef2ac..3b74f6df9a5d 100644 --- a/packages/translations/src/translations/pl.json +++ b/packages/translations/src/translations/pl.json @@ -176,6 +176,7 @@ "211224838": "Inwestowanie", "211461880": "Popularne imiona i nazwiska można łatwo przewidzieć", "211847965": "Twoje <0>dane osobowe są niekompletne. Przejdź do ustawień swojego konta i uzupełnić swoje dane osobowe, aby umożliwić wypłaty.", + "212871086": "Wkrótce na urządzeniach mobilnych", "216650710": "Używasz konta demo", "217403651": "Saint Vincent i Grenadyny", "217504255": "Ocena finansowa została przesłana pomyślnie", @@ -861,7 +862,6 @@ "958430760": "W/poza", "959031082": "ustaw {{ variable }} na ciąg MACD {{ dropdown }} {{ dummy }}", "960201789": "3. Warunki sprzedaży", - "961178214": "Możesz zakupić tylko jedną umowę na raz", "961266215": "140+", "961327418": "Mój komputer", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "Kup {{ contract_type }}", "1062423382": "Zapoznaj się z przewodnikami wideo i często zadawanymi pytaniami, aby zbudować swojego bota w zakładce samouczków.", "1062536855": "Równa", + "1065275078": "cTrader jest na razie dostępny tylko na komputerach stacjonarnych.", "1065353420": "Ponad 110", "1065498209": "Iteracja (1)", "1066235879": "Przelew środków będzie wymagał utworzenia drugiego konta.", @@ -3576,6 +3577,7 @@ "-127118348": "Wybierz {{contract_type}}", "-543478618": "Sprawdź pisownię lub użyj innego pojęcia", "-700280380": "Anulowanie transakcji. Opłata", + "-438655760": "<0>Uwaga: Mogą Państwo zamknąć transakcję w dowolnym momencie. Proszę pamiętać o ryzyku poślizgu.", "-1683683754": "Długie", "-1046859144": "<0>{{title}} Otrzymasz wypłatę, jeśli cena rynkowa pozostanie {{price_position}} i nie dotknie ani nie przekroczy bariery. W przeciwnym razie Twoja wypłata wyniesie zero.", "-1815023694": "powyżej bariery", diff --git a/packages/translations/src/translations/pt.json b/packages/translations/src/translations/pt.json index 9e9cae1189a3..b832f9012304 100644 --- a/packages/translations/src/translations/pt.json +++ b/packages/translations/src/translations/pt.json @@ -176,6 +176,7 @@ "211224838": "Investimento", "211461880": "Nomes e sobrenomes comuns são fáceis de adivinhar", "211847965": "Os seus <0>dados pessoais estão incompletos. Aceda às definições da sua conta e complete os seus dados pessoais para permitir levantamentos.", + "212871086": "Brevemente no telemóvel", "216650710": "Está a utilizar uma conta demo", "217403651": "São Vicente e Granadinas", "217504255": "Avaliação financeira enviada com sucesso", @@ -861,7 +862,6 @@ "958430760": "Dentro/Fora", "959031082": "definir {{ variable }} como MACD Array {{ dropdown }} {{ dummy }}", "960201789": "3. Condições de venda", - "961178214": "Só é permitida a compra de um contrato por vez", "961266215": "+140", "961327418": "Meu computador", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "Comprar {{ contract_type }}", "1062423382": "Explore os guias de vídeo e as perguntas frequentes para construir o seu bot no separador tutoriais.", "1062536855": "Igual", + "1065275078": "Para já, a cTrader só está disponível no ambiente de trabalho.", "1065353420": "+110", "1065498209": "Iterar (1)", "1066235879": "A transferência de fundos exigirá que crie uma segunda conta.", @@ -3576,6 +3577,7 @@ "-127118348": "Escolha {{contract_type}}", "-543478618": "Tente verificar a grafia ou utilizar um termo diferente", "-700280380": "Taxa de cancelamento da transação", + "-438655760": "<0>Nota: Pode fechar a sua transação em qualquer altura. Esteja ciente do risco de derrapagem.", "-1683683754": "Longo", "-1046859144": "<0>{{title}} Você receberá um pagamento se o preço de mercado permanecer igual a {{price_position}} e não tocar ou cruzar a barreira. Caso contrário, seu pagamento será zero.", "-1815023694": "acima da barreira", diff --git a/packages/translations/src/translations/ru.json b/packages/translations/src/translations/ru.json index 08b223e51045..af7a6aa315b7 100644 --- a/packages/translations/src/translations/ru.json +++ b/packages/translations/src/translations/ru.json @@ -176,6 +176,7 @@ "211224838": "Инвестиции", "211461880": "Распространенные имена и фамилии угадать несложно", "211847965": "Отсутствуют некоторые <0>личные данные. Пожалуйста, перейдите в настройки счета и введите недостающие личные данные, чтобы активировать вывод средств.", + "212871086": "Скоро на мобильных", "216650710": "Вы находитесь на демо-счете", "217403651": "Сент-Винсент и Гренадины", "217504255": "Финансовая оценка успешно сдана", @@ -861,7 +862,6 @@ "958430760": "Внутри/Вне", "959031082": "установить {{ variable }} в массив MACD {{ dropdown }} {{ dummy }}", "960201789": "3. Условия продажи", - "961178214": "Одновременно можно купить только один контракт", "961266215": "140+", "961327418": "Мой компьютер", "961692401": "Бот", @@ -964,6 +964,7 @@ "1061308507": "Купить {{ contract_type }}", "1062423382": "Изучите видеоинструкции и ответы на часто задаваемые вопросы по созданию своего бота на вкладке «Учебные пособия».", "1062536855": "Равно", + "1065275078": "Пока что cTrader доступен только на настольном компьютере.", "1065353420": "110+", "1065498209": "Повторить (1)", "1066235879": "Для перевода средств вам нужно открыть второй счет.", @@ -3576,6 +3577,7 @@ "-127118348": "Выберите {{contract_type}}", "-543478618": "Проверьте орфографию или используйте другой термин", "-700280380": "Комиссия за отмену", + "-438655760": "<0>Примечание: Вы можете закрыть свою сделку в любое время. Помните о риске проскальзывания.", "-1683683754": "Длинная позиция", "-1046859144": "<0>{{title}} Вы получите выплату, если рыночная цена останется на уровне {{price_position}} и не пересечет барьер. В противном случае ваша выплата будет равна нулю.", "-1815023694": "над барьером", diff --git a/packages/translations/src/translations/si.json b/packages/translations/src/translations/si.json index 409f972caece..1152cdacd445 100644 --- a/packages/translations/src/translations/si.json +++ b/packages/translations/src/translations/si.json @@ -176,6 +176,7 @@ "211224838": "ආයෝජනය​", "211461880": "පොදු නම් සහ වාසගම අනුමාන කිරීම පහසුය", "211847965": "ඔබේ <0>පුද්ගලික විස්තර අසම්පූර්ණයි. මුදල් ආපසු ගැනීම සබල කිරීමට කරුණාකර ඔබේ ගිණුම් සැකසීම් වෙත ගොස් ඔබේ පුද්ගලික තොරතුරු සම්පූර්ණ කරන්න.", + "212871086": "ජංගම දුරකථනයෙන් ඉක්මනින් පැමිණේ", "216650710": "ඔබ ආදර්ශන ගිණුමක් භාවිතා කරයි", "217403651": "St. Vincent & Grenadines", "217504255": "මූල්‍ය තක්සේරුව සාර්ථකව ඉදිරිපත් කර ඇත", @@ -521,9 +522,9 @@ "597089493": "ඔබේ ගිවිසුම​ කල් ඉකුත් වීමට පෙර විකිණීමට ඔබට තීරණය කළ හැකි ස්ථානය මෙන්න. මෙම වාරණයේ එක් පිටපතක් පමණක් අවසර ඇත.", "597481571": "වියාචනය", "597707115": "ඔබේ ගනුදෙනු අත්දැකීම් ගැන අපට කියන්න.", - "599469202": "තත්පර{{secondPast}}කට කලින්", + "599469202": "තත්පර {{secondPast}}කට කලින්", "602278674": "අනන්‍යතාවය තහවුරු කරන්න", - "603849445": "වැඩ වර්ජන මිල", + "603849445": "වර්ජන මිල", "603849863": "<0>අතරතුර / තෙක් නැවත කරන්න සඳහා සොයන්න, බ්ලොක් එක වැඩබිම් ප්‍රදේශයට එක් කිරීමට + අයිකනය ක්ලික් කරන්න.", "603899222": "වත්මන් ස්ථානයට දුර", "606240547": "- ස්වාභාවික ලඝු-සටහන", @@ -861,13 +862,12 @@ "958430760": "In/Out", "959031082": "{{ variable }} MACD Array ලෙස සකසන්න {{ dropdown }} {{ dummy }}", "960201789": "3. කොන්දේසි විකුණන්න", - "961178214": "ඔබට එකවර මිලදී ගත හැක්කේ එක් ගිවිසුමක් පමණි", "961266215": "140+", "961327418": "මගේ පරිගණකය", "961692401": "බොට්", "966457287": "{{ variable }} to Exponential Moving Average {{ dummy }}", "968576099": "Up/Down", - "969987233": "පිටවීමේ ස්ථානය සහ පහළ බාධක අතර වෙනසට සමානුපාතිකව, පිටවීමේ ස්ථානය පහළ සහ ඉහළ බාධක අතර තිබේ නම් උපරිම ගෙවීමක් දක්වා දිනා ගන්න.", + "969987233": "පිටවීමේ ස්ථානය සහ පහළ බාධකය අතර වෙනසට සමානුපාතිකව, පිටවීමේ ස්ථානය පහළ සහ ඉහළ බාධක අතර පිහිටයි නම් උපරිම ගෙවීමක් දිනා ගන්න.", "970915884": "AN", "975668699": "මම {{company}} හි <0>නියම සහ කොන්දේසි තහවුරු කර පිළිගනිමි", "975950139": "පදිංචි රට", @@ -964,8 +964,9 @@ "1061308507": "{{ contract_type }} මිලදී ගැනීම", "1062423382": "නිබන්ධන ටැබය තුළ ඔබේ බොට් තැනීමට වීඩියෝ මාර්ගෝපදේශ සහ නිතර අසන පැන ගවේෂණය කරන්න.", "1062536855": "සමාන", + "1065275078": "CTrader දැනට ඩෙස්ක්ටොප් එකේ පමණක් ලබා ගත හැකිය.", "1065353420": "110+", - "1065498209": "නැවත කරන්න (1)", + "1065498209": "පුනරුච්චාරණය කරන්න (1)", "1066235879": "අරමුදල් මාරු කිරීම ඔබට දෙවන ගිණුමක් නිර්මාණය කිරීමට අවශ්‍ය වේ.", "1066459293": "4.3. ඔබේ පැමිණිල්ල පිළිගැනීම", "1069347258": "ඔබ භාවිතා කළ සත්‍යාපන සබැඳිය අවලංගු හෝ කල් ඉකුත් වී ඇත. කරුණාකර නව එකක් ඉල්ලා සිටින්න.", @@ -981,48 +982,48 @@ "1082406746": "කරුණාකර අවම වශයෙන් {{min_stake}} ක් වත් කොටස් ප්‍රමාණයක් ඇතුළත් කරන්න.", "1083781009": "බදු හඳුනාගැනීමේ අංකය*", "1083826534": "කොටස සක්‍රීය කරන්න", - "1086118495": "ට්රේඩර්ස් හබ්", - "1087112394": "කොන්ත්රාත්තුවට ඇතුළු වීමට පෙර ඔබ වැඩ වර්ජන මිල තෝරා ගත යුතුය.", - "1088031284": "වැඩ වර්ජනය:", - "1088138125": "ටික් {{current_tick}} - ", + "1086118495": "ගනුදෙනුකරුවන්ගේ මධ්‍යස්ථානය", + "1087112394": "ඔබ ගිවිසුමට ඇතුල් වීමට පෙර වැඩ වර්ජන මිල තෝරාගත යුතුය.", + "1088031284": "වර්ජනය:", + "1088138125": "ස​ලකුණ {{current_tick}} - ", "1089085289": "ජංගම දුරකථන අංකය", "1089436811": "නිබන්ධන", "1089687322": "ඔබගේ වත්මන් බොට් එක නවත්වන්න?", "1090041864": "{{block_type}} කොටස අනිවාර්ය වන අතර මකා දැමීමට හෝ/අබල කිරීමට නොහැක.", - "1095295626": "<0>• පැමිණිල්ල පිළිගත හැකිද සහ නීතියට අනුකූලද යන්න මූල්ය සේවා සඳහා බේරුම්කරු විසින් තීරණය කරනු ඇත.", + "1095295626": "<0>•පැමිණිල්ල පිළිගත හැකිද සහ නීතියට අනුකූලද යන්න මූල්‍ය සේවා සඳහා බේරුම්කරු විසින් තීරණය කරනු ඇත.", "1096078516": "අපි ඔබගේ ලේඛන සමාලෝචනය කර දින 3 ක් ඇතුළත එහි තත්ත්වය ඔබට දැනුම් දෙන්නෙමු.", - "1096175323": "ඔබට ඩෙරිව් ගිණුමක් අවශ්ය වේ", - "1098147569": "සමාගමක වෙළඳ භාණ්ඩ හෝ කොටස් මිලදී ගන්න.", - "1098622295": "“i” 1 අගයෙන් ආරම්භ වන අතර එය සෑම පුනරාවර්තනයකදීම 2 කින් වැඩි වේ. “i” 12 අගයට ළඟා වන තෙක් ලූපය පුනරාවර්තනය වනු ඇත, පසුව ලූපය අවසන් වේ.", + "1096175323": "ඔබට Deriv ගිණුමක් අවශ්‍ය වේ", + "1098147569": "සමාගමක වෙළඳ භාණ්ඩ හෝ කොටස් මිලදී ගැනීම.", + "1098622295": "\"i\" 1 හි අගයෙන් ආරම්භ වන අතර, එය සෑම පුනරාවර්තනයකදීම 2 කින් වැඩි වේ. \"i\" අගය 12 දක්වා ළඟා වන තෙක් ලූපය නැවත නැවතත් සිදුවනු ඇත, පසුව ලූපය අවසන් වේ.", "1100133959": "ජාතික හැඳුනුම්පත", - "1100870148": "ගිණුම් සීමාවන් සහ ඒවා අදාළ වන ආකාරය පිළිබඳ වැඩිදුර දැන ගැනීමට කරුණාකර <0>උපකාරක මධ්යස්ථානය වෙත යන්න.", - "1101560682": "අඩුක්කුව", + "1100870148": "ගිණුම් සීමාවන් සහ ඒවා අදාළ වන ආකාරය පිළිබඳ වැඩිදුර දැන ගැනීමට කරුණාකර <0>උදවු මධ්‍යස්ථානය වෙත යන්න.", + "1101560682": "ගොඩගැසීම", "1101712085": "මිල මිලදී ගන්න", - "1102420931": "ඊළඟට, ඔබේ රියදුරු බලපත්රයේ ඉදිරිපස සහ පිටුපස උඩුගත කරන්න.", - "1102995654": "ඝාතීය වෙනස්වන සාමාන්යය ගණනය (EMA) කාල පරිච්ඡේදයක් සමග වටිනාකම් ලැයිස්තුවෙන් ලැයිස්තුව", + "1102420931": "ඊළඟට, ඔබේ රියදුරු බලපත්‍රයේ ඉදිරිපස සහ පසුපස උඩුගත කරන්න.", + "1102995654": "කාල සීමාවක් සහිත අගයන් ලැයිස්තුවකින් ඝාතීය චලනය වන සාමාන්‍ය (EMA) ලැයිස්තුව ගණනය කරයි", "1103309514": "ඉලක්කය", - "1103452171": "අපගේ වෙබ් අඩවියේ ඔබට වඩා හොඳ අත්දැකීමක් සහ පුද්ගලාරෝපිත අන්තර්ගතයක් ලබා දීමට කුකීස් අපට උපකාරී වේ.", - "1104912023": "සත්යාපනය සඳහා ඉතිරිව ඇත", - "1107474660": "ලිපිනය සනාථ කිරීම", - "1107555942": "කිරීමට", + "1103452171": "අපගේ වෙබ් අඩවියේ ඔබට වඩා හොඳ අත්දැකීමක් සහ පෞද්ගලීකරණය කළ අන්තර්ගතයක් ලබා දීමට කුකීස් අපට උදවු කරයි.", + "1104912023": "සත්‍යාපනය පොරොත්තුවෙන්", + "1107474660": "ලිපිනය පිළිබඳ සාක්ෂි ඉදිරිපත් කරන්න", + "1107555942": "දක්වා", "1109217274": "සාර්ථකත්වය!", - "1110102997": "ප්රකාශය", + "1110102997": "ප්‍රකාශය", "1112582372": "විරාම කාල සීමාව", "1113119682": "මෙම කොටස ඔබට ඉටිපන්දම් ලැයිස්තුවකින් තෝරාගත් ඉටිපන්දම් අගය ලබා දෙයි.", "1113292761": "8MB ට වඩා අඩුය", - "1114679006": "සරල උපාය මාර්ගයක් භාවිතා කරමින් ඔබ ඔබේ බොට් එක සාර්ථකව නිර්මාණය කර ඇත.", - "1117281935": "කොන්දේසි විකුණන්න (අත්යවශ්ය නොවේ)", - "1117863275": "ආරක්ෂාව සහ ආරක්ෂාව", - "1118294625": "{{exclusion_end}}වන තෙක් අපගේ වෙබ් අඩවියේ වෙළඳාම් කිරීමෙන් ඔබව ඉවත් කිරීමට ඔබ තෝරාගෙන ඇත. ඔබේ ස්වයං බැහැර කිරීමේ කාලයෙන් පසු වෙළඳාමක් හෝ තැන්පතුවක් කිරීමට ඔබට නොහැකි නම්, කරුණාකර සජීවී කතාබස් හරහා අප හා සම්බන්ධ වන්න.", - "1119887091": "සත්යාපනය", + "1114679006": "ඔබ සරල උපාය මාර්ගයක් භාවිතා කරමින් ඔබේ බොට් සාර්ථකව නිර්මාණය කර ඇත.", + "1117281935": "කොන්දේසි විකුණන්න (විකල්ප)", + "1117863275": "ආරක්ෂාව සහ සුරක්ෂිත බව", + "1118294625": "ඔබ {{exclusion_end}} දක්වා අපගේ වෙබ් අඩවියේ ගනුදෙනු වලින් ඔබව බැහැර කිරීමට තෝරාගෙන ඇත. ඔබේ ස්වයං-බැහැර කාලයෙන් පසු ඔබට ගනුදෙනුවක් හෝ තැන්පතුවක් කිරීමට නොහැකි නම්, කරුණාකර සජීවී කතාබස් හරහා අප හා සම්බන්ධ වන්න.", + "1119887091": "සත්‍යාපනය", "1119986999": "ඔබගේ ලිපිනය සනාථ කිරීම සාර්ථකව ඉදිරිපත් කරන ලදී", "1120985361": "නියමයන් සහ කොන්දේසි යාවත්කාලීන කරන ලදි", - "1122910860": "කරුණාකර ඔබේ <0>මූල්ය තක්සේරුව සම්පූර්ණ කරන්න.", - "1123927492": "ඔබ ඔබේ ගිණුම් මුදල් තෝරාගෙන නැත", + "1122910860": "කරුණාකර ඔබේ <0>මූල්‍ය තක්සේරුව සම්පූර්ණ කරන්න.", + "1123927492": "ඔබ ඔබේ ගිණුමේ මුදල් තෝරාගෙන නැත", "1125090693": "අංකයක් විය යුතුය", - "1126075317": "ලාබුවාන් මූල්ය සේවා අධිකාරිය විසින් නියාමනය කරනු ලබන ඩෙරිව් (එෆ්එක්ස්) ලිමිටඩ් යටතේ ඔබේ ඩෙරිව් එම්ටී 5 <0>{{account_type_name}} එස්ටීපී ගිණුම එක් කරන්න (බලපත්ර අංක. MB/18/0024).", - "1126934455": "ටෝකන් නාමයේ දිග අක්ෂර 2 ත් 32 ත් අතර විය යුතුය.", - "1127149819": "වග බලා ගන්න§", + "1126075317": "Labuan Financial Services Authority විසින් නියාමනය කරන ලද Deriv (FX) Ltd යටතේ ඔබේ Deriv MT5 <0>{{account_type_name}} STP ගිණුම එක් කරන්න (බලපත්‍ර අංකය. MB/18/0024).", + "1126934455": "සංකේත නාමයේ දිග අක්ෂර 2 සහ 32 අතර විය යුතුය.", + "1127149819": "සහතික කරගන්න§", "1127224297": "බාධා කිරීම ගැන කණගාටුයි", "1128139358": "පසුගිය මාස 12 තුළ ඔබ CFD ගනුදෙනු කීයක් තබා තිබේද?", "1128321947": "සියල්ල පැහැදිලි කරන්න", @@ -1168,7 +1169,7 @@ "1286094280": "ආපසු ගන්න", "1286507651": "අනන්යතා සත්යාපන තිරය වසා දමන්න", "1288965214": "විදේශ ගමන් බලපත්රය", - "1289146554": "බ්රිතාන්ය වර්ජින් දූපත් මූල්ය සේවා කොමිෂන් සභාව", + "1289146554": "British Virgin Islands Financial Services Commission", "1289646209": "ආන්තික ඇමතුම", "1290525720": "උදාහරණය: ", "1291887623": "ඩිජිටල් විකල්ප වෙළඳ සංඛ්යාතය", @@ -2531,7 +2532,7 @@ "-982095728": "ලබා ගන්න", "-1277942366": "මුළු වත්කම්", "-1255879419": "Trader's Hub", - "-493788773": "යුරෝපා සංගම් නොවන", + "-493788773": "යුරෝපීය සංගමයේ නොවන", "-673837884": "EU", "-230566990": "ඔබ ඉදිරිපත් කළ පහත සඳහන් ලියකියවිලි අපගේ චෙක්පත් සමත් නොවීය:", "-846812148": "ලිපිනය සනාථ කිරීම.", @@ -2644,7 +2645,7 @@ "-80329359": "<0>සටහන: ඔබේ තැන්පතුව සැකසීමට පටන් ගත් විට ඔබට විද්යුත් තැපෑලක් ලැබෙනු ඇත.", "-2108344100": "ගුප්තකේතන මුදල් මිලදී ගැනීමට ක්රමයක් සොයනවාද? <0>ෆියට් ඔන්රැම්ප් උත්සාහ කරන්න.", "-598073640": "ටෙතර් ගැන (එතීරියම්)", - "-275902914": "එතීරියම් මත ටෙතර් (EUSDT)", + "-275902914": "Ethereum හි Tether (eUSDT)", "-1188009792": "ඔම්නි ස්ථරය මත ටෙතර් (USDT)", "-1239329687": "ටෙතර් මුලින් නිර්මාණය කරන ලද්දේ බිට්කොයින් ජාලය එහි ප්රවාහන ප්රොටෝකෝලය ලෙස භාවිතා කිරීම සඳහා වන අතර විශේෂයෙන් ඔම්නි ස්ථරය සාම්ප්රදායික මුදල් ගනුදෙනු කිරීමට ඉඩ දීම සඳහා ය.", "-314177745": "අවාසනාවකට මෙන්, අපගේ සේවාදායකය පහළ වූ බැවින් අපට ලිපිනය ලබා ගත නොහැක. කරුණාකර ලිපිනය නැවත පූරණය කිරීමට Refresh ක්ලික් කරන්න හෝ පසුව නැවත උත්සාහ කරන්න.", @@ -2903,12 +2904,12 @@ "-1393876942": "ඔබේ බොට්:", "-767342552": "ඔබගේ බොට් නම ඇතුළත් කරන්න, ඔබේ පරිගණකයේ හෝ ගූගල් ඩ්රයිව් හි සුරැකීමට තෝරා ගන්න, පහර දෙන්න ", "-1372891985": "සුරකින්න.", - "-1003476709": "එකතු කිරීමක් ලෙස සුරකින්න", - "-636521735": "උපාය සුරකින්න", + "-1003476709": "එකතුවක් ලෙස සුරකින්න", + "-636521735": "උපාය මාර්ගය සුරකින්න", "-1953880747": "මගේ බොට් එක නවත්වන්න", "-1899230001": "වර්තමාන බොට් එක නැවැත්වීමෙන් ඔබ විසින් නිර්මාණය කරන ලද ඉක්මන් උපායමාර්ගය වැඩපොලට පටවනු ඇත.", "-2131847097": "ඕනෑම විවෘත කොන්ත්රාත්තු නැරඹිය හැකිය ", - "-563774117": "උපකරණ පුවරුව", + "-563774117": "පාලක පුවරුව", "-939764287": "ප්‍රස්තාර​", "-683790172": "දැන්, උපාය මාර්ගය පරීක්ෂා කිරීම සඳහා <0>බොට් ධාවනය කරන්න.", "-1127164953": "ආයුබෝවන්! ඉක්මන් සංචාරයක් සඳහා <0>ආරම්භ කරන්න ඔබන්න.", @@ -3300,8 +3301,8 @@ "-705682181": "මෝල්ටාව", "-409563066": "නියාමකයා", "-1302404116": "උපරිම ලීවරය", - "-2098459063": "බ්රිතාන්ය වර්ජින් දූපත්", - "-1510474851": "බ්රිතාන්ය වර්ජින් දූපත් මූල්ය සේවා කොමිෂන් සභාව (බලපත්ර අංක. කෑම/එල්/18/1114)", + "-2098459063": "බ්‍රිතාන්‍ය වර්ජින් දූපත්", + "-1510474851": "British Virgin Islands Financial Services Commission (බලපත්‍ර අංකය. SIBA/L/18/1114)", "-761250329": "ලාබුවාන් මූල්ය සේවා අධිකාරිය (බලපත්ර අංක. MB/18/0024)", "-1264604378": "1:1000 දක්වා", "-1686150678": "1:100 දක්වා", @@ -3321,7 +3322,7 @@ "-1587894214": "අවශ්ය සත්යාපන ගැන.", "-466784048": "නියාමක/EDR", "-1920034143": "කෘත්‍රිම​ දර්ශක, බාස්කට් සහ ව්‍යුත්පන්න FX", - "-1326848138": "බ්රිතාන්ය වර්ජින් දූපත් මූල්ය සේවා කොමිෂන් සභාව (බලපත්ර අංකය. කෑම/එල්/18/1114)", + "-1326848138": "British Virgin Islands Financial Services Commission (බලපත්‍ර අංකය. SIBA/L/18/1114)", "-777580328": "Forex, කොටස්, කොටස් දර්ශක, වෙළඳ භාණ්ඩ සහ ක්‍රිප්ටෝ මුදල්", "-1372141447": "කෙළින්ම සැකසීම", "-1969608084": "Forex සහ ක්‍රිප්ටෝ මුදල්", @@ -3377,13 +3378,13 @@ "-2015785957": "CFD {{demo_title}} ගිණුම් සසඳන්න", "-673424733": "ආදර්ශන ගිණුම", "-1986258847": "සේවාදායකය නඩත්තු ආරම්භ 01:00 GMT සෑම ඉරිදා, මෙම ක්රියාවලිය දක්වා ගත විය හැක 2 සම්පූර්ණ කිරීමට පැය. මෙම කාලය තුළ සේවය කඩාකප්පල් විය හැකිය.", - "-1199152768": "කරුණාකර අපගේ වෙනත් වේදිකා ගවේෂණය කරන්න.", - "-205020823": "{{platform_name_trader}}ගවේෂණය කරන්න", - "-1982499699": "{{platform_name_dbot}}ගවේෂණය කරන්න", - "-1567989247": "ඔබගේ අනන්යතාවය සහ ලිපිනය පිළිබඳ සාක්ෂි ඉදිරිපත් කරන්න", - "-184453418": "ඔබගේ {{platform}} මුරපදය ඇතුළත් කරන්න", - "-393388362": "අපි ඔබේ ලේඛන සමාලෝචනය කරනවා. මෙය දින 1 සිට 3 දක්වා ගත විය යුතුය.", - "-790488576": "මුරපදය අමතකද?", + "-1199152768": "කරුණාකර අපගේ අනෙක් වේදිකා ගවේෂණය කරන්න.", + "-205020823": "{{platform_name_trader}} ගවේෂණය කරන්න", + "-1982499699": "{{platform_name_dbot}} ගවේෂණය කරන්න", + "-1567989247": "ඔබේ අනන්‍යතාවය සහ ලිපිනය පිළිබඳ සාක්ෂි ඉදිරිපත් කරන්න", + "-184453418": "ඔබේ {{platform}} මුරපදය ඇතුළත් කරන්න", + "-393388362": "අපි ඔබේ ලේඛන සමාලෝචනය කරමින් සිටිමු. මේ සඳහා දින 1 සිට 3 දක්වා කාලයක් ගත විය හැක.", + "-790488576": "මුරපදය අමතක ද?", "-535365199": "{{platform_name}} {{account}} ගිණුමක් එක් කිරීමට ඔබගේ {{platform}} මුරපදය ඇතුළත් කරන්න.", "-2057918502": "ඉඟිය: ඔබ ඔබේ Deriv මුරපදය ඇතුළත් කර ඇති අතර එය ඔබගේ {{platform}} මුරපදයට වඩා වෙනස් වේ.", "-1936102840": "සුභ පැතුම්, ඔබ ඔබේ {{category}} <0>{{platform}} <1>{{type}} {{jurisdiction_selected_shortcode}} ගිණුම සාර්ථකව නිර්මාණය කර ඇත. ", @@ -3426,7 +3427,7 @@ "-1793894323": "ආයෝජක මුරපදය සාදන්න හෝ නැවත සකස් කරන්න", "-21438174": "ඩෙරිව් (එස්වීජී) එල්එල්සී (සමාගම අංක 273 එල්එල්සී 2020) යටතේ ඔබේ ඩෙරිව් සී ට්රේඩර් ගිණුම එක් කරන්න.", "-2026018074": "Deriv (SVG) LLC (සමාගම් අංක 273 LLC 2020) යටතේ ඔබේ Deriv MT5 <0>{{account_type_name}} ගිණුම එක් කරන්න.", - "-162320753": "බ්‍රිතාන්‍ය වර්ජින් දූපත් මූල්‍ය සේවා කොමිෂන් සභාව විසින් නියාමනය කරනු ලබන Deriv (BVI) Ltd යටතේ ඔබේ Deriv MT5 <0>{{account_type_name}} ගිණුම එක් කරන්න (බලපත්‍ර අංක. SIBA/L/18/1114).", + "-162320753": "British Virgin Islands Financial Services Commission විසින් නියාමනය කරනු ලබන Deriv (BVI) Ltd යටතේ ඔබේ Deriv MT5 <0>{{account_type_name}} ගිණුම එක් කරන්න (බලපත්‍ර අංක. SIBA/L/18/1114).", "-271828350": "Deriv MT5 Financial වෙතින් බොහෝ දේ ලබා ගන්න", "-2125860351": "ඔබේ Deriv MT5 CFD ගිණුම සඳහා අධිකරණ බලයක් තෝරන්න", "-450424792": "සැබෑ Deriv MT5 ගිණුමක් නිර්මාණය කිරීම සඳහා ඔබට Deriv හි සැබෑ ගිණුමක් (ෆියට් මුදල් හෝ ක්‍රිප්ටෝ මුදල්) අවශ්‍ය වේ.", @@ -3544,8 +3545,8 @@ "-1272255095": "පිටවීමේ ස්ථානය බාධකයට හෝ නව බාධකයට සමාන නම් (යළි පිහිටුවීමක් සිදුවුවහොත්), ඔබ ගෙවීම දිනා නොගනී.", "-231957809": "පිටවීමේ ස්ථානය ඉහළ බාධකයට වඩා වැඩි හෝ සමාන නම් උපරිම ගෙවීම් දිනා ගන්න.", "-464144986": "පිටවීමේ ස්ථානය පහළ බාධකයට වඩා අඩු හෝ සමාන නම් උපරිම ගෙවීම් දිනා ගන්න.", - "-1031456093": "පිටවීමේ ස්ථානයේදීම ඉහළ බාධකයක් හා පිටවීමේ ස්ථානයේදීම අතර වෙනස සමානුපාතිකව, පහළ සහ ඉහළ බාධකයක් අතර වේ නම් උපරිම ගෙවීම් දක්වා දිනා ගන්න.", - "-968162707": "පිටවීමේ ස්ථානය ඉහළ හෝ ඉහළ බාධකයට සමාන නම් ගෙවීමක් නොමැත.", + "-1031456093": "ඉහළ බාධක සහ පිටවීමේ ස්ථානය අතර වෙනසට සමානුපාතිකව, පිටවීමේ ස්ථානය පහළ සහ ඉහළ බාධක අතර පිහිටයි නම් උපරිම ගෙවීමක් දිනා ගන්න.", + "-968162707": "පිටවීමේ ස්ථානය ඉහළ බාධකයට ඉහළින් හෝ සමානව පිහිටයි නම් ගෙවීමක් නොලැබේ.", "-299450697": "ඔබ “හයි ටික්” තෝරා ගන්නේ නම්, තෝරාගත් ටික් ඊළඟ කිනිතුල්ලන් පහ අතර ඉහළම නම් ඔබ ගෙවීම දිනා ගනී.", "-705681870": "“ඉහළ-සිට පහත්” කොන්ත්රාත්තුව මිලදී ගැනීමෙන්, කොන්ත්රාත්තුවේ කාල සීමාවට වඩා ඉහළ සහ පහත් අතර වෙනස ඔබ ගුණකය දිනා ගනී.", "-420387848": "ගිවිසුම් කාලය තුළ වෙළඳපලට ළඟා වූ වැඩිම අගය ​'high' නම් වෙයි.", @@ -3576,6 +3577,7 @@ "-127118348": "{{contract_type}} තෝරන්න", "-543478618": "ඔබේ අක්ෂර වින්යාසය පරීක්ෂා කිරීමට උත්සාහ කරන්න හෝ වෙනත් යෙදුමක් භාවිතා කරන්න", "-700280380": "ගනුදෙනුව අවලංගු කරන්න. ගාස්තු", + "-438655760": "<0>සටහන: ඔබට ඕනෑම වේලාවක ඔබේ වෙළඳාම වසා දැමිය හැකිය. ලිස්සා යාමේ අවදානම ගැන සැලකිලිමත් වන්න.", "-1683683754": "දිග", "-1046859144": "<0>{{title}} වෙළඳපල මිල {{price_position}} ක් පවතින්නේ නම් සහ බාධකය ස්පර්ශ නොකරන්නේ නම් ඔබට ගෙවීමක් ලැබෙනු ඇත. එසේ නොමැතිනම්, ඔබගේ ගෙවීම ශුන්ය වනු ඇත.", "-1815023694": "බාධකයට ඉහළින්", @@ -3660,12 +3662,12 @@ "-713658317": "එක් එක් අයිතමය සඳහා {{ variable }} ලැයිස්තුවේ {{ input_list }}", "-1825658540": "දී ඇති ලැයිස්තුවක් හරහා ඉදිරියට යයි", "-952264826": "{{ number }} වතාවක් පුනරාවර්තනය කරන්න", - "-887757135": "නැවත (2)", + "-887757135": "(2) නැවත කරන්න", "-1608672233": "මෙම බ්ලොක් එක ඉහත බ්ලොක් එකට සමාන වේ, එය පුනරාවර්තනය වන වාර ගණන තීරණය වන්නේ දී ඇති විචල්යයකින් ය.", - "-533154446": "නැවත කරන්න (1)", - "-1059826179": "අතර", + "-533154446": "(1) නැවත කරන්න", + "-1059826179": "අතරතුර", "-1893063293": "තෙක්", - "-279445533": "නැවත නැවත සිටින/තෙක්", + "-279445533": "Repeat While/Until", "-1003706492": "පරිශීලක-නිර්වචනය කළ විචල්‍යය", "-359097473": "{{ variable }} {{ value }} ලෙස සකසන්න", "-1588521055": "විචල්‍ය අගය සකසයි", @@ -3745,9 +3747,9 @@ "-1217253851": "ලොග්", "-1987568069": "අනතුරු ඇඟවීම", "-104925654": "කොන්සෝලය", - "-1956819233": "මෙම වාරණය මඟින් සංවර්ධකයාගේ කොන්සෝලය තුළ පෙළ වැලක් විය හැකි ආදානයකින් පණිවිඩ පෙන්වයි, අංකයක්, බූලියන්, හෝ දත්ත රාශියක්.", - "-1450461842": "URL වෙතින් බ්ලොක් පැටවීම: {{ input_url }}", - "-1088614441": "URL වෙතින් කුට්ටි පටවනු ලැබේ", + "-1956819233": "මෙම කොටස සංවර්ධකයාගේ කොන්සෝලය තුළ පාඨ පෙළක්, අංකයක්, බූලීය හෝ දත්ත මාලාවක් විය හැකි ආදානයක් සමඟ පණිවුඩ​ පෙන්වයි.", + "-1450461842": "URL වෙතින් කොටස් පූරණය කරයි: {{ input_url }}", + "-1088614441": "URL වෙතින් කොටස් පූරණය කරයි", "-1747943728": "URL වෙතින් පූරණය වේ", "-2105753391": "ටෙලිග්රාම් {{ dummy }} ප්රවේශ ටෝකනය දැනුම් දෙන්න: {{ input_access_token }} චැට් හැඳුනුම්පත: {{ input_chat_id }} පණිවිඩය: {{ input_message }}", "-1008209188": "Telegram වෙත පණිවුඩ​යක් යවයි", @@ -3760,8 +3762,8 @@ "-303451917": "මෙම කොටස මඟින් ඔබේ බොට් එක ධාවනය කර ඇති මුළු වාර ගණන ඔබට ලබා දෙයි. ගනුදෙනු සංඛ්යාලේඛන කවුළුවේ “සංඛ්යාලේඛන හිස් කරන්න” ක්ලික් කිරීමෙන් හෝ ඔබගේ බ්රව්සරයේ මෙම පිටුව ප්රබෝධමත් කිරීමෙන් ඔබට මෙය නැවත සැකසිය හැකිය.", "-2132861129": "පරිවර්තනය උදව් කලාප", "-74095551": "කාලාරම්භයේ සිට තත්පර", - "-15528039": "1970 ජනවාරි 1 වන දින සිට තත්පර ගණන නැවත පැමිණේ", - "-729807788": "මෙම කොටස 1970 ජනවාරි 1 සිට තත්පර ගණන නැවත ලබා දෙයි.", + "-15528039": "1970 ජනවාරි 1 වැනිදා සිට තත්පර ගණන ආපසු ලබා දෙයි", + "-729807788": "මෙම කොටස 1970 ජනවාරි 1 සිට තත්ත්පර ගණන ආපසු ලබා දෙයි.", "-1370107306": "{{ dummy }} {{ stack_input }} තත්පර {{ number }} කට පසු ධාවනය කරන්න", "-558838192": "ප්‍රමාද වූ ධාවනය", "-1975250999": "මෙම වාරණ Unix එපෝච් සිට තත්පර ගණන පරිවර්තනය (1 ජනවාරි 1970) දිනය හා වේලාව නියෝජනය පෙළ වැලක් බවට.", @@ -3792,8 +3794,8 @@ "-2047257743": "අභිශුන්‍ය", "-1274387519": "තෝරා ගත් තාර්කික මෙහෙයුම සිදු කරයි", "-766386234": "මෙම කොටස \"AND\" හෝ \"OR\" තාර්කික මෙහෙයුම සිදු කරයි.", - "-790995537": "ටෙස්ට් {{ condition }}", - "-1860211657": "බොරු නම් {{ return_value }}", + "-790995537": "{{ condition }} පරීක්ෂා කරන්න", + "-1860211657": "{{ return_value }} අසත්‍ය නම්", "-1643760249": "දී ඇති වටිනාකමක් සත්ය හෝ අසත්යද යන්න පරීක්ෂා කර ඒ අනුව “සත්ය” හෝ “අසත්ය” ප්රතිලාභ ලබා දෙයි.", "-1551875333": "පරීක්ෂණ අගය", "-52486882": "අංක ගණිතමය මෙහෙයුම්", diff --git a/packages/translations/src/translations/th.json b/packages/translations/src/translations/th.json index 7820b3af4bdc..7dc3a9e80841 100644 --- a/packages/translations/src/translations/th.json +++ b/packages/translations/src/translations/th.json @@ -176,6 +176,7 @@ "211224838": "การลงทุน", "211461880": "ชื่อและนามสกุลทั่วไปนั้นสามารถคาดเดาได้ง่าย", "211847965": "<0>รายละเอียดส่วนบุคคล ของคุณไม่สมบูรณ์ โปรดไปที่การตั้งค่าบัญชีของคุณและกรอกรายละเอียดส่วนบุคคลเพื่อเปิดใช้งานการถอนเงิน", + "212871086": "จะมาถึงเร็วๆ นี้บนมือถือ", "216650710": "คุณกำลังใช้บัญชีทดลอง", "217403651": "เซนต์วินเซนต์และเกรนาดีนส์", "217504255": "ส่งรายละเอียดการประเมินข้อมูลทางการเงินเรียบร้อยแล้ว", @@ -861,7 +862,6 @@ "958430760": "เข้า/ออก", "959031082": "กำหนด {{ variable }} เป็น MACD Array {{ dropdown }} {{ dummy }}", "960201789": "3. เงื่อนไขการขาย", - "961178214": "คุณสามารถซื้อสัญญาได้ครั้งละหนึ่งสัญญาเท่านั้น", "961266215": "140+", "961327418": "เครื่องคอมพิวเตอร์ของฉัน", "961692401": "บอท", @@ -964,6 +964,7 @@ "1061308507": "ซื้อ {{ contract_type }}", "1062423382": "ดูวิดีโอแนะนำและคำถามที่พบบ่อยเพื่อสร้างบอทของคุณได้ในแท็บบทช่วยสอน", "1062536855": "เท่ากับ", + "1065275078": "cTrader มีให้บริการบนเดสก์ท็อปสำหรับตอนนี้เท่านั้น", "1065353420": "110+", "1065498209": "กระบวนการทำซ้ำ (1)", "1066235879": "ในการที่จะสามารถทำการโอนเงินได้ คุณจะต้องสร้างบัญชีที่สอง", @@ -3576,6 +3577,7 @@ "-127118348": "เลือก {{contract_type}}", "-543478618": "ลองตรวจสอบการสะกดของคุณหรือใช้คำอื่น", "-700280380": "ค่าธรรมเนียมการยกเลิกดีลข้อตกลง", + "-438655760": "<0>หมายเหตุ: คุณสามารถปิดการซื้อขายของคุณได้ตลอดเวลา โปรดตระหนักถึงความเสี่ยงการคลาดเคลื่อนราคา", "-1683683754": "ซื้อ", "-1046859144": "<0>{{title}} คุณจะได้รับเงินผลตอบแทนถ้าราคาตลาดอยู่ที่ {{price_position}} และไม่แตะหรือข้ามเส้นระดับราคาเป้าหมาย มิฉะนั้นเงินผลตอบแทนของคุณจะเป็นศูนย์", "-1815023694": "อยู่เหนือกว่าเส้นระดับราคาเป้าหมาย", diff --git a/packages/translations/src/translations/tr.json b/packages/translations/src/translations/tr.json index 27d5bbb8781e..eddba8a96e0e 100644 --- a/packages/translations/src/translations/tr.json +++ b/packages/translations/src/translations/tr.json @@ -176,6 +176,7 @@ "211224838": "Yatırım", "211461880": "Genel adlar ve soyadları tahmin etmek kolaydır", "211847965": "<0>Kişisel bilgileriniz eksik. Para çekme işlemlerini etkinleştirmek için lütfen hesap ayarlarınıza gidin ve kişisel bilgilerinizi tamamlayın.", + "212871086": "Çok yakında mobil cihazlarda", "216650710": "Bir demo hesabı kullanıyorsunuz", "217403651": "St. Vincent & Grenadines", "217504255": "Finansal değerlendirme başarıyla gönderildi", @@ -861,7 +862,6 @@ "958430760": "In/Out", "959031082": "{{ variable }} değişkenini MACD Dizilimine ayarla {{ dropdown }} {{ dummy }}", "960201789": "3. Satış koşulları", - "961178214": "Bir seferde yalnızca bir sözleşme satın alabilirsiniz", "961266215": "140+", "961327418": "Bilgisayarım", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "{{ contract_type }} satın al", "1062423382": "Eğiticiler sekmesinde botunuzu oluşturmak için video kılavuzlarını ve SSS'leri keşfedin.", "1062536855": "Equals", + "1065275078": "cTrader şimdilik yalnızca masaüstünde mevcuttur.", "1065353420": "110+", "1065498209": "Yineleme (1)", "1066235879": "Para transferi, ikinci bir hesap oluşturmanızı gerektirecektir.", @@ -3576,6 +3577,7 @@ "-127118348": "{{contract_type}} öğesini seçin", "-543478618": "Yazım denetimi yapmayı deneyin veya farklı bir terim kullanın", "-700280380": "Anlaşma iptal. ücreti", + "-438655760": "<0>Not: İşleminizi istediğiniz zaman kapatabilirsiniz. Kayma riskinin farkında olun.", "-1683683754": "Uzun", "-1046859144": "<0>{{title}} Piyasa fiyatı {{price_position}} kalırsa ve bariyere dokunmaz veya geçmezse bir ödeme alırsınız. Aksi takdirde, ödemeniz sıfır olacaktır.", "-1815023694": "bariyerin üstünde", diff --git a/packages/translations/src/translations/vi.json b/packages/translations/src/translations/vi.json index f12b588c67b0..9b02a7ae1d48 100644 --- a/packages/translations/src/translations/vi.json +++ b/packages/translations/src/translations/vi.json @@ -176,6 +176,7 @@ "211224838": "Đầu tư", "211461880": "Tên thường và họ rất dễ đoán", "211847965": "<0>Thông tin cá nhân của bạn không đầy đủ. Vui lòng đi đến phần cài đặt tài khoản của bạn và điền đầy đủ thông tin cá nhân để có thể rút tiền.", + "212871086": "Sắp có trên điện thoại di động", "216650710": "Bạn đang sử dụng một tài khoản thử nghiệm", "217403651": "St. Vincent & Grenadines", "217504255": "Bảng đánh giá tài chính đã được gửi thành công", @@ -861,7 +862,6 @@ "958430760": "Trong/Ngoài", "959031082": "đặt {{ variable }} tới đường MACD {{ dropdown }} {{ dummy }}", "960201789": "3. Các điều kiện bán", - "961178214": "Bạn chỉ có thể mua một hợp đồng tại cùng một thời điểm", "961266215": "140+", "961327418": "Máy tính của tôi", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "Mua {{ contract_type }}", "1062423382": "Khám phá video hướng dẫn và các câu hỏi thường gặp để xây dựng bot của bạn trong thẻ hướng dẫn.", "1062536855": "Tương đương", + "1065275078": "cTrader hiện chỉ khả dụng trên máy tính để bàn.", "1065353420": "110+", "1065498209": "Phép lặp (1)", "1066235879": "Bạn sẽ cần tạo một tài khoản thứ hai để chuyển tiền.", @@ -3576,6 +3577,7 @@ "-127118348": "Chọn {{contract_type}}", "-543478618": "Thử kiểm tra chính tả hoặc sử dụng một cụm từ khác", "-700280380": "Phí hủy giao dịch", + "-438655760": "<0>Lưu ý: Bạn có thể đóng giao dịch của mình bất cứ lúc nào. Hãy nhận biết rủi ro trượt giá.", "-1683683754": "Long", "-1046859144": "<0>{{title}} Bạn sẽ nhận được một khoản chi trả nếu giá thị trường giữ nguyên {{price_position}}, không chạm hoặc vượt quá giá ngưỡng. Ngược lại, bạn sẽ không nhận được khoản chi trả nào cả.", "-1815023694": "trên mức ngưỡng", diff --git a/packages/translations/src/translations/zh_cn.json b/packages/translations/src/translations/zh_cn.json index ad50978d1f4d..a63b97d730e5 100644 --- a/packages/translations/src/translations/zh_cn.json +++ b/packages/translations/src/translations/zh_cn.json @@ -176,6 +176,7 @@ "211224838": "投资", "211461880": "常用名称和姓氏容易猜到", "211847965": "您的<0>个人详细信息 不完整。请前往账户设置并填写个人详细信息,以启用取款。", + "212871086": "即将推出移动版", "216650710": "您正在使用演示账户", "217403651": "圣文森特和格林纳丁斯", "217504255": "财务评估已成功提交", @@ -861,7 +862,6 @@ "958430760": "“范围之内/之外”", "959031082": "设置 {{ variable }} 为MACD数组 {{ dropdown }} {{ dummy }}", "960201789": "3. 卖出条件", - "961178214": "一次只能购买一份合约", "961266215": "140+", "961327418": "我的电脑", "961692401": "机器人", @@ -964,6 +964,7 @@ "1061308507": "买入 {{ contract_type }}", "1062423382": "在 “教程” 选项卡中浏览视频指南和常见问题解答,以构建机器人。", "1062536855": "相等于", + "1065275078": "cTrader 目前只能在桌面上使用。", "1065353420": "110+", "1065498209": "循环 (1)", "1066235879": "转移资金需要开立第二个账户。", @@ -3576,6 +3577,7 @@ "-127118348": "选择 {{contract_type}}", "-543478618": "尝试检查拼写或使用其他术语", "-700280380": "交易取消. 费用", + "-438655760": "<0>注意:您可以随时平仓。注意滑点风险。", "-1683683754": "长仓", "-1046859144": "<0>{{title}} 如果市场价格保持在 {{price_position}} 并且没有触及或超出障碍,将获得赔付。否则,赔付将为零。", "-1815023694": "超出障碍", diff --git a/packages/translations/src/translations/zh_tw.json b/packages/translations/src/translations/zh_tw.json index 02d4e3f48815..c39318a948cc 100644 --- a/packages/translations/src/translations/zh_tw.json +++ b/packages/translations/src/translations/zh_tw.json @@ -176,6 +176,7 @@ "211224838": "投資", "211461880": "常用名稱和姓氏容易猜到", "211847965": "您的<0>個人詳細資料不完整。請前往帳戶設定並填寫個人詳細資料,以啟用取款。", + "212871086": "即將推出, 上, 移動", "216650710": "您正在使用示範帳戶", "217403651": "聖文森特和格林納丁斯", "217504255": "財務評估已成功提交", @@ -861,7 +862,6 @@ "958430760": "「範圍之內/之外」", "959031082": "設定 {{ variable }} 為 MACD 陣列 {{ dropdown }} {{ dummy }}", "960201789": "3. 賣出條件", - "961178214": "一次只能購買一份合約", "961266215": "140+", "961327418": "我的電腦", "961692401": "Bot", @@ -964,6 +964,7 @@ "1061308507": "買入 {{ contract_type }}", "1062423382": "在教學課程標籤中探索視訊指南和常見問答集,以建置機器人。", "1062536855": "等於", + "1065275078": "cTrader 目前只能在桌面上使用。", "1065353420": "110+", "1065498209": "反覆 (1)", "1066235879": "轉移資金需要開立第二個帳戶。", @@ -3576,6 +3577,7 @@ "-127118348": "選擇 {{contract_type}}", "-543478618": "嘗試檢查拼寫或使用其他字詞", "-700280380": "交易取消費用", + "-438655760": "<0>注意:您可以隨時關閉交易。注意滑點風險。", "-1683683754": "長倉", "-1046859144": "<0>{{title}} 如果市場價格保持在 {{price_position}} 並且沒有觸及或超出障礙,將獲得賠付。否則,賠付將為零。", "-1815023694": "超出障礙", From 468784774255dfe847254166b4d13d1ce54e76aa Mon Sep 17 00:00:00 2001 From: Maryia <103177211+maryia-deriv@users.noreply.github.com> Date: Wed, 20 Sep 2023 10:35:04 +0300 Subject: [PATCH 11/41] maryia/OPT-323/feat: Accumulators barriers improvements (#9554) * feat: make barriers persistent on dtrader chart * fix: profit font for responsive * Revert "feat: make barriers persistent on dtrader chart" This reverts commit c13147f889142b83b5f553a2ab2235c5790cd9c6. * chore: reduce profit text font size * feat: passing whitespace to charts for accu * feat: test draft persistent barriers on the chart * Revert "feat: test draft persistent barriers on the chart" This reverts commit 5dde3d59d219e7c342333dfaf3c0d3c2c479f4fa. * chore: increase width * chore: added barriers for each sold contract * chore: remove barrier-spot difference value for sold contract barriers * feat: redesign mobile infobox * feat: re-design profit tooltip * feat: add yaxis margin for default rescaling to keep barrier range in sight * feat: using yAxisMargin to re-scale the chart * feat: use yAxisMargin prop to adjust scaling * chore: use settings to set scaling * test: add tests for getAccuChartScaleParams * chore: finish incapsulating logic in smartcharts * refactor: drawShadedBarriers * test: refactor and improve tests for getAccuBarriersDTraderTimeout * test: refactor and improve tests for getAccuBarriersDTraderTimeout * refactor: drawAccuBarrierRange * fix: initial rendering of barrier range in c.details * test: getAccuBarriersDTraderTimeout * build: update charts version to 1.3.3 * build: update charts to the latest version * refactor: rename var * revert: max tix for mobile + update whitespace value for accumulators * fix: longcode tooltip & barrier range width in dtrader mobile * fix: max_longcode_length as per latest design change * fix: accu barrier range width * revert: unnecessary files * revert: package-lock * revert: package-lock --- packages/core/src/Stores/contract-store.js | 34 ++++---- .../core/src/Stores/contract-trade-store.js | 1 - .../app/_common/layout/trader-layouts.scss | 16 ++-- .../src/sass/app/modules/contract.scss | 18 ++-- .../src/sass/app/modules/smart-chart.scss | 25 +++++- .../utils/contract/__tests__/contract.spec.ts | 81 +++++++++-------- .../shared/src/utils/contract/contract.ts | 10 +-- .../Components/InfoBox/info-box-longcode.jsx | 5 +- .../Contract/Containers/contract-replay.jsx | 1 + .../Markers/accumulators-profit-loss-text.jsx | 6 +- .../accumulators-profit-loss-tooltip.jsx | 5 +- .../SmartChart/Components/all-markers.jsx | 87 +++++++++++++------ .../src/Modules/Trading/Containers/trade.jsx | 2 + .../app/_common/layout/trader-layouts.scss | 16 ++-- .../trader/src/sass/app/modules/contract.scss | 18 ++-- .../src/sass/app/modules/smart-chart.scss | 25 +++++- 16 files changed, 218 insertions(+), 132 deletions(-) diff --git a/packages/core/src/Stores/contract-store.js b/packages/core/src/Stores/contract-store.js index b16b80effdb3..45bdfd5ee453 100644 --- a/packages/core/src/Stores/contract-store.js +++ b/packages/core/src/Stores/contract-store.js @@ -196,32 +196,30 @@ export default class ContractStore extends BaseStore { ) { return; } + if (!this.barriers_array.length) { + // Accumulators barrier range in C.Details consists of labels (this.barriers_array) and horizontal lines with shade (this.marker) + this.barriers_array = this.createBarriersArray( + { + ...contract_info, + high_barrier: this.accu_high_barrier, + low_barrier: this.accu_low_barrier, + }, + is_dark_mode + ); + this.marker = calculate_marker(this.contract_info, { + accu_high_barrier: this.accu_high_barrier, + accu_low_barrier: this.accu_low_barrier, + }); // this.marker is rendered as DelayedAccuBarriersMarker component + return; + } setTimeout( () => runInAction(() => { - if (!this.barriers_array.length) { - this.barriers_array = this.createBarriersArray( - { - ...contract_info, - high_barrier: this.accu_high_barrier, - low_barrier: this.accu_low_barrier, - }, - is_dark_mode - ); - return; - } if (contract_info) { if (isBarrierSupported(contract_type) && this.accu_high_barrier && this.accu_low_barrier) { // updating barrier labels in C.Details page main_barrier?.updateBarriers(this.accu_high_barrier, this.accu_low_barrier); } - // this.marker contains horizontal barrier lines & shade between rendered as DelayedAccuBarriersMarker in C.Details page - if (!this.marker) { - this.marker = calculate_marker(this.contract_info, { - accu_high_barrier: this.accu_high_barrier, - accu_low_barrier: this.accu_low_barrier, - }); - } // this.markers_array contains tick markers & start/end vertical lines in C.Details page this.markers_array = createChartMarkers(contract_info, true); // this observable controls the update of DelayedAccuBarriersMarker in C.Details page diff --git a/packages/core/src/Stores/contract-trade-store.js b/packages/core/src/Stores/contract-trade-store.js index 2896871f9bbd..243d110cd981 100644 --- a/packages/core/src/Stores/contract-trade-store.js +++ b/packages/core/src/Stores/contract-trade-store.js @@ -178,7 +178,6 @@ export default class ContractTradeStore extends BaseStore { getAccuBarriersDTraderTimeout({ barriers_update_timestamp: Date.now(), has_default_timeout: this.accumulator_barriers_data.current_spot_time !== current_spot_time, - should_update_contract_barriers, tick_update_timestamp, underlying, }) diff --git a/packages/reports/src/sass/app/_common/layout/trader-layouts.scss b/packages/reports/src/sass/app/_common/layout/trader-layouts.scss index 1b3fcdd853ae..01824ff642ad 100644 --- a/packages/reports/src/sass/app/_common/layout/trader-layouts.scss +++ b/packages/reports/src/sass/app/_common/layout/trader-layouts.scss @@ -318,11 +318,17 @@ $FLOATING_HEADER_HEIGHT: 41px; .ciq-asset-information { top: 75px; } - .stx_jump_today.home > svg { - top: 10px; - left: 8px; - padding: 0; - position: absolute; + .stx_jump_today { + @include mobile { + z-index: 15; // must be greater than z-index of mobile .stx-holder.stx-panel-chart + } + + &.home > svg { + top: 10px; + left: 8px; + padding: 0; + position: absolute; + } } .cq-bottom-ui-widgets { bottom: 30px !important; diff --git a/packages/reports/src/sass/app/modules/contract.scss b/packages/reports/src/sass/app/modules/contract.scss index e97963a0475d..650d9d88952b 100644 --- a/packages/reports/src/sass/app/modules/contract.scss +++ b/packages/reports/src/sass/app/modules/contract.scss @@ -39,11 +39,7 @@ $CONTRACT_INFO_BOX_PADDING: 1.6em; max-width: 35rem; @include mobile { - max-width: 23.3rem; - - a { - font-size: 1rem; - } + max-width: 11rem; } a { @@ -63,11 +59,13 @@ $CONTRACT_INFO_BOX_PADDING: 1.6em; font-size: 1rem; letter-spacing: normal; line-height: 1.4; - max-width: 23.3rem; - /* iPhone SE screen height fixes due to UI space restrictions */ - @media only screen and (max-height: 480px) { - font-size: 0.8rem; - } + max-width: 11rem; + line-clamp: 2; + -webkit-line-clamp: 2; + } + /* iPhone SE screen height fixes due to UI space restrictions */ + @media only screen and (max-height: 480px) { + font-size: 0.8rem !important; } } } diff --git a/packages/reports/src/sass/app/modules/smart-chart.scss b/packages/reports/src/sass/app/modules/smart-chart.scss index a9485dcc7ae5..59b9eb16d03c 100644 --- a/packages/reports/src/sass/app/modules/smart-chart.scss +++ b/packages/reports/src/sass/app/modules/smart-chart.scss @@ -342,6 +342,10 @@ display: flex; align-items: center; + @include mobile { + padding-left: 2.3rem; + } + &.won div { color: var(--text-profit-success); } @@ -385,8 +389,11 @@ animation: 0.1s cubic-bezier(0.49, -0.4, 0.11, 0.65) 3 both slide-decimal; } &__currency { - padding-left: 0.3rem; - transform: translateY(-92%); + padding-left: 0.2rem; + transform: translateY(-83%); + @include mobile { + transform: translateY(-78%); + } } &:before { content: ''; @@ -396,6 +403,10 @@ top: -4%; z-index: -2; background-color: var(--general-main-1); + + @include mobile { + width: calc(100% - 2.3rem); + } } &:after { content: ''; @@ -407,6 +418,10 @@ background-color: rgba(0, 167, 158, 0.1); box-shadow: 0 -8px 11px 0 rgba(0, 167, 158, 0.08), 0 8px 11px 0 rgba(0, 167, 158, 0.08), 0 0 11px -5px rgba(0, 167, 158, 0.08), 0 0 11px -5px rgba(0, 167, 158, 0.08); + + @include mobile { + width: calc(100% - 2.3rem); + } } } &-tooltip { @@ -463,7 +478,7 @@ } &__content { position: absolute; - width: 16.4rem; + min-width: 10.5rem; height: 5.8rem; border-radius: $BORDER_RADIUS; display: flex; @@ -473,6 +488,10 @@ opacity: 0.72; transition: opacity 0.5s cubic-bezier(0.25, 0.1, 0.1, 0.25); + @include mobile { + min-width: 7.5rem; + height: 4.6rem; + } &-enter, &-exit { opacity: 0; diff --git a/packages/shared/src/utils/contract/__tests__/contract.spec.ts b/packages/shared/src/utils/contract/__tests__/contract.spec.ts index b2fd4147641d..50c20e064ba1 100644 --- a/packages/shared/src/utils/contract/__tests__/contract.spec.ts +++ b/packages/shared/src/utils/contract/__tests__/contract.spec.ts @@ -400,82 +400,93 @@ describe('getAccuBarriersDefaultTimeout', () => { }); describe('getAccuBarriersDTraderTimeout', () => { - const barriers_update_timestamp = 1688134166649; + const interval = 250; // interval between receivals of tick data and barriers data + const shorter_interval = 50; const has_default_timeout = false; - const should_update_contract_barriers = false; - const tick_update_timestamp = 1688134166574; - const underlying = 'R_100'; + const tick_update_timestamp = 1234567890800; + const barriers_update_timestamp = tick_update_timestamp + interval; + const symbol_1_sec = '1HZ10V'; + const symbol_2_sec = 'R_100'; - it(`should return a timeout equal to a difference between target time + 100ms (or -100ms for contract barriers) - and current barriers update time for 2-second symbol`, () => { + const getTargetTime = (underlying: string) => { + return ( + tick_update_timestamp + + ContractUtils.getAccuBarriersDefaultTimeout(underlying) + + ContractUtils.ANIMATION_CORRECTION_TIME + ); + }; + + it('should return a timeout equal to difference between target time and current barriers receival time for 2-second symbol', () => { + const sooner_barriers_receival_timestamp = tick_update_timestamp + shorter_interval; expect( ContractUtils.getAccuBarriersDTraderTimeout({ barriers_update_timestamp, has_default_timeout, - should_update_contract_barriers, tick_update_timestamp, - underlying, + underlying: symbol_2_sec, }) - ).toEqual(1175); + ).toEqual(getTargetTime(symbol_2_sec) - barriers_update_timestamp); expect( ContractUtils.getAccuBarriersDTraderTimeout({ - barriers_update_timestamp, + barriers_update_timestamp: sooner_barriers_receival_timestamp, has_default_timeout, - should_update_contract_barriers: true, tick_update_timestamp, - underlying, + underlying: symbol_2_sec, }) - ).toEqual(675); + ).toEqual(getTargetTime(symbol_2_sec) - sooner_barriers_receival_timestamp); }); - it(`should return a timeout equal to a difference between target time + 100ms (or -100ms for contract barriers) - and current barriers update time for 1-second symbol`, () => { + it('should return a timeout equal to difference between target time and current barriers receival time for 1-second symbol', () => { + const sooner_barriers_receival_timestamp = tick_update_timestamp + shorter_interval; expect( ContractUtils.getAccuBarriersDTraderTimeout({ - barriers_update_timestamp: 1688134341324, + barriers_update_timestamp, has_default_timeout, - should_update_contract_barriers, - tick_update_timestamp: 1688134341301, - underlying: '1HZ10V', + tick_update_timestamp, + underlying: symbol_1_sec, }) - ).toEqual(602); + ).toEqual(getTargetTime(symbol_1_sec) - barriers_update_timestamp); expect( ContractUtils.getAccuBarriersDTraderTimeout({ - barriers_update_timestamp: 1688134341324, + barriers_update_timestamp: sooner_barriers_receival_timestamp, has_default_timeout, - should_update_contract_barriers: true, - tick_update_timestamp: 1688134341301, - underlying: '1HZ10V', + tick_update_timestamp, + underlying: symbol_1_sec, }) - ).toEqual(352); + ).toEqual(getTargetTime(symbol_1_sec) - sooner_barriers_receival_timestamp); }); it('should return a default timeout when has_default_timeout is true, or when tick_update_timestamp is null', () => { expect( ContractUtils.getAccuBarriersDTraderTimeout({ barriers_update_timestamp, has_default_timeout: true, - should_update_contract_barriers, tick_update_timestamp, - underlying, + underlying: symbol_2_sec, }) - ).toEqual(ContractUtils.getAccuBarriersDefaultTimeout(underlying)); + ).toEqual(ContractUtils.getAccuBarriersDefaultTimeout(symbol_2_sec)); expect( ContractUtils.getAccuBarriersDTraderTimeout({ barriers_update_timestamp, has_default_timeout, - should_update_contract_barriers, tick_update_timestamp: null, - underlying, + underlying: symbol_2_sec, }) - ).toEqual(ContractUtils.getAccuBarriersDefaultTimeout(underlying)); + ).toEqual(ContractUtils.getAccuBarriersDefaultTimeout(symbol_2_sec)); }); - it('should return 0 timeout when current barriers update happens too late and timeout is no longer applicable', () => { + it('should return 0 timeout when current barriers receival happens too late (after/at target time) and timeout is no longer applicable', () => { + expect( + ContractUtils.getAccuBarriersDTraderTimeout({ + barriers_update_timestamp: getTargetTime(symbol_1_sec) + 100, + has_default_timeout, + tick_update_timestamp, + underlying: symbol_1_sec, + }) + ).toEqual(0); expect( ContractUtils.getAccuBarriersDTraderTimeout({ - barriers_update_timestamp: 1688134167999, + barriers_update_timestamp: getTargetTime(symbol_1_sec), has_default_timeout, - should_update_contract_barriers, tick_update_timestamp, - underlying, + underlying: symbol_1_sec, }) ).toEqual(0); }); diff --git a/packages/shared/src/utils/contract/contract.ts b/packages/shared/src/utils/contract/contract.ts index 509c91ad2244..aaf7bcbc7543 100644 --- a/packages/shared/src/utils/contract/contract.ts +++ b/packages/shared/src/utils/contract/contract.ts @@ -6,11 +6,12 @@ import { TContractInfo, TDigitsInfo, TLimitOrder, TTickItem } from './contract-t type TGetAccuBarriersDTraderTimeout = (params: { barriers_update_timestamp: number; has_default_timeout: boolean; - should_update_contract_barriers?: boolean; tick_update_timestamp: number | null; underlying: string; }) => number; +// animation correction time is an interval in ms between ticks receival from API and their actual visual update on the chart +export const ANIMATION_CORRECTION_TIME = 200; export const DELAY_TIME_1S_SYMBOL = 500; // generation_interval will be provided via API later to help us distinguish between 1-second and 2-second symbols export const symbols_2s = ['R_10', 'R_25', 'R_50', 'R_75', 'R_100']; @@ -81,17 +82,12 @@ export const getAccuBarriersDefaultTimeout = (symbol: string) => { export const getAccuBarriersDTraderTimeout: TGetAccuBarriersDTraderTimeout = ({ barriers_update_timestamp, has_default_timeout, - should_update_contract_barriers, tick_update_timestamp, underlying, }) => { if (has_default_timeout || !tick_update_timestamp) return getAccuBarriersDefaultTimeout(underlying); - const animation_correction_time = - (should_update_contract_barriers - ? getAccuBarriersDefaultTimeout(underlying) / -4 - : getAccuBarriersDefaultTimeout(underlying) / 4) || 0; const target_update_time = - tick_update_timestamp + getAccuBarriersDefaultTimeout(underlying) + animation_correction_time; + tick_update_timestamp + getAccuBarriersDefaultTimeout(underlying) + ANIMATION_CORRECTION_TIME; const difference = target_update_time - barriers_update_timestamp; return difference < 0 ? 0 : difference; }; diff --git a/packages/trader/src/Modules/Contract/Components/InfoBox/info-box-longcode.jsx b/packages/trader/src/Modules/Contract/Components/InfoBox/info-box-longcode.jsx index 4ca6bd3e1e10..8d95c22266db 100644 --- a/packages/trader/src/Modules/Contract/Components/InfoBox/info-box-longcode.jsx +++ b/packages/trader/src/Modules/Contract/Components/InfoBox/info-box-longcode.jsx @@ -4,9 +4,10 @@ import classNames from 'classnames'; import React from 'react'; import { Icon, Text } from '@deriv/components'; import { localize } from '@deriv/translations'; +import { isMobile } from '@deriv/shared'; const InfoBoxLongcode = ({ contract_info }) => { - const max_longcode_length = 150; + const max_longcode_length = isMobile() ? 47 : 150; const [is_collapsed, setIsCollapsed] = React.useState(true); const handleToggle = () => { @@ -27,7 +28,7 @@ const InfoBoxLongcode = ({ contract_info }) => { {` `} {contract_info.longcode.length > max_longcode_length && ( - + {is_collapsed ? localize('View more') : localize('View less')} )} diff --git a/packages/trader/src/Modules/Contract/Containers/contract-replay.jsx b/packages/trader/src/Modules/Contract/Containers/contract-replay.jsx index ed1dd388ff47..73e0cb763a1b 100644 --- a/packages/trader/src/Modules/Contract/Containers/contract-replay.jsx +++ b/packages/trader/src/Modules/Contract/Containers/contract-replay.jsx @@ -281,6 +281,7 @@ const ReplayChart = observer(({ is_accumulator_contract }) => { is_accumulator_contract && end_epoch && start_epoch < prev_start_epoch } shouldFetchTradingTimes={false} + should_zoom_out_on_yaxis={is_accumulator_contract} yAxisMargin={getChartYAxisMargin()} anchorChartToLeft={isMobile()} shouldFetchTickHistory={ diff --git a/packages/trader/src/Modules/SmartChart/Components/Markers/accumulators-profit-loss-text.jsx b/packages/trader/src/Modules/SmartChart/Components/Markers/accumulators-profit-loss-text.jsx index 0b7ac7112e4e..4ab9195b8a8a 100644 --- a/packages/trader/src/Modules/SmartChart/Components/Markers/accumulators-profit-loss-text.jsx +++ b/packages/trader/src/Modules/SmartChart/Components/Markers/accumulators-profit-loss-text.jsx @@ -1,7 +1,7 @@ import PropTypes from 'prop-types'; import React from 'react'; import { Text } from '@deriv/components'; -import { formatMoney, getCurrencyDisplayCode } from '@deriv/shared'; +import { formatMoney, getCurrencyDisplayCode, isMobile } from '@deriv/shared'; import { FastMarker } from 'Modules/SmartChart'; import classNames from 'classnames'; @@ -103,7 +103,7 @@ const AccumulatorsProfitLossText = ({ {current_profit_tenth} {`${profit_hundredths}`} - + {getCurrencyDisplayCode(currency)} diff --git a/packages/trader/src/Modules/SmartChart/Components/Markers/accumulators-profit-loss-tooltip.jsx b/packages/trader/src/Modules/SmartChart/Components/Markers/accumulators-profit-loss-tooltip.jsx index afac1504921d..c9afec06cad8 100644 --- a/packages/trader/src/Modules/SmartChart/Components/Markers/accumulators-profit-loss-tooltip.jsx +++ b/packages/trader/src/Modules/SmartChart/Components/Markers/accumulators-profit-loss-tooltip.jsx @@ -6,6 +6,7 @@ import { Money, Text } from '@deriv/components'; import { localize } from '@deriv/translations'; import { FastMarker } from 'Modules/SmartChart'; import AccumulatorsProfitLossText from './accumulators-profit-loss-text'; +import { isMobile } from '@deriv/shared'; const AccumulatorsProfitLossTooltip = ({ alignment = 'right', @@ -96,10 +97,10 @@ const AccumulatorsProfitLossTooltip = ({ classNames={`${className}__content`} >
- + {localize('Total profit/loss:')} - +
diff --git a/packages/trader/src/Modules/SmartChart/Components/all-markers.jsx b/packages/trader/src/Modules/SmartChart/Components/all-markers.jsx index 0873c9e49759..f942580e5d8d 100644 --- a/packages/trader/src/Modules/SmartChart/Components/all-markers.jsx +++ b/packages/trader/src/Modules/SmartChart/Components/all-markers.jsx @@ -145,20 +145,20 @@ const draw_path = (ctx, { zoom, top, left, icon }) => { ctx.restore(); }; -const draw_shaded_barriers = ({ +const drawAccuBarrierRange = ({ + coordinates, ctx, labels, - start_left, - top, - bottom, - stroke_color, - fill_color, has_persistent_borders, previous_tick, scale, + shade_color, + stroke_color, }) => { ctx.save(); - const end_left = ctx.canvas.offsetWidth - ctx.canvas.parentElement.stx.panels.chart.yaxisTotalWidthRight; + const { bottom, start_left, top } = coordinates; + const end_left = + coordinates.end_left ?? ctx.canvas.offsetWidth - ctx.canvas.parentElement.stx.panels.chart.yaxisTotalWidthRight; const end_top = ctx.canvas.offsetHeight - ctx.canvas.parentElement.stx.xaxisHeight; const is_top_visible = top < end_top && (top >= 0 || !has_persistent_borders); const is_bottom_visible = bottom < end_top; @@ -228,7 +228,7 @@ const draw_shaded_barriers = ({ ctx.stroke(); } // draw shaded area between barriers - ctx.fillStyle = fill_color; + ctx.fillStyle = shade_color; ctx.fillRect(start_left, displayed_top, end_left - start_left, Math.abs(displayed_bottom - displayed_top)); ctx.restore(); }; @@ -313,22 +313,24 @@ const TickContract = RawMarkerMaker( if (start && is_accumulator_trade_without_contract) { // draw 2 barriers with a shade between them for ACCU trade without contracts - draw_shaded_barriers({ - bottom: barrier_2, + drawAccuBarrierRange({ + coordinates: { + bottom: barrier_2, + start_left: start.left, + top: barrier, + }, ctx, - fill_color: getColor({ - status: has_crossed_accu_barriers ? 'accu_shade_crossed' : 'accu_shade', - is_dark_theme, - }), labels: accu_barriers_difference, previous_tick: { stroke_color: getColor({ status: 'fg', is_dark_theme }) + opacity, radius: 1.5 * scale, }, - start_left: start.left, - stroke_color: getColor({ status: has_crossed_accu_barriers ? 'lost' : 'open', is_dark_theme }), - top: barrier, scale, + shade_color: getColor({ + status: has_crossed_accu_barriers ? 'accu_shade_crossed' : 'accu_shade', + is_dark_theme, + }), + stroke_color: getColor({ status: has_crossed_accu_barriers ? 'lost' : 'open', is_dark_theme }), }); return; } @@ -341,16 +343,13 @@ const TickContract = RawMarkerMaker( // draw 2 barriers with a shade between them for an ongoing ACCU contract: const contract_details_start_left = is_accumulator_contract && contract_status === 'open' ? exit?.left : previous_tick?.left; - draw_shaded_barriers({ - bottom: barrier_2, + drawAccuBarrierRange({ + coordinates: { + bottom: barrier_2, + start_left: is_in_contract_details ? contract_details_start_left : start.left, + top: barrier, + }, ctx, - fill_color: getColor({ - status: - has_crossed_accu_barriers || contract_status === 'lost' - ? 'accu_shade_crossed' - : 'accu_contract_shade', - is_dark_theme, - }), // we should show barrier lines in contract details even when they are outside of the chart: has_persistent_borders: is_in_contract_details, labels: !is_in_contract_details && accu_barriers_difference, @@ -360,12 +359,17 @@ const TickContract = RawMarkerMaker( radius: 1.5 * scale, }, scale, - start_left: is_in_contract_details ? contract_details_start_left : start.left, + shade_color: getColor({ + status: + has_crossed_accu_barriers || contract_status === 'lost' + ? 'accu_shade_crossed' + : 'accu_contract_shade', + is_dark_theme, + }), stroke_color: getColor({ status: has_crossed_accu_barriers || contract_status === 'lost' ? 'lost' : 'won', is_dark_theme, }), - top: barrier, }); } if (is_in_contract_details) return; @@ -492,6 +496,33 @@ const TickContract = RawMarkerMaker( zoom: exit.zoom, icon: ICONS.END.with_color(color, getColor({ status: 'bg', is_dark_theme })), }); + if (is_accu_contract_ended) { + drawAccuBarrierRange({ + coordinates: { + bottom: barrier_2, + end_left: exit.left, + start_left: previous_tick?.left, + top: barrier, + }, + ctx, + previous_tick: { + stroke_color: color + opacity, + radius: 1.5 * scale, + }, + scale, + shade_color: getColor({ + status: + has_crossed_accu_barriers || contract_status === 'lost' + ? 'accu_shade_crossed' + : 'accu_contract_shade', + is_dark_theme, + }), + stroke_color: getColor({ + status: has_crossed_accu_barriers || contract_status === 'lost' ? 'lost' : 'won', + is_dark_theme, + }), + }); + } } ctx.restore(); } diff --git a/packages/trader/src/Modules/Trading/Containers/trade.jsx b/packages/trader/src/Modules/Trading/Containers/trade.jsx index 96af7ddf148e..e9fb3433109b 100644 --- a/packages/trader/src/Modules/Trading/Containers/trade.jsx +++ b/packages/trader/src/Modules/Trading/Containers/trade.jsx @@ -310,6 +310,7 @@ const ChartTrade = observer(props => { language: current_language.toLowerCase(), position: is_chart_layout_default ? 'bottom' : 'left', theme: is_dark_mode_on ? 'dark' : 'light', + ...(is_accumulator ? { whitespace: 190, minimumLeftBars: isMobile() ? 3 : undefined } : {}), }; const { current_spot, current_spot_time } = accumulator_barriers_data || {}; @@ -392,6 +393,7 @@ const ChartTrade = observer(props => { hasAlternativeSource={has_alternative_source} refToAddTick={refToAddTick} getMarketsOrder={getMarketsOrder} + should_zoom_out_on_yaxis={is_accumulator} yAxisMargin={{ top: isMobile() ? 76 : 106, }} diff --git a/packages/trader/src/sass/app/_common/layout/trader-layouts.scss b/packages/trader/src/sass/app/_common/layout/trader-layouts.scss index 34ed50d41e42..d36acf28370c 100644 --- a/packages/trader/src/sass/app/_common/layout/trader-layouts.scss +++ b/packages/trader/src/sass/app/_common/layout/trader-layouts.scss @@ -318,11 +318,17 @@ $FLOATING_HEADER_HEIGHT: 41px; .ciq-asset-information { top: 75px; } - .stx_jump_today.home > svg { - top: 10px; - left: 8px; - padding: 0; - position: absolute; + .stx_jump_today { + @include mobile { + z-index: 15; // must be greater than z-index of mobile .stx-holder.stx-panel-chart + } + + &.home > svg { + top: 10px; + left: 8px; + padding: 0; + position: absolute; + } } .cq-bottom-ui-widgets { bottom: 30px !important; diff --git a/packages/trader/src/sass/app/modules/contract.scss b/packages/trader/src/sass/app/modules/contract.scss index e97963a0475d..650d9d88952b 100644 --- a/packages/trader/src/sass/app/modules/contract.scss +++ b/packages/trader/src/sass/app/modules/contract.scss @@ -39,11 +39,7 @@ $CONTRACT_INFO_BOX_PADDING: 1.6em; max-width: 35rem; @include mobile { - max-width: 23.3rem; - - a { - font-size: 1rem; - } + max-width: 11rem; } a { @@ -63,11 +59,13 @@ $CONTRACT_INFO_BOX_PADDING: 1.6em; font-size: 1rem; letter-spacing: normal; line-height: 1.4; - max-width: 23.3rem; - /* iPhone SE screen height fixes due to UI space restrictions */ - @media only screen and (max-height: 480px) { - font-size: 0.8rem; - } + max-width: 11rem; + line-clamp: 2; + -webkit-line-clamp: 2; + } + /* iPhone SE screen height fixes due to UI space restrictions */ + @media only screen and (max-height: 480px) { + font-size: 0.8rem !important; } } } diff --git a/packages/trader/src/sass/app/modules/smart-chart.scss b/packages/trader/src/sass/app/modules/smart-chart.scss index a9485dcc7ae5..59b9eb16d03c 100644 --- a/packages/trader/src/sass/app/modules/smart-chart.scss +++ b/packages/trader/src/sass/app/modules/smart-chart.scss @@ -342,6 +342,10 @@ display: flex; align-items: center; + @include mobile { + padding-left: 2.3rem; + } + &.won div { color: var(--text-profit-success); } @@ -385,8 +389,11 @@ animation: 0.1s cubic-bezier(0.49, -0.4, 0.11, 0.65) 3 both slide-decimal; } &__currency { - padding-left: 0.3rem; - transform: translateY(-92%); + padding-left: 0.2rem; + transform: translateY(-83%); + @include mobile { + transform: translateY(-78%); + } } &:before { content: ''; @@ -396,6 +403,10 @@ top: -4%; z-index: -2; background-color: var(--general-main-1); + + @include mobile { + width: calc(100% - 2.3rem); + } } &:after { content: ''; @@ -407,6 +418,10 @@ background-color: rgba(0, 167, 158, 0.1); box-shadow: 0 -8px 11px 0 rgba(0, 167, 158, 0.08), 0 8px 11px 0 rgba(0, 167, 158, 0.08), 0 0 11px -5px rgba(0, 167, 158, 0.08), 0 0 11px -5px rgba(0, 167, 158, 0.08); + + @include mobile { + width: calc(100% - 2.3rem); + } } } &-tooltip { @@ -463,7 +478,7 @@ } &__content { position: absolute; - width: 16.4rem; + min-width: 10.5rem; height: 5.8rem; border-radius: $BORDER_RADIUS; display: flex; @@ -473,6 +488,10 @@ opacity: 0.72; transition: opacity 0.5s cubic-bezier(0.25, 0.1, 0.1, 0.25); + @include mobile { + min-width: 7.5rem; + height: 4.6rem; + } &-enter, &-exit { opacity: 0; From 790dd16d76af2bee91f7cde04bb45b8eba5d459d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 20 Sep 2023 16:00:29 +0800 Subject: [PATCH 12/41] =?UTF-8?q?translations:=20=F0=9F=93=9A=20sync=20tra?= =?UTF-8?q?nslations=20with=20crowdin=20(#10189)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: DerivFE <80095553+DerivFE@users.noreply.github.com> --- packages/translations/src/translations/si.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/translations/src/translations/si.json b/packages/translations/src/translations/si.json index 1152cdacd445..b18cb1cef304 100644 --- a/packages/translations/src/translations/si.json +++ b/packages/translations/src/translations/si.json @@ -1026,11 +1026,11 @@ "1127149819": "සහතික කරගන්න§", "1127224297": "බාධා කිරීම ගැන කණගාටුයි", "1128139358": "පසුගිය මාස 12 තුළ ඔබ CFD ගනුදෙනු කීයක් තබා තිබේද?", - "1128321947": "සියල්ල පැහැදිලි කරන්න", + "1128321947": "සියල්ල හිස් කරන්න", "1128404172": "අහෝසි කරන්න", - "1129124569": "ඔබ “යටතේ” තෝරා ගන්නේ නම්, අවසාන ටික්හි අවසාන ඉලක්කම් ඔබේ අනාවැකියට වඩා අඩු නම්, ඔබ ගෙවීම දිනා ගනු ඇත.", - "1129842439": "කරුණාකර ලාභ මුදලක් ලබා ගන්න.", - "1130744117": "ව්යාපාරික දින 10 ක් ඇතුළත ඔබගේ පැමිණිල්ල විසඳීමට අපි උත්සාහ කරමු. අපගේ ස්ථාවරය පැහැදිලි කිරීමක් සමඟ ප්රති come ලය පිළිබඳව අපි ඔබට දැනුම් දෙන අතර අප විසින් ගැනීමට අදහස් කරන ඕනෑම පිළියම් යෝජනා කරන්නෙමු.", + "1129124569": "ඔබ \"Under\", තෝරා ගන්නේ නම්, අවසාන සලකුණේ අවසාන ඉලක්කම් ඔබේ පුරෝකථනයට වඩා අඩු නම් ඔබ ගෙවීම දිනා ගනු ඇත.", + "1129842439": "කරුණාකර take profit මුදලක් ඇතුළු කරන්න.", + "1130744117": "අපි ඔබේ පැමිණිල්ල ව්‍යාපාරික දින 10ක් ඇතුළත විසඳීමට උත්සාහ කරන්නෙමු. අපගේ ස්ථාවරය පිළිබඳ පැහැදිලි කිරීමක් සමඟින් ප්‍රතිඵලය පිළිබඳව අපි ඔබට දන්වා අප ගැනීමට අදහස් කරන ඕනෑම ප්‍රතිකර්ම ක්‍රියාමාර්ග යෝජනා කරන්නෙමු.", "1130791706": "N", "1133651559": "සජීවී කතාබස්", "1134879544": "දිදුලන ලියවිල්ලක උදාහරණය", From 9fb2d62e0a034a9d7063a247b1c51854e25da694 Mon Sep 17 00:00:00 2001 From: adrienne-deriv <103016120+adrienne-deriv@users.noreply.github.com> Date: Thu, 21 Sep 2023 10:14:13 +0800 Subject: [PATCH 13/41] adrienne / added static component for create password modal in wallets (#10186) * feat: added static component for create password modal wallets * chore: renamed file * Update MT5CreatePassword.tsx --- .../MT5CreatePassword/MT5CreatePassword.scss | 68 +++++++++++++++++++ .../MT5CreatePassword/MT5CreatePassword.tsx | 22 ++++++ .../src/components/MT5CreatePassword/index.ts | 4 ++ .../src/public/images/ic-mt5-password.svg | 1 + .../src/public/images/ic-password-show.svg | 3 + 5 files changed, 98 insertions(+) create mode 100644 packages/wallets/src/components/MT5CreatePassword/MT5CreatePassword.scss create mode 100644 packages/wallets/src/components/MT5CreatePassword/MT5CreatePassword.tsx create mode 100644 packages/wallets/src/components/MT5CreatePassword/index.ts create mode 100644 packages/wallets/src/public/images/ic-mt5-password.svg create mode 100644 packages/wallets/src/public/images/ic-password-show.svg diff --git a/packages/wallets/src/components/MT5CreatePassword/MT5CreatePassword.scss b/packages/wallets/src/components/MT5CreatePassword/MT5CreatePassword.scss new file mode 100644 index 000000000000..c1b3dc64eb1d --- /dev/null +++ b/packages/wallets/src/components/MT5CreatePassword/MT5CreatePassword.scss @@ -0,0 +1,68 @@ +.wallets-create-password { + display: inline-flex; + padding: 32px; + flex-direction: column; + justify-content: center; + align-items: center; + gap: 24px; + background-color: #ffffff; + border-radius: 20px; + width: 400px; + text-align: center; + + &-title { + font-weight: 700; + font-size: 18px; + } + + &-subtitle { + font-size: 14px; + color: #333333; + line-height: 20px; + } + + &-input { + position: relative; + width: 100%; + + & > input { + font-size: 14px; + padding: 1rem; + border: 1px solid #d6dadb; + border-bottom: 5px solid #e6e9e9; + border-radius: 5px; + margin-bottom: 20px; + outline: none; + width: 100%; + + &::placeholder { + color: #999999; + } + } + + &-trailing-icon { + position: absolute; + right: 20px; + top: 20%; + transform: scale(1.2); + } + } + + &-button { + display: flex; + height: 40px; + padding: 10px 16px; + justify-content: center; + align-items: center; + border-radius: 4px; + background: #ff444f; + border: none; + color: #ffffff; + font-weight: 700; + cursor: pointer; + + &--disabled { + opacity: 0.32; + } + } +} diff --git a/packages/wallets/src/components/MT5CreatePassword/MT5CreatePassword.tsx b/packages/wallets/src/components/MT5CreatePassword/MT5CreatePassword.tsx new file mode 100644 index 000000000000..f2b30d2306b1 --- /dev/null +++ b/packages/wallets/src/components/MT5CreatePassword/MT5CreatePassword.tsx @@ -0,0 +1,22 @@ +import React from 'react'; +import MT5PasswordIcon from '../../public/images/ic-mt5-password.svg'; +import PasswordShowIcon from '../../public/images/ic-password-show.svg'; + +const MT5CreatePassword = () => { + return ( +
+ +
Create a Deriv MT5 password
+ + You can use this password for all your Deriv MT5 accounts. + +
+ + +
+ +
+ ); +}; + +export default MT5CreatePassword; diff --git a/packages/wallets/src/components/MT5CreatePassword/index.ts b/packages/wallets/src/components/MT5CreatePassword/index.ts new file mode 100644 index 000000000000..0b555556fd30 --- /dev/null +++ b/packages/wallets/src/components/MT5CreatePassword/index.ts @@ -0,0 +1,4 @@ +import MT5CreatePassword from './MT5CreatePassword'; +import './MT5CreatePassword.scss'; + +export default MT5CreatePassword; diff --git a/packages/wallets/src/public/images/ic-mt5-password.svg b/packages/wallets/src/public/images/ic-mt5-password.svg new file mode 100644 index 000000000000..b31e32175a33 --- /dev/null +++ b/packages/wallets/src/public/images/ic-mt5-password.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/wallets/src/public/images/ic-password-show.svg b/packages/wallets/src/public/images/ic-password-show.svg new file mode 100644 index 000000000000..4c53aab8e328 --- /dev/null +++ b/packages/wallets/src/public/images/ic-password-show.svg @@ -0,0 +1,3 @@ + + + From c3023e7339106a3f3b3c0359072dc7a5cffe70b3 Mon Sep 17 00:00:00 2001 From: adrienne-deriv <103016120+adrienne-deriv@users.noreply.github.com> Date: Thu, 21 Sep 2023 10:16:17 +0800 Subject: [PATCH 14/41] adrienne / added modal provider for wallets (#10191) * feat: added modal provider for wallets * Update ModalProvider.tsx * chore: removed isopen local state --- packages/core/src/index.html | 1 + .../ModalProvider/ModalProvider.tsx | 41 +++++++++++++++++++ .../src/components/ModalProvider/index.ts | 3 ++ packages/wallets/src/index.tsx | 5 ++- 4 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 packages/wallets/src/components/ModalProvider/ModalProvider.tsx create mode 100644 packages/wallets/src/components/ModalProvider/index.ts diff --git a/packages/core/src/index.html b/packages/core/src/index.html index 99cbc7010d2d..b016e8613d38 100644 --- a/packages/core/src/index.html +++ b/packages/core/src/index.html @@ -257,6 +257,7 @@ " > + diff --git a/packages/wallets/src/components/ModalProvider/ModalProvider.tsx b/packages/wallets/src/components/ModalProvider/ModalProvider.tsx new file mode 100644 index 000000000000..9dc57c2b73f4 --- /dev/null +++ b/packages/wallets/src/components/ModalProvider/ModalProvider.tsx @@ -0,0 +1,41 @@ +import React from 'react'; +import { createPortal } from 'react-dom'; + +type TModalContext = { + isOpen: boolean; + show: (ModalContent: React.ReactNode) => void; + hide: () => void; +}; + +const ModalContext = React.createContext(null); + +export const useModal = () => { + const context = React.useContext(ModalContext); + + if (!context) throw new Error('useModal() must be called within a component wrapped in ModalProvider.'); + + return context; +}; + +const ModalProvider = ({ children }: React.PropsWithChildren) => { + const [content, setContent] = React.useState(); + + const rootRef = React.useRef(document.getElementById('wallets_modal_root')); + + const show = (ModalContent: React.ReactNode) => { + setContent(ModalContent); + }; + + const hide = () => { + setContent(null); + }; + + return ( + + {children} + {rootRef.current && createPortal(content, rootRef.current)} + + ); +}; + +export default ModalProvider; diff --git a/packages/wallets/src/components/ModalProvider/index.ts b/packages/wallets/src/components/ModalProvider/index.ts new file mode 100644 index 000000000000..aa8895a69340 --- /dev/null +++ b/packages/wallets/src/components/ModalProvider/index.ts @@ -0,0 +1,3 @@ +import ModalProvider, { useModal } from './ModalProvider'; + +export { ModalProvider, useModal }; diff --git a/packages/wallets/src/index.tsx b/packages/wallets/src/index.tsx index d8aa16d9aa96..79fafecafc0d 100644 --- a/packages/wallets/src/index.tsx +++ b/packages/wallets/src/index.tsx @@ -1,11 +1,14 @@ import React from 'react'; import { APIProvider } from '@deriv/api'; +import { ModalProvider } from './components/ModalProvider'; import AppContent from './AppContent'; import './index.scss'; const App: React.FC = () => ( - + + + ); From 5d6767fe9a55f28a78b40db2999f3b1e53ee81ce Mon Sep 17 00:00:00 2001 From: Farhan Ahmad Nurzi <125247833+farhan-nurzi-deriv@users.noreply.github.com> Date: Thu, 21 Sep 2023 10:52:58 +0800 Subject: [PATCH 15/41] FarhanNurzi/Wallet Cashier (Deposit Real Acc Fiat & Crypto) (#10165) * feat: cashier-deposit * feat: inline message styles and remove unrelated changes * fix: request changes * fix: component name typos * fix: create useCashierParam, styles changes * chore: fix eslint error * refactor: useCashierParam * fix: remove props --- packages/api/src/hooks/index.ts | 5 +- .../api/src/hooks/useDepositCryptoAddress.ts | 20 +++++ .../api/src/hooks/useDepositFiatAddress.ts | 17 ++++ packages/api/src/hooks/useVerifyEmail.ts | 2 +- packages/wallets/.eslintrc.js | 8 ++ packages/wallets/package.json | 2 + packages/wallets/src/AppContent.tsx | 11 ++- .../InlineMessage/InlineMessage.scss | 78 ++++++++++++++++++ .../InlineMessage/InlineMessage.tsx | 53 +++++++++++++ .../src/components/InlineMessage/index.ts | 1 + .../WalletCashier/WalletCashier.tsx | 19 +++++ .../src/components/WalletCashier/index.ts | 1 + .../WalletCashierContent.scss | 6 ++ .../WalletCashierContent.tsx | 20 +++++ .../components/WalletCashierContent/index.ts | 1 + .../WalletCashierHeader.scss | 74 +++++++++++++++++ .../WalletCashierHeader.tsx | 79 +++++++++++++++++++ .../components/WalletCashierHeader/index.ts | 1 + .../WalletClipboard/WalletClipboard.scss | 12 +++ .../WalletClipboard/WalletClipboard.tsx | 42 ++++++++++ .../src/components/WalletClipboard/index.ts | 1 + .../WalletDepositCrypto.scss | 8 ++ .../WalletDepositCrypto.tsx | 17 ++++ .../components/WalletDepositCrypto/index.ts | 1 + .../WalletDepositCryptoAddress.scss | 26 ++++++ .../WalletDepositCryptoAddress.tsx | 43 ++++++++++ .../WalletDepositCryptoAddress/index.ts | 1 + .../WalletDepositCryptoCurrencyDetails.scss | 5 ++ .../WalletDepositCryptoCurrencyDetails.tsx | 15 ++++ .../index.ts | 1 + .../WalletDepositCryptoDisclaimers.scss | 15 ++++ .../WalletDepositCryptoDisclaimers.tsx | 54 +++++++++++++ .../WalletDepositCryptoDisclaimers/index.ts | 1 + .../WalletDepositFiat/WalletDepositFiat.scss | 7 ++ .../WalletDepositFiat/WalletDepositFiat.tsx | 38 +++++++++ .../src/components/WalletDepositFiat/index.ts | 1 + .../WalletListCardActions.scss} | 26 ++++++ .../WalletListCardActions.tsx} | 32 ++++++-- .../components/WalletListCardActions/index.ts | 1 + .../WalletListCardIActions/index.ts | 1 - .../WalletListCardIDetails.tsx | 4 +- .../WalletsAddMoreCarousel.tsx | 1 + .../WalletsAddMoreCarousel/index.ts | 5 +- .../WalletsCarouselContent.tsx | 4 +- packages/wallets/src/components/index.ts | 13 ++- .../wallets/src/hooks/useCashierParam.tsx | 24 ++++++ .../src/public/images/alert-annouce.svg | 1 + .../src/public/images/alert-danger.svg | 1 + .../wallets/src/public/images/alert-info.svg | 1 + .../src/public/images/checkmark-circle.svg | 3 + .../wallets/src/public/images/clipboard.svg | 7 ++ .../wallets/src/public/images/warning.svg | 1 + 52 files changed, 790 insertions(+), 21 deletions(-) create mode 100644 packages/api/src/hooks/useDepositCryptoAddress.ts create mode 100644 packages/api/src/hooks/useDepositFiatAddress.ts create mode 100644 packages/wallets/src/components/InlineMessage/InlineMessage.scss create mode 100644 packages/wallets/src/components/InlineMessage/InlineMessage.tsx create mode 100644 packages/wallets/src/components/InlineMessage/index.ts create mode 100644 packages/wallets/src/components/WalletCashier/WalletCashier.tsx create mode 100644 packages/wallets/src/components/WalletCashier/index.ts create mode 100644 packages/wallets/src/components/WalletCashierContent/WalletCashierContent.scss create mode 100644 packages/wallets/src/components/WalletCashierContent/WalletCashierContent.tsx create mode 100644 packages/wallets/src/components/WalletCashierContent/index.ts create mode 100644 packages/wallets/src/components/WalletCashierHeader/WalletCashierHeader.scss create mode 100644 packages/wallets/src/components/WalletCashierHeader/WalletCashierHeader.tsx create mode 100644 packages/wallets/src/components/WalletCashierHeader/index.ts create mode 100644 packages/wallets/src/components/WalletClipboard/WalletClipboard.scss create mode 100644 packages/wallets/src/components/WalletClipboard/WalletClipboard.tsx create mode 100644 packages/wallets/src/components/WalletClipboard/index.ts create mode 100644 packages/wallets/src/components/WalletDepositCrypto/WalletDepositCrypto.scss create mode 100644 packages/wallets/src/components/WalletDepositCrypto/WalletDepositCrypto.tsx create mode 100644 packages/wallets/src/components/WalletDepositCrypto/index.ts create mode 100644 packages/wallets/src/components/WalletDepositCryptoAddress/WalletDepositCryptoAddress.scss create mode 100644 packages/wallets/src/components/WalletDepositCryptoAddress/WalletDepositCryptoAddress.tsx create mode 100644 packages/wallets/src/components/WalletDepositCryptoAddress/index.ts create mode 100644 packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails.scss create mode 100644 packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails.tsx create mode 100644 packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/index.ts create mode 100644 packages/wallets/src/components/WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers.scss create mode 100644 packages/wallets/src/components/WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers.tsx create mode 100644 packages/wallets/src/components/WalletDepositCryptoDisclaimers/index.ts create mode 100644 packages/wallets/src/components/WalletDepositFiat/WalletDepositFiat.scss create mode 100644 packages/wallets/src/components/WalletDepositFiat/WalletDepositFiat.tsx create mode 100644 packages/wallets/src/components/WalletDepositFiat/index.ts rename packages/wallets/src/components/{WalletListCardIActions/WalletListCardIActions.scss => WalletListCardActions/WalletListCardActions.scss} (72%) rename packages/wallets/src/components/{WalletListCardIActions/WalletListCardIActions.tsx => WalletListCardActions/WalletListCardActions.tsx} (71%) create mode 100644 packages/wallets/src/components/WalletListCardActions/index.ts delete mode 100644 packages/wallets/src/components/WalletListCardIActions/index.ts create mode 100644 packages/wallets/src/hooks/useCashierParam.tsx create mode 100644 packages/wallets/src/public/images/alert-annouce.svg create mode 100644 packages/wallets/src/public/images/alert-danger.svg create mode 100644 packages/wallets/src/public/images/alert-info.svg create mode 100644 packages/wallets/src/public/images/checkmark-circle.svg create mode 100644 packages/wallets/src/public/images/clipboard.svg create mode 100644 packages/wallets/src/public/images/warning.svg diff --git a/packages/api/src/hooks/index.ts b/packages/api/src/hooks/index.ts index 93fd6320b71d..e98827eb15b5 100644 --- a/packages/api/src/hooks/index.ts +++ b/packages/api/src/hooks/index.ts @@ -1,3 +1,4 @@ +export { default as useAccountStatus } from './useAccountStatus'; export { default as useAccountTypes } from './useAccountTypes'; export { default as useAccountsList } from './useAccountsList'; export { default as useActiveAccount } from './useActiveAccount'; @@ -12,8 +13,10 @@ export { default as useCFDAccountsList } from './useCFDAccountsList'; export { default as useCreateMT5Account } from './useCreateMT5Account'; export { default as useCreateOtherCFDAccount } from './useCreateOtherCFDAccount'; export { default as useCtraderAccountsList } from './useCtraderAccountsList'; -export { default as useAccountStatus, default as useCtraderServiceToken } from './useCtraderServiceToken'; +export { default as useCtraderServiceToken } from './useCtraderServiceToken'; export { default as useCurrencyConfig } from './useCurrencyConfig'; +export { default as useDepositCryptoAddress } from './useDepositCryptoAddress'; +export { default as useDepositFiatAddress } from './useDepositFiatAddress'; export { default as useDerivezAccountsList } from './useDerivezAccountsList'; export { default as useDxtradeAccountsList } from './useDxtradeAccountsList'; export { default as useGetAccountStatus } from './useGetAccountStatus'; diff --git a/packages/api/src/hooks/useDepositCryptoAddress.ts b/packages/api/src/hooks/useDepositCryptoAddress.ts new file mode 100644 index 000000000000..2b3ae526f461 --- /dev/null +++ b/packages/api/src/hooks/useDepositCryptoAddress.ts @@ -0,0 +1,20 @@ +import { useCallback } from 'react'; +import useRequest from '../useRequest'; + +const useDepositCryptoAddress = () => { + const { data, mutate: _mutate, ...rest } = useRequest('cashier'); + const deposit_address = typeof data?.cashier !== 'string' ? data?.cashier?.deposit?.address : undefined; + + const mutate = useCallback( + () => _mutate({ payload: { cashier: 'deposit', provider: 'crypto', type: 'api' } }), + [_mutate] + ); + + return { + ...rest, + mutate, + data: deposit_address, + }; +}; + +export default useDepositCryptoAddress; diff --git a/packages/api/src/hooks/useDepositFiatAddress.ts b/packages/api/src/hooks/useDepositFiatAddress.ts new file mode 100644 index 000000000000..d6a829341ca7 --- /dev/null +++ b/packages/api/src/hooks/useDepositFiatAddress.ts @@ -0,0 +1,17 @@ +import { useCallback } from 'react'; +import useRequest from '../useRequest'; + +const useDepositFiatAddress = () => { + const { data, mutate: _mutate, ...rest } = useRequest('cashier'); + const deposit_iframe_url = typeof data?.cashier === 'string' ? data?.cashier : undefined; + + const mutate = useCallback(() => _mutate({ payload: { cashier: 'deposit', provider: 'doughflow' } }), [_mutate]); + + return { + ...rest, + mutate, + data: deposit_iframe_url, + }; +}; + +export default useDepositFiatAddress; diff --git a/packages/api/src/hooks/useVerifyEmail.ts b/packages/api/src/hooks/useVerifyEmail.ts index 2106b86a056d..6a50d9c1a0b4 100644 --- a/packages/api/src/hooks/useVerifyEmail.ts +++ b/packages/api/src/hooks/useVerifyEmail.ts @@ -1,5 +1,5 @@ import { useCallback } from 'react'; -import { useRequest } from '@deriv/api'; +import useRequest from '../useRequest'; type TPayload = Parameters>['mutate']>[0]['payload']; diff --git a/packages/wallets/.eslintrc.js b/packages/wallets/.eslintrc.js index eb3118aacc92..15ffdf9fb676 100644 --- a/packages/wallets/.eslintrc.js +++ b/packages/wallets/.eslintrc.js @@ -44,4 +44,12 @@ module.exports = { '@typescript-eslint/sort-type-constituents': 'error', '@typescript-eslint/no-unused-vars': 'error', }, + overrides: [ + { + files: ['*.ts', '*.mts', '*.cts', '*.tsx'], + rules: { + 'no-undef': 'off', + }, + }, + ], }; diff --git a/packages/wallets/package.json b/packages/wallets/package.json index 96bf08624011..d87ac1ba9ae4 100644 --- a/packages/wallets/package.json +++ b/packages/wallets/package.json @@ -6,7 +6,9 @@ "dependencies": { "@deriv/api": "^1.0.0", "embla-carousel-react": "^8.0.0-rc12", + "qrcode.react": "^1.0.0", "react": "^17.0.2", + "react-router-dom": "^5.2.0", "usehooks-ts": "^2.7.0" }, "devDependencies": { diff --git a/packages/wallets/src/AppContent.tsx b/packages/wallets/src/AppContent.tsx index 5bab75eb62f8..20a360bb0afa 100644 --- a/packages/wallets/src/AppContent.tsx +++ b/packages/wallets/src/AppContent.tsx @@ -1,20 +1,25 @@ import React from 'react'; import { useAuthorize } from '@deriv/api'; -import WalletsAddMore from './components/WalletsAddMoreCarousel'; +import useCashierParam from './hooks/useCashierParam'; import useDevice from './hooks/useDevice'; -import { DesktopWalletsList, Loader, WalletsCarousel } from './components'; +import { DesktopWalletsList, Loader, WalletCashier, WalletsAddMoreCarousel, WalletsCarousel } from './components'; import './AppContent.scss'; const AppContent: React.FC = () => { + const { activeCashierTab } = useCashierParam(); const { is_mobile } = useDevice(); const { isLoading } = useAuthorize(); if (isLoading) return ; + if (activeCashierTab) { + return ; + } + return (
{is_mobile ? : }
- +
); }; diff --git a/packages/wallets/src/components/InlineMessage/InlineMessage.scss b/packages/wallets/src/components/InlineMessage/InlineMessage.scss new file mode 100644 index 000000000000..39043785b846 --- /dev/null +++ b/packages/wallets/src/components/InlineMessage/InlineMessage.scss @@ -0,0 +1,78 @@ +.wallets-inline-message { + display: flex; + flex-direction: row; + align-items: flex-start; + padding: 8px; + gap: 8px; + border-radius: 4px; + height: min-content; + + &__lg { + @include tablet-up { + padding: 16px; + gap: 16px; + border-radius: 4px * 2; + } + } + + &__warning { + background: rgba(255, 173, 58, 0.16); + } + + &__information { + background: rgba(55, 124, 252, 0.16); + } + + &__announcement { + background: rgba(75, 180, 179, 0.16); + } + + &__error { + background: rgba(236, 63, 63, 0.16); + } + + &__icon { + &__sm { + margin-top: 1px; + + @include mobile { + margin-top: 0; + } + } + + &__md { + margin-top: 2px; + + @include mobile { + margin-top: 1px; + } + } + + &__lg { + @include mobile { + margin-top: 1px; + } + } + } + + &__messages { + display: flex; + flex-direction: column; + flex: 1; + align-self: stretch; + + &__xs { + margin-top: 1px; + + @include mobile { + margin-top: 2px; + } + } + + &__sm { + @include mobile { + margin-top: 1px; + } + } + } +} diff --git a/packages/wallets/src/components/InlineMessage/InlineMessage.tsx b/packages/wallets/src/components/InlineMessage/InlineMessage.tsx new file mode 100644 index 000000000000..0001362355b2 --- /dev/null +++ b/packages/wallets/src/components/InlineMessage/InlineMessage.tsx @@ -0,0 +1,53 @@ +import React, { useMemo } from 'react'; +import useDevice from '../../hooks/useDevice'; +import AlertAnnounce from '../../public/images/alert-annouce.svg'; +import AlertDanger from '../../public/images/alert-danger.svg'; +import AlertInfo from '../../public/images/alert-info.svg'; +import Warning from '../../public/images/warning.svg'; +import './InlineMessage.scss'; + +const type_icon_mapper = { + warning: Warning, + information: AlertInfo, + announcement: AlertAnnounce, + error: AlertDanger, +}; + +type TProps = RequireAtLeastOne<{ title: React.ReactNode; message: React.ReactNode; children: React.ReactNode }> & { + type?: keyof typeof type_icon_mapper; + size?: 'lg' | 'md' | 'sm' | 'xs'; +}; + +const InlineMessage: React.FC = ({ type = 'warning', size = 'xs', title, message, children }) => { + const { is_mobile } = useDevice(); + const Icon = type_icon_mapper[type]; + const icon_size = size === 'lg' && !is_mobile ? 24 : 16; + + const size_to_font_size_mapper: Record = useMemo( + () => ({ + xs: is_mobile ? '8px' : '10px', + sm: is_mobile ? '10px' : '12px', + md: is_mobile ? '12px' : '14px', + lg: is_mobile ? '14px' : '16px', + }), + [is_mobile] + ); + + const font_size = size_to_font_size_mapper[size]; + + return ( +
+ + + {title && {title}} + {message && {message}} + {children} + +
+ ); +}; + +export default InlineMessage; diff --git a/packages/wallets/src/components/InlineMessage/index.ts b/packages/wallets/src/components/InlineMessage/index.ts new file mode 100644 index 000000000000..85456efd86a6 --- /dev/null +++ b/packages/wallets/src/components/InlineMessage/index.ts @@ -0,0 +1 @@ +export { default as InlineMessage } from './InlineMessage'; diff --git a/packages/wallets/src/components/WalletCashier/WalletCashier.tsx b/packages/wallets/src/components/WalletCashier/WalletCashier.tsx new file mode 100644 index 000000000000..3f0854ba42f0 --- /dev/null +++ b/packages/wallets/src/components/WalletCashier/WalletCashier.tsx @@ -0,0 +1,19 @@ +import React from 'react'; +import { useActiveWalletAccount } from '@deriv/api'; +import WalletCashierContent from '../WalletCashierContent/WalletCashierContent'; +import WalletCashierHeader from '../WalletCashierHeader/WalletCashierHeader'; + +const WalletCashier = () => { + const { isLoading } = useActiveWalletAccount(); + + if (isLoading) return

Loading...

; + + return ( +
+ + +
+ ); +}; + +export default WalletCashier; diff --git a/packages/wallets/src/components/WalletCashier/index.ts b/packages/wallets/src/components/WalletCashier/index.ts new file mode 100644 index 000000000000..419aa2ea08d8 --- /dev/null +++ b/packages/wallets/src/components/WalletCashier/index.ts @@ -0,0 +1 @@ +export { default as WalletCashier } from './WalletCashier'; diff --git a/packages/wallets/src/components/WalletCashierContent/WalletCashierContent.scss b/packages/wallets/src/components/WalletCashierContent/WalletCashierContent.scss new file mode 100644 index 000000000000..8a093f4ceddf --- /dev/null +++ b/packages/wallets/src/components/WalletCashierContent/WalletCashierContent.scss @@ -0,0 +1,6 @@ +.wallets-cashier-content { + padding: 24px; + display: flex; + gap: 24px; + justify-content: center; +} diff --git a/packages/wallets/src/components/WalletCashierContent/WalletCashierContent.tsx b/packages/wallets/src/components/WalletCashierContent/WalletCashierContent.tsx new file mode 100644 index 000000000000..9ac512f5e451 --- /dev/null +++ b/packages/wallets/src/components/WalletCashierContent/WalletCashierContent.tsx @@ -0,0 +1,20 @@ +import React from 'react'; +import { useActiveWalletAccount } from '@deriv/api'; +import useCashierParam from '../../hooks/useCashierParam'; +import WalletDepositCrypto from '../WalletDepositCrypto/WalletDepositCrypto'; +import WalletDepositFiat from '../WalletDepositFiat/WalletDepositFiat'; +import './WalletCashierContent.scss'; + +const WalletCashierContent = () => { + const { data } = useActiveWalletAccount(); + const { activeCashierTab } = useCashierParam(); + + return ( +
+ {activeCashierTab === 'deposit' && + (data?.currency_config?.is_crypto ? : )} +
+ ); +}; + +export default WalletCashierContent; diff --git a/packages/wallets/src/components/WalletCashierContent/index.ts b/packages/wallets/src/components/WalletCashierContent/index.ts new file mode 100644 index 000000000000..41f936c2a985 --- /dev/null +++ b/packages/wallets/src/components/WalletCashierContent/index.ts @@ -0,0 +1 @@ +export { default as WalletCashierContent } from './WalletCashierContent'; diff --git a/packages/wallets/src/components/WalletCashierHeader/WalletCashierHeader.scss b/packages/wallets/src/components/WalletCashierHeader/WalletCashierHeader.scss new file mode 100644 index 000000000000..265efdd12ccf --- /dev/null +++ b/packages/wallets/src/components/WalletCashierHeader/WalletCashierHeader.scss @@ -0,0 +1,74 @@ +.wallets-cashier-header { + height: 160px; + padding: 24px 24px 0; + + @include mobile { + height: 122px; + } + + &__close-button { + all: unset; + font-size: 24px; + cursor: pointer; + } + + &__info { + display: flex; + justify-content: space-between; + align-items: center; + + &__top-left { + display: flex; + flex-direction: column; + gap: 6px; + + &__details { + display: flex; + gap: 24px; + align-items: center; + + &__title { + font-size: 16px; + } + } + + &__balance { + font-size: 32px; + font-weight: 700; + } + } + + &__top-right { + display: flex; + gap: 16px; + align-items: start; + } + } + + &__tabs { + position: absolute; + bottom: 0; + display: flex; + + &__tab { + all: unset; + display: flex; + width: 144px; + height: 48px; + padding: 0px 16px; + justify-content: center; + align-items: center; + gap: 8px; + flex-shrink: 0; + font-size: 18px; + text-transform: capitalize; + cursor: pointer; + + &--active { + border-radius: 16px 16px 0px 0px; + background-color: #ffffff; + font-weight: 700; + } + } + } +} diff --git a/packages/wallets/src/components/WalletCashierHeader/WalletCashierHeader.tsx b/packages/wallets/src/components/WalletCashierHeader/WalletCashierHeader.tsx new file mode 100644 index 000000000000..1c31571671cb --- /dev/null +++ b/packages/wallets/src/components/WalletCashierHeader/WalletCashierHeader.tsx @@ -0,0 +1,79 @@ +import React from 'react'; +import { useHistory } from 'react-router-dom'; +import { useActiveWalletAccount } from '@deriv/api'; +import useCashierParam, { TCashierTabs } from '../../hooks/useCashierParam'; +import useDevice from '../../hooks/useDevice'; +import { WalletGradientBackground } from '../WalletGradientBackground'; +import { WalletListCardBadge } from '../WalletListCardBadge'; +import { WalletListCardIcon } from '../WalletListCardIcon'; +import './WalletCashierHeader.scss'; + +const tabs = ['Deposit', 'Withdraw', 'Transfer', 'Transactions']; + +const WalletCashierHeader = () => { + const { data } = useActiveWalletAccount(); + const { activeCashierTab, getCashierParam } = useCashierParam(); + const { is_mobile } = useDevice(); + const history = useHistory(); + const { currency, currency_config, display_balance, landing_company_name, wallet_currency_type } = data || {}; + + const formattedLandingCompany = + landing_company_name === 'virtual' ? 'Demo' : landing_company_name?.toUpperCase() || 'SVG'; + + return ( + +
+
+
+
+

+ {currency} Wallet +

+ {landing_company_name && ( + + )} +
+

+ {display_balance} {currency} +

+
+
+ {wallet_currency_type && } + +
+
+
+ {tabs.map(tab => ( + + ))} +
+
+
+ ); +}; + +export default WalletCashierHeader; diff --git a/packages/wallets/src/components/WalletCashierHeader/index.ts b/packages/wallets/src/components/WalletCashierHeader/index.ts new file mode 100644 index 000000000000..9c399ad2a04b --- /dev/null +++ b/packages/wallets/src/components/WalletCashierHeader/index.ts @@ -0,0 +1 @@ +export { default as WalletCashierHeader } from './WalletCashierHeader'; diff --git a/packages/wallets/src/components/WalletClipboard/WalletClipboard.scss b/packages/wallets/src/components/WalletClipboard/WalletClipboard.scss new file mode 100644 index 000000000000..b005ad8a9047 --- /dev/null +++ b/packages/wallets/src/components/WalletClipboard/WalletClipboard.scss @@ -0,0 +1,12 @@ +.wallets-clipboard { + all: unset; + border-radius: 0px 4px 4px 0px; + border-top: 1px solid #e6e9e9; + border-right: 1px solid #e6e9e9; + border-bottom: 1px solid #e6e9e9; + display: flex; + align-items: center; + justify-content: center; + width: 30px; + height: 30px; +} diff --git a/packages/wallets/src/components/WalletClipboard/WalletClipboard.tsx b/packages/wallets/src/components/WalletClipboard/WalletClipboard.tsx new file mode 100644 index 000000000000..2eab77f2b333 --- /dev/null +++ b/packages/wallets/src/components/WalletClipboard/WalletClipboard.tsx @@ -0,0 +1,42 @@ +import React, { useEffect, useState } from 'react'; +import { useCopyToClipboard } from 'usehooks-ts'; +import CheckmarkCircle from '../../public/images/checkmark-circle.svg'; +import Clipboard from '../../public/images/clipboard.svg'; +import './WalletClipboard.scss'; + +type TProps = { + info_message?: string; + popoverAlignment: 'bottom' | 'left' | 'right' | 'top'; + success_message: string; + text_copy: string; +}; + +const WalletClipboard = ({ + // info_message, popoverAlignment, success_message, + text_copy, +}: TProps) => { + const [, copy] = useCopyToClipboard(); + const [isCopied, setIsCopied] = useState(false); + let timeout_clipboard: ReturnType; + + const onClick = (event: { stopPropagation: () => void }) => { + setIsCopied(true); + copy(text_copy); + timeout_clipboard = setTimeout(() => { + setIsCopied(false); + }, 2000); + event.stopPropagation(); + }; + + useEffect(() => { + return () => clearTimeout(timeout_clipboard); + }, []); // eslint-disable-line react-hooks/exhaustive-deps + + return ( + + ); +}; + +export default WalletClipboard; diff --git a/packages/wallets/src/components/WalletClipboard/index.ts b/packages/wallets/src/components/WalletClipboard/index.ts new file mode 100644 index 000000000000..4debf17954d3 --- /dev/null +++ b/packages/wallets/src/components/WalletClipboard/index.ts @@ -0,0 +1 @@ +export { default as WalletClipboard } from './WalletClipboard'; diff --git a/packages/wallets/src/components/WalletDepositCrypto/WalletDepositCrypto.scss b/packages/wallets/src/components/WalletDepositCrypto/WalletDepositCrypto.scss new file mode 100644 index 000000000000..e690a42749a5 --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCrypto/WalletDepositCrypto.scss @@ -0,0 +1,8 @@ +.wallets-deposit-crypto { + display: flex; + flex-direction: column; + justify-content: center; + gap: 24px; + padding-top: 60px; + position: relative; +} diff --git a/packages/wallets/src/components/WalletDepositCrypto/WalletDepositCrypto.tsx b/packages/wallets/src/components/WalletDepositCrypto/WalletDepositCrypto.tsx new file mode 100644 index 000000000000..dd5649558e4c --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCrypto/WalletDepositCrypto.tsx @@ -0,0 +1,17 @@ +import React from 'react'; +import WalletDepositCryptoAddress from '../WalletDepositCryptoAddress/WalletDepositCryptoAddress'; +import WalletDepositCryptoCurrencyDetails from '../WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails'; +import WalletDepositCryptoDisclaimers from '../WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers'; +import './WalletDepositCrypto.scss'; + +const WalletDepositCrypto = () => { + return ( +
+ + + +
+ ); +}; + +export default WalletDepositCrypto; diff --git a/packages/wallets/src/components/WalletDepositCrypto/index.ts b/packages/wallets/src/components/WalletDepositCrypto/index.ts new file mode 100644 index 000000000000..99eb4b41d06b --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCrypto/index.ts @@ -0,0 +1 @@ +export { default as WalletDepositCrypto } from './WalletDepositCrypto'; diff --git a/packages/wallets/src/components/WalletDepositCryptoAddress/WalletDepositCryptoAddress.scss b/packages/wallets/src/components/WalletDepositCryptoAddress/WalletDepositCryptoAddress.scss new file mode 100644 index 000000000000..9c5d026beb68 --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoAddress/WalletDepositCryptoAddress.scss @@ -0,0 +1,26 @@ +.wallets-deposit-crypto-address { + display: flex; + flex-direction: column; + align-items: center; + gap: 24px; + min-height: 60px; + + &__hash { + color: #000; + text-align: center; + font-size: 14px; + font-weight: 700; + padding: 0.8rem 1rem; + border-radius: 4px 0px 0px 4px; + border: 1px solid #e6e9e9; + + &-container { + display: flex; + align-items: center; + } + } + + &__loader { + height: 60px; + } +} diff --git a/packages/wallets/src/components/WalletDepositCryptoAddress/WalletDepositCryptoAddress.tsx b/packages/wallets/src/components/WalletDepositCryptoAddress/WalletDepositCryptoAddress.tsx new file mode 100644 index 000000000000..bb77e07e8c64 --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoAddress/WalletDepositCryptoAddress.tsx @@ -0,0 +1,43 @@ +import React, { useEffect } from 'react'; +import QRCode from 'qrcode.react'; +import { useAuthorize, useDepositCryptoAddress } from '@deriv/api'; +import useDevice from '../../hooks/useDevice'; +import { Loader } from '../Loader'; +import WalletClipboard from '../WalletClipboard/WalletClipboard'; +import './WalletDepositCryptoAddress.scss'; + +const WalletDepositCryptoAddress = () => { + const { data: deposit_crypto_address, isLoading, mutate } = useDepositCryptoAddress(); + const { isSuccess: isAuthorizeSuccess } = useAuthorize(); + const { is_mobile } = useDevice(); + + useEffect(() => { + if (isAuthorizeSuccess) { + mutate(); + } + }, [isAuthorizeSuccess, mutate]); + + if (isLoading) + return ( +
+ +
+ ); + + return ( +
+ +
+

{deposit_crypto_address}

+ +
+
+ ); +}; + +export default WalletDepositCryptoAddress; diff --git a/packages/wallets/src/components/WalletDepositCryptoAddress/index.ts b/packages/wallets/src/components/WalletDepositCryptoAddress/index.ts new file mode 100644 index 000000000000..075d87a217db --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoAddress/index.ts @@ -0,0 +1 @@ +export { default as WalletDepositCryptoAddress } from './WalletDepositCryptoAddress'; diff --git a/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails.scss b/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails.scss new file mode 100644 index 000000000000..985890077c3a --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails.scss @@ -0,0 +1,5 @@ +.wallets-deposit-crypto-currency-details { + font-weight: 700; + font-size: 20px; + align-self: center; +} diff --git a/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails.tsx b/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails.tsx new file mode 100644 index 000000000000..9b166ab050d3 --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/WalletDepositCryptoCurrencyDetails.tsx @@ -0,0 +1,15 @@ +import React from 'react'; +import { useActiveWalletAccount } from '@deriv/api'; +import './WalletDepositCryptoCurrencyDetails.scss'; + +const WalletDepositCryptoCurrencyDetails = () => { + const { data } = useActiveWalletAccount(); + const { currency_config } = data || {}; + return ( +

+ Send only {currency_config?.name} ({currency_config?.display_code}) to this address. +

+ ); +}; + +export default WalletDepositCryptoCurrencyDetails; diff --git a/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/index.ts b/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/index.ts new file mode 100644 index 000000000000..73dca96f3c3c --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoCurrencyDetails/index.ts @@ -0,0 +1 @@ +export { default as WalletDepositCryptoCurrencyDetails } from './WalletDepositCryptoCurrencyDetails'; diff --git a/packages/wallets/src/components/WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers.scss b/packages/wallets/src/components/WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers.scss new file mode 100644 index 000000000000..ea3fdf695fd3 --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers.scss @@ -0,0 +1,15 @@ +.wallets-deposit-crypto-disclaimers { + display: flex; + flex-direction: column; + justify-content: center; + gap: 24px; + + &__content { + line-height: 14px; + } + + &__note { + font-size: 12px; + line-height: 18px; + } +} diff --git a/packages/wallets/src/components/WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers.tsx b/packages/wallets/src/components/WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers.tsx new file mode 100644 index 000000000000..dbe3a8746c34 --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoDisclaimers/WalletDepositCryptoDisclaimers.tsx @@ -0,0 +1,54 @@ +import React from 'react'; +import { useActiveWalletAccount } from '@deriv/api'; +import useDevice from '../../hooks/useDevice'; +import { InlineMessage } from '../InlineMessage'; +import './WalletDepositCryptoDisclaimers.scss'; + +// Check with BE to see if we can get the network name from the API. +const crypto_currency_to_network_mapper: Record = { + BTC: 'Bitcoin (BTC)', + ETH: 'Ethereum (ETH)', + LTC: 'Litecoin (LTC)', + UST: 'Omnicore', + USDC: 'Ethereum (ERC20)', + eUSDT: 'Ethereum (ERC20) ', + tUSDT: 'Tron (TRC20) ', +}; + +const WalletDepositCryptoDisclaimers = () => { + const { data } = useActiveWalletAccount(); + const { is_mobile } = useDevice(); + const { currency, currency_config } = data || {}; + + return ( +
+ +
+

To avoid loss of funds:

+
+ {currency_config?.minimum_deposit && ( +
  • + A minimum deposit value of {currency_config?.minimum_deposit} {currency} is required. + Otherwise, the funds will be lost and cannot be recovered. +
  • + )} +
  • Do not send other currencies to this address.
  • +
  • Make sure to copy your Deriv account address correctly into your crypto wallet.
  • +
  • + In your cryptocurrency wallet, make sure to select{' '} + {currency && crypto_currency_to_network_mapper[currency]} network when you + transfer funds to Deriv. +
  • +
    +
    +

    + Note: You’ll receive an email when your deposit start being processed. +

    +
    + ); +}; + +export default WalletDepositCryptoDisclaimers; diff --git a/packages/wallets/src/components/WalletDepositCryptoDisclaimers/index.ts b/packages/wallets/src/components/WalletDepositCryptoDisclaimers/index.ts new file mode 100644 index 000000000000..d54135f3a09e --- /dev/null +++ b/packages/wallets/src/components/WalletDepositCryptoDisclaimers/index.ts @@ -0,0 +1 @@ +export { default as WalletDepositCryptoDisclaimers } from './WalletDepositCryptoDisclaimers'; diff --git a/packages/wallets/src/components/WalletDepositFiat/WalletDepositFiat.scss b/packages/wallets/src/components/WalletDepositFiat/WalletDepositFiat.scss new file mode 100644 index 000000000000..4fdabb78e5ca --- /dev/null +++ b/packages/wallets/src/components/WalletDepositFiat/WalletDepositFiat.scss @@ -0,0 +1,7 @@ +.wallets-deposit-fiat { + &__iframe { + width: 50%; + height: 65vh; + border: none; + } +} diff --git a/packages/wallets/src/components/WalletDepositFiat/WalletDepositFiat.tsx b/packages/wallets/src/components/WalletDepositFiat/WalletDepositFiat.tsx new file mode 100644 index 000000000000..ed637e6ce11f --- /dev/null +++ b/packages/wallets/src/components/WalletDepositFiat/WalletDepositFiat.tsx @@ -0,0 +1,38 @@ +import React, { useEffect, useState } from 'react'; +import { useAuthorize, useDepositFiatAddress } from '@deriv/api'; +import './WalletDepositFiat.scss'; + +const WalletDepositFiat = () => { + const { isSuccess: isAuthorizeSuccess } = useAuthorize(); + const { data: iframe_url, mutate, isError } = useDepositFiatAddress(); + const [isLoading, setIsLoading] = useState(true); + + useEffect(() => { + setIsLoading(true); + }, [iframe_url]); + + useEffect(() => { + if (isAuthorizeSuccess) { + mutate(); + } + }, [isAuthorizeSuccess, mutate]); + + if (isError) return

    Error

    ; + + return ( + + {isLoading &&

    Loading...

    } + {iframe_url && ( +