Selon la Banque populaire de Chine (BPoC), les crypto-monnaies sont importantes pour contribuer au développement du yuan numérique (e-CNY). Dans un document publié par l’institution, elle déclare s’être engagée à terminer ses recherches sur la monnaie numérique des banques centrales (CBDC).
Les recherches ont commencé en 2014 et se sont intensifiées au fil du temps. En 2016, la Banque populaire de Chine (PBoC) a fondé le Digital Currency Institute, qui a créé le prototype de la première génération de monnaies numériques. Depuis que cette étape a été couronnée de succès, les projets se sont développés plus rapidement. En effet, fin 2017, l’institution financière a commencé à travailler avec des organismes commerciaux pour tester l’e-CNY.
Dans le livre blanc publié par le BPoC, elle pointe des éléments essentiels pour le développement de la recherche. Elle évoque notamment le big data, le cloud computing, la blockchain, Internet et l’intelligence artificielle. Ensuite, il y a la pandémie de Covid-19, qui a favorisé la transformation numérique des entreprises et de profonds changements dans les services de paiement chinois.
Cependant, le BPoC fait un pas en arrière dans les actifs numériques. « Les crypto-monnaies comme Bitcoin (BTC) devraient être décentralisées et complètement anonymes. Cependant, en raison de leur manque de valeur intrinsèque, de fortes fluctuations de prix, d’une faible efficacité commerciale et d’une énorme consommation d’énergie, ils peuvent difficilement servir de monnaie dans la vie économique quotidienne. De plus, les crypto-monnaies sont principalement des instruments spéculatifs et comportent donc des risques pour la sécurité financière et la stabilité sociale.
Bien que la Banque populaire de Chine (BPoC) ne possède pas de crypto-monnaie en son cœur, les altcoins ne bénéficient pas d’une meilleure position. L’institut part du principe que ce dernier « présente des risques et des défis pour le système monétaire international, le système de paiement et de compensation, la politique monétaire, le contrôle des flux de capitaux transfrontaliers, etc. ».
L’État chinois pourrait devoir construire nouvelles infrastructures de paiement de détail et le type et Repenser la façon dont les e-CNY sont gérés. C’est ce que le BPoC a déclaré dans un document : « Le droit d’émettre des e-CNY appartient à l’État. Le BPoC est au cœur de l’e-CNY. Système d’exploitation CNY. Il émet des e-CNY. Les opérateurs agréés, qui sont des banques commerciales, distribuent et gèrent les e-CNY tout au long de leur cycle de vie, tandis que les opérateurs agréés et d’autres institutions commerciales échangent et distribuent des e-CNY au public « .
Um Pour réaliser la monnaie numérique de la banque centrale (CBDC), la Banque populaire de Chine (BPoC) a, selon son propre compte, des réunions avec d’autres organisations telles que la Bank für I les règlements internationaux, le Fonds monétaire international et la Banque mondiale.
La Banque populaire de Chine (BPoC) poursuit ses recherches sur l’introduction du yuan numérique (e-CNY). À cette fin, elle a organisé des réunions avec de nombreuses institutions internationales et a clarifié sa position sur les crypto-monnaies et les altcoins dans un document.
var intérêts = [];
const addInterest = ($, intérêts) => {
Intérêts = $ (document) .data (‘tct-ws-interests’);
if (interests.map (e => e.name) .indexOf (interest.name) === -1) {
interessen.push (intérêt);
}
$ (Document) .data (‘tct-ws-interests’, intérêts);
} ;
const envoyer = (ws, json) => {
// console.log (‘enverra json’, json, ws);
ws.send (JSON.stringify (json));
} ;
/ **
* Outil WS de base
* @Constructeur
* /
Outil de fonction () {
this.interestTools = {};
this.id = null;
this.ws = null;
/ ********************
* CARACTÉRISTIQUES DE BASE WS *
******************** /
/ **
* enregistrer
* une fois appelé, l’enregistrement est la première action pour démarrer la connexion ws
* /
this.register = (ws, $) => {
this.ws = ws;
$ = $;
envoyer (this.ws, {method: ‘register’,});
} ;
/ **
* Enregistré
* Le serveur envoie une réponse au client qui inclut le
* fonction enregistrée avec l’ID dans les données JSON
* /
this.registered = (id) => {
this.id = id;
this.registerInteressen ()
} ;
/ **
* Mettre à jour
* Mettez à jour la connexion au serveur pour vous assurer que nous ne sommes pas supprimés des futures réponses
* Appelé toutes les minutes
* /
this.refresh = () => {
// console.log (‘demandera la mise à jour’);
envoyer (this.ws, {
Méthode : ‘Mettre à jour’,
Données: {
id : this.id,
},
});
} ;
/ *********************************
* INTÉRÊTS SPÉCIFIQUES FONCTIONS WS *
********************************* /
/ **
* createInterestTool
* Retournera l’outil JS si vous êtes intéressé
* Chaîne d’intérêt @param (‘top winner’, …)
* @return objet | faux
* /
this.createInterestTool = (intérêt) => {
laisser outil = null;
échanger (intérêt) {
CAS du gagnant INTERESTS.top :
Affaire INTERESSEN.top.Loser :
Cas INTERESTS.top.unusualVolume :
Cas INTERESSEN.top.newAth :
Cas INTERESSEN.top.newAtl :
Outil = nouveau sommet (dies. $, intérêt);
Interruption;
Cas INTERESTS.ticker.table :
Outil = nouveau TableTicker (dies. $);
Interruption;
}
si (! outil) {
retour faux ;
}
Outil de récupération ;
} ;
/ **
* enregistrer l’intérêt
* Dites au serveur que nous sommes intéressés par ces données sur &
* Créer et enregistrer un outil d’intérêts
*
* Chaîne d’intérêt @param (‘top winner’, …)
* /
this.registerInterest = (intérêt) => {
let InterestTool = this.createInterestTool (intérêt);
if (interestTool! == false) {
const websocketData = {
Méthode : « Enregistrer les intérêts »,
Données: {
id : this.id,
Intérêt,
}
} ;
envoyer (this.ws, websocketData);
this.interestTools [Intérêt] = InterestTool;
}
} ;
/ **
* enregistrer les intérêts
* Obtenez des intérêts à partir de $ (‘Document’). Données (‘tct-ws-interests’)
* et l’envoyer au serveur
* /
this.registerInteressen = () => {
const $ = ceci. $ ;
// $ (document) .data (‘tct-ws-interests’) =’ {[{Nom : ‘Top-Winner’, Durée : ‘7d’}, {Nom : ‘Table-Ticker’,}, {. ..}]}
let interessen = $ (document) .data (‘tct-ws-interests’);
si (intérêts) {
Interests.forEach ((intérêt, indice, objet) => {
let InterestTool = this.createInterestTool (Interest.name);
if (interestTool! == false) {
// est valide, économisez les intérêts
this.interestTools [Interest.name] = InterestTool;
} autrement {
// invalide, supprimer l’intérêt
Objet.Épissage (index, 1);
}
});
si (intérêts.longueur> 0) {
// envoyer des intérêts valides au serveur
envoyer (this.ws, {method : ‘register-multi-interests’, data : {id : this.id, Interests}})
}
}
} ;
/ **
* Mettre à jour
* Le serveur a envoyé une mise à jour, nous demandons votre bon intérêt
* /
this.update = (données) => {
const specificData = getSpecificDataByInterest (data.interest, data);
this.interestTools [data.interest] .update (specificData);
} ;
this.updateTicker = (données) => {
// const specificData = getSpecificDataByInterest (data.interest, data);
// console.log (‘this.interestTools’, this.interestTools);
// this.interestTools [data.interest] .update (specificData);
this.interestTools [‘tickers’] updateTicker (données);
} ;
const getSpecificDataByInterest = (intérêt, données) => {
échanger (intérêt) {
CAS du gagnant INTERESTS.top :
Affaire INTERESSEN.top.Loser :
Cas INTERESTS.top.unusualVolume :
Cas INTERESSEN.top.newAth :
Cas INTERESSEN.top.newAtl :
Renvoie data.cryptos;
Cas INTERESTS.ticker.table :
Retour data.ticker;
}
} ;
/ **
* Mise à jourMulti
* Fonction de prise Web
* Le serveur a envoyé une mise à jour multiple
* /
this.updateMulti = (données) => {
for (const [Interest, InterestData] de Object.entries (data.interests)) {
DonnéesIntérêt.Intérêt = Intérêt ;
this.update (IntérêtDonnées);
}
envoyer (this.ws, {method : ‘Interests-received’, data : {id : this.id}} );
} ;
/ **
* Créer plusieurs
* Le serveur a envoyé une création multiple
* /
this.createMulti = (données) => {
// si (données.intérêt === »)
// @ todo faire la mise à jour plusieurs fois
} ;
}
const websocketUrl = ‘wss: //data-api.thecointribune.fr/ws’;
// const websocketUrl = ‘ws: // localhost: 4100’;
const INTÉRÊTS = {
dessus: {
Gagnant : ‘Top Gagnant’, –
Perdant : « Top perdant », –
volume inhabituel : ‘top-unusual-volume’,
newAth : ‘top-new-ath’,
newAtl: ‘top-neu-atl’,
},
Téléscripteur : {
Tableau : « Ticker »
},
} ;
const-tool = nouvel outil ();
const initWS = (ws) => {
ws = zéro ;
renvoyer un nouveau WebSocket (websocketUrl);
} ;
jQuery (document) .data (‘tct-ws-interests’, []);
jQuery (document) .ready (fonction ($) {
$ (‘. Cointribune-chargé’). cacher ();
Tenter {
soit ws = initWS (zéro);
ws.onerror = fonction (s) {
// out.innerHTML = e;
console.error (‘Erreur :’, e);
} ;
ws.onclose = fonction (s) {
// console.log (‘closed:’, e);
setTimeout (() => {
ws = initWS (ws);
}, 5000);
} ;
ws.onopen = fonction () {
// console.log (‘connecté’);
tool.register (ws, $);
setInterval (() => {
Outil.Mise à jour ();
}, 60 000);
} ;
ws.onmessage = fonction (message) {
const json = JSON.parse (message.data);
// console.log (‘Message’, json);
Commutateur (json.method) {
Cas ‘enregistré’ :
tool.registered (json.data.id);
Interruption;
Cas ‘mise à jour-multi’ :
tool.updateMulti (json.data);
Interruption;
Cas « registre-multi-intérêts-est-vide » :
tool.registerInteressen ();
Interruption;
Cas « multi-intérêts enregistrés » :
$ (‘. Cointribune-Chargement’). cacher ();
$ (‘. Cointribune-chargé’). Spectacle ();
tool.updateMulti (json.data);
Interruption;
Cas ‘rafraîchi’ :
Interruption;
Cas ‘Mise à jour’ :
// console.log (‘json.data’, json.data);
tool.update (json.data);
Interruption;
Cas ‘ticker mis à jour’ :
tool.updateTicker (json.data);
Interruption;
}
} ;
} attraper (err) {
console.error (‘impossible de se connecter au serveur ws’, err);
}
});
/ **
* Outil supérieur
* @param $ jQuery
* Chaîne de type @param ‘Top Gagnant’ || « Top perdant »
* @Constructeur
* /
Fonction Haut ($, Type) {
this.table = $ (`# $ {type}`);
this.tbody = $ (`# $ {type} tbody`);
/ **
*
* @param pourcentage de changement {nombre}
* @return {chaîne}
* /
const getPercentChangeClass = (percentChange) => PercentChange <0 ? 'négatif positif';
const getUrlName = (crypto) => `$ {crypto.name.replaceAll (/ s / g, ‘-‘).toLowerCase ()} – $ {crypto.symbol.toLowerCase ()}`;
const getCGUrl = (crypto) => « https://www.coingecko.com/en/coins/$$crypto.name.replaceAll(/→s.ouvern/g, ‘-‘). en minuscule ()} `;
Affichage de la fonction () {
const addOperator = (valeur) => valeur> 0 ? `$ {Valeur}` : valeur ;
// const reverseString = (str) => str.toString (). diviser (« »). sens inverse (). rejoindre (« »);
// const addNumberDelimiter = (str, delimiter) => {
// const [nombre, décimal] = str.toString().split (« . »);
// let result = reverseString (reverseString (nombre) .replace (/ ([^ .] {3}) / g, `$ 1`)). garniture (). remplacer (/ s / g, `$ {separator}`);
// si (décimal) {
// résultat = `. $ {décimal} `;
//}
// renvoie le résultat ;
//} ;
/ **
*
* @param {chaîne} chaîne
* @return {chaîne}
* /
const removeExtraZero = (str) => str.replace (/ ^ ([ d .] * [^ 0]) 0 * $ /, ‘$ 1’);
// this.volume24h = (volume24h) => `$ $ {addNumberDelimiter (volume24h, ‘,’)}`;
this.volume24h = (volume24h) => nouveau Intl.NumberFormat (‘en-US’, {style: ‘currency’, Currency: ‘USD’, minimumFractionDigits: 0}).format (volume24h);
this.percentChange24h = (percentChange) => `$ {addOperator (removeExtraZero (percentChange.toFixed (4)))}%`;
this.ticker = (image, icône, nom, url) => {
const isUrl = (texte) => URL ? ` $ {text}` : text ;
/ **
* Je l’ai fait parce que wp (je pense que c’est wp) encode src attr quand il est reconnu
* @typ {chaîne}
* /
laissez imageSrc = `src`;
imageSrc = `= » $ {image} « `;
Renvoie isUrl (` $ {symbol}`);
} ;
// this.price = (price) => `$ $ {addNumberDelimiter (removeExtraZero (price.toFixed (4)), ‘,’)}`;
this.price = (price) => nouveau format Intl.NumberFormat (‘en-US’, {style: ‘currency’, Currency: ‘USD’}) format (removeExtraZero (price.toFixed (4)));
}
this.displayer = nouvel afficheur ();
const convertLangToLong = (lang) => {
// @todo ajouter des langues ici
commutateur (long) {
Cas « in » :
retourner « en-US » ;
Affaire « ça » :
retourner « es-ES » ;
Cas « fr » :
Défaut:
retour ‘fr-FR’;
}
}
const createRow = (crypto) => {
let typeMatch = type.match (/ top-new- (at [h | l]) /);
// console.log (‘match?’, typeMatch, this.table.parent (). find (‘. coin-tribune – table-crypto – info’));
let extraRowHtml = »;
let price = crypto.current_price;
if (typeMatch) {
const formatDate = (date) => nouveau Intl.DateTimeFormat (convertLangToLong (jQuery (document) .data (‘langue’))) format (date);
const shortType = typeMatch [1];
extraRowHtml = `
Obtenez un coaching gratuit
une heure avec un expert.
Remplir le formulaire
et notre expert vous contactera
dans les 24 heures.
Obtenez une séance de coaching gratuite d’une heure avec un expert. Remplissez le formulaire et notre expert vous contactera dans les 24 heures.
NFT Tribune s’attaque à un projet de crypto Tribune : Blockchain et MedTech / Health Tribune: Blockchain and Music Tribune: Crypto and Gaming DeFi Tribune Cryptocurrency Tribune & Géopolitique Investissements alternatifs Tribune Tribune des lecteurs Stablecoins Trading Tribune et Minimal Trading Tribune CSS Tax Tribune
Premiers pas Binance Tout sur Bitcoin (BTC) Tout sur Ethereum (ETH)
© Copyright Cointribune – tous droits réservés document.currentScript.insertAdjacentHTML (‘afterend’, » new Intl.DateTimeFormat (document.documentElement.lang, {year: ‘numeric’}). format () »);
© Copyright Cointribune – tous droits réservés document.currentScript.insertAdjacentHTML (‘afterend’, » new Intl.DateTimeFormat (document.documentElement.lang , {année : ‘numérique’}). format () »);
Keywords: