ଟିଙ୍କଫ୍ ନିବେଶ ପାଇଁ ପରିସଂଖ୍ୟାନ ସେବାର ବିକାଶ ପଛରେ ପ୍ରେରଣାଦାତାମାନେ ଥିଲେ:
- ହାବେରେ ପ୍ରବନ୍ଧ “ଟିଙ୍କଫ୍ ନିବେଶ କ’ଣ କହୁନାହିଁ”
- ପ୍ଲାଟଫର୍ମ ବ୍ୟବହାରକାରୀଙ୍କ ଇଚ୍ଛାର ବିଶ୍ଳେଷଣ |
- ଆୟୋଗର ଗଣନା ବିଷୟରେ ଏକ ଆର୍ଟିକିଲ୍ |
- କ’ଣ ଆଲୋଚନା ହେବ?
- ପର୍ଯ୍ୟାୟ କ୍ରମେ ଏକ ପରିସଂଖ୍ୟାନ ସେବା ବିକାଶ:
- Tinkoff Invest API ସହିତ ସଂଯୋଗ |
- ଏକ ବ୍ରାଉଜରରେ Tinkoff Invest API ରୁ ତଥ୍ୟ ଅଙ୍କନ |
- ଦଲାଲ ରିପୋର୍ଟ ଏବଂ କାରବାର ଗ୍ରହଣ କରିବା |
- GetBrokerReport
- ସାମ୍ପ୍ରତିକ ତାରିଖରୁ ବିତରଣକୁ ଧ୍ୟାନରେ ରଖି ତାରିଖ ପାଇବା ପାଇଁ ପଦ୍ଧତି |
- ଉତ୍ପାଦନ ଅନୁରୋଧ ରିପୋର୍ଟ କରନ୍ତୁ |
- ଫଳାଫଳ:
- GetDividendsForeignIssuer |
- GetOperationsByCursor |
- ଆଗ୍ରହର ସୂଚନାର ଗଣନା ଏବଂ ଆଉଟପୁଟ୍ |
- ମୂଲ୍ୟ ସହିତ କାମ କରିବା |
- ଫ୍ୟୁଚର ଚୁକ୍ତିଗୁଡ଼ିକର ମୂଲ୍ୟ |
- OTC ବଜାର |
- ସାଧନଗୁଡ଼ିକ ଉପରେ ଗାଣିତିକ କାର୍ଯ୍ୟ |
- ମାଇକ୍ରୋ ସର୍ଭିସ୍ ପ୍ରସ୍ତୁତ!
- ଭବିଷ୍ୟତ ପାଇଁ ସିଦ୍ଧାନ୍ତ ଏବଂ ଯୋଜନାଗୁଡିକ |
- https://opexbot.info
କ’ଣ ଆଲୋଚନା ହେବ?
- ବିକାଶ ବିଷୟରେ କେବଳ ପ୍ରୟୋଗ ହୋଇଥିବା ଅଂଶ |
- ପ୍ରକୃତ ଜ୍ଞାନ ଏବଂ ଅଭିଜ୍ଞତା, ଯାହା ଆର୍ଥିକ ଉପକରଣ ସହିତ କାମ କରିବାରେ ଅତ୍ୟନ୍ତ ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ |
- କାର୍ଯ୍ୟ କରିବାକୁ ଥିବା ବିଷୟଗୁଡ଼ିକର ସମୀକ୍ଷା |
ତେଣୁ, ମୁଁ ବାଣିଜ୍ୟ ପରିସଂଖ୍ୟାନକୁ ଗଣନା କରିବାକୁ ଏବଂ ଏହାକୁ ଏକ ସୁବିଧାଜନକ ଉପାୟରେ କରିବାକୁ ଚାହୁଁଛି |
ପର୍ଯ୍ୟାୟ କ୍ରମେ ଏକ ପରିସଂଖ୍ୟାନ ସେବା ବିକାଶ:
- Tinkoff Invest API ସହିତ ସଂଯୋଗ |
- ଏକ ବ୍ରାଉଜରରେ Tinkoff Invest API ରୁ ତଥ୍ୟ ଅଙ୍କନ |
- ଦଲାଲ ରିପୋର୍ଟ ଏବଂ କାରବାର ଗ୍ରହଣ କରିବା |
- ଆଗ୍ରହର ସୂଚନାର ଗଣନା ଏବଂ ଆଉଟପୁଟ୍ |
- ଭବିଷ୍ୟତ ପାଇଁ ସିଦ୍ଧାନ୍ତ ଏବଂ ଯୋଜନାଗୁଡିକ |
Tinkoff Invest API ସହିତ ସଂଯୋଗ |
API ସହିତ ସଂଯୋଗ କରିବାକୁ, ଆପଣ https://github.com/Tinkoff/investAPI#sdk ଡକ୍ୟୁମେଣ୍ଟେସନ୍ ରୁ ଯେକ any ଣସି sdk ନେଇପାରିବେ | କିମ୍ବା npm ପ୍ୟାକେଜ୍ ” tinkoff-sdk-grpc-js ” | ଠିକାଦାରଙ୍କ ଦ୍ୱାରା ପ୍ୟାକେଜକୁ ଅତ୍ୟାଧୁନିକ ସଂସ୍କରଣକୁ ଅପଡେଟ୍ କରିବା ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ | ସଂସ୍ଥାପନ କରନ୍ତୁ |
npm i tinkoff-sdk-grpc-js |
ଯାଞ୍ଚ କରୁଛି |
const {createSdk} = ଆବଶ୍ୟକ (‘tinkoff-sdk-grpc-js’); // ଟୋକେନ୍ ଯାହା ଏହି କନଷ୍ଟ TOKEN = ‘YOURAPI’ ପରି ପ୍ରାପ୍ତ ହୋଇପାରିବ | // ପ୍ରୟୋଗର ନାମ ଯାହା ଦ୍ୱାରା ଆପଣ TCS ଲଗରେ ପାଇପାରିବେ | const appName = ‘tcsstat’; const sdk = createSdk (TOKEN, appName); (async () => { console.log (sdk.users.getAccounts ()); }) ();
ଫଳାଫଳ: କନସୋଲରେ ଆପଣଙ୍କର ଖାତାଗୁଡ଼ିକର ଏକ ତାଲିକା ପ୍ରଦର୍ଶିତ ହେବ | ଉଦାହରଣ ସ୍ୱରୂପ, ଆସନ୍ତୁ ନ୍ୟୁଆନ୍ସ ବିଶ୍ଳେଷଣ କରିବା:
- ଖାତା ତାଲିକାରେ ଏକ “ଇନଭେଷ୍ଟମେଣ୍ଟ ବ୍ୟାଙ୍କ” ଅଛି, ଯାହା ସହିତ ଆପଣ API ବ୍ୟବହାର କରି କାମ କରିପାରିବେ ନାହିଁ |
- ଦୟାକରି ଧ୍ୟାନ ଦିଅନ୍ତୁ ଯେ ଫିଲ୍ଡଗୁଡ଼ିକ camelCase ରେ ଆସିଥାଏ, ଯେତେବେଳେ ଡକ୍ୟୁମେଣ୍ଟେସନ୍ ରେ ଏହି ଫିଲ୍ଡଗୁଡିକ under_score ରେ ଉପସ୍ଥାପିତ ହୋଇଛି |
- ଏହା ସର୍ବତ୍ର ଏହିପରି ହେବ, ତେଣୁ ଆପଣ କେବଳ ଡକ୍ୟୁମେଣ୍ଟେସନ୍ ରୁ ଏକ ଫିଲ୍ଡ ନେଇ କପି କରିପାରିବେ ନାହିଁ |
ଉପଯୋଗୀ:
- ଆପଣ ଏହି କୋଡ୍ ପ୍ରୋଜେକ୍ଟ ଶାଖାରେ ପାଇପାରିବେ |
https://github.com/pskucherov/tcsstat/tree/step1 https://github.com/pskucherov/tcsstat/compare/step1
ଏକ ବ୍ରାଉଜରରେ Tinkoff Invest API ରୁ ତଥ୍ୟ ଅଙ୍କନ |
ମୁଁ next.js ଏବଂ socket.io ନେଇଛି | ଏହା ଏକ ଦୃ strong ସୁପାରିଶ ନୁହେଁ, ନିଜ ଇଚ୍ଛାନୁସାରେ ବାଛନ୍ତୁ |
npx create-next-app @ latest npm i socket.io socket.io- କ୍ଲାଏଣ୍ଟ |
ଆମେ ସଙ୍ଗେ ସଙ୍ଗେ ପରବର୍ତ୍ତୀ + ସକେଟ୍ + ଇନଭେଷ୍ଟାପି ବନ୍ଧୁତ୍ୱ ପଦକ୍ଷେପରେ ଅଗ୍ରଗତି କରୁ, ଏବଂ ସମସ୍ତ ବିବରଣୀ ପାଇଁ ଏହି ପଦକ୍ଷେପର ଉପଯୋଗୀ ବିଭାଗ ଦେଖନ୍ତୁ | ମୁଁ ସବିଶେଷ ବିବରଣୀ ବର୍ଣ୍ଣନା କରିବି:
- Nodejs (ସର୍ଭର) ପାର୍ଶ୍ୱରେ, ଏକ ପୃଷ୍ଠା / api / investapi.js ଫାଇଲ୍ ଅଛି | ଏହା ହେଉଛି ଯେଉଁଠାରେ ଆମେ socket.io ସର୍ଭର ସୃଷ୍ଟି କରି ଇନଭେଷ୍ଟାପି ସହିତ ସଂଯୋଗ କରୁ |
- ବ୍ରାଉଜର୍ (କ୍ଲାଏଣ୍ଟ) ପାର୍ଶ୍ୱରେ, ଆମେ ଏକ ସକେଟ୍ ମାଧ୍ୟମରେ ସର୍ଭର ସହିତ ସଂଯୋଗ କରୁ ଏବଂ ଦଲାଲଙ୍କ ଠାରୁ ଆକାଉଣ୍ଟ୍ ତଥ୍ୟ ଅନୁରୋଧ କରୁ |
- ଆମେ ସର୍ଭରରେ ଦଲାଲଙ୍କ ଠାରୁ ତଥ୍ୟ ଗ୍ରହଣ କରୁ, ତା’ପରେ ଏହାକୁ କ୍ଲାଏଣ୍ଟକୁ ପଠାଇବୁ | ଯେତେବେଳେ ସେମାନେ କ୍ଲାଏଣ୍ଟରେ ଗ୍ରହଣ କରନ୍ତି, ସେମାନେ ବ୍ରାଉଜରରେ ପ୍ରଦର୍ଶିତ ହୁଅନ୍ତି |
ଫଳାଫଳ: ବ୍ରାଉଜର୍ କନସୋଲରେ ଆମେ ଖାତା ବିଷୟରେ ସୂଚନା ଦେଖିପାରିବା | ତାହା ହେଉଛି, ଶେଷ ସୋପାନରେ, ଆମେ ସର୍ଭର କନସୋଲ୍ (ନୋଡେଜ୍) ରେ ଆକାଉଣ୍ଟ୍ ବିଷୟରେ ସୂଚନା ଦେଖିଲୁ, ସାମ୍ପ୍ରତିକ ପଦକ୍ଷେପରେ, ଆମେ ଏହି ସୂଚନାକୁ କ୍ଲାଏଣ୍ଟ (ବ୍ରାଉଜର୍) କୁ ସ୍ଥାନାନ୍ତର କରିଛୁ |
ବର୍ତ୍ତମାନ ଏହାକୁ ପ୍ରସ୍ତୁତ କରିବା ଯାହା ଦ୍ you ାରା ଆପଣ ବ୍ରାଉଜରରୁ ଏକ ଆକାଉଣ୍ଟ୍ ଚୟନ କରିପାରିବେ, ଏବଂ ଯଦି କ to ଣସି ଟୋକେନ୍ ନାହିଁ, ତେବେ କନସୋଲକୁ ଏକ ତ୍ରୁଟି ପଠାଯିବ | କାର୍ଯ୍ୟଟି ସରଳ ଏବଂ କିଛି ନୂଆ ନୁହେଁ, ତେଣୁ ମୁଁ କେବଳ କାର୍ଯ୍ୟଗୁଡ଼ିକର ଲିଙ୍କ୍ ଦେଇଥାଏ |
- https://github.com/pskucherov/tcsstat/commit/7e1ac57061e5e971588479015b06d8814d6609a9
- https://github.com/pskucherov/tcsstat/commit/b28ac973a57494f5232589b4cb6b9fb13b8af759
ଉପଯୋଗୀ:
- ପରବର୍ତ୍ତୀ ସମୟରେ କିପରି ବନ୍ଧୁତା କରିବେ ଏବଂ ସକେଟ୍ ଏଠାରେ ବିସ୍ତୃତ ଭାବରେ ବର୍ଣ୍ଣନା କରାଯାଇଛି |
- ଫ୍ରେଣ୍ଡସିପ୍ କୋଡ୍ ପରବର୍ତ୍ତୀ + ସକେଟ୍ + ନିବେଶ:
https://github.com/pskucherov/tcsstat/commit/a443a4ac1bb4f0aa898f638128755fe7391ee381 ଯାହାଙ୍କ ପାଇଁ ଉପରୋକ୍ତ କଷ୍ଟସାଧ୍ୟ, ତେବେ ଆମେ ଏହି ପର୍ଯ୍ୟାୟରେ ରହି କୋଡ୍ ସହିତ କାରବାର କରୁ | ଯଦି ଆପଣଙ୍କର ପ୍ରଶ୍ନ ଅଛି – ପଚାରନ୍ତୁ | https://github.com/pskucherov/tcsstat/tree/step2 https://github.com/pskucherov/tcsstat/compare/step1…step2
ଦଲାଲ ରିପୋର୍ଟ ଏବଂ କାରବାର ଗ୍ରହଣ କରିବା |
ଦଲାଲ ରିପୋର୍ଟ ଏବଂ କାରବାର ଗ୍ରହଣ କରିବାକୁ ତିନୋଟି ପଦ୍ଧତି ଅଛି |
ଆରମ୍ଭରୁ ଏହା ଜାଣିବା ଜରୁରୀ:
- ଦଲାଲ ରିପୋର୍ଟ ଟି -3 ମୋଡରେ ସୃଷ୍ଟି ହୋଇଥାଏ, ଯଥା। ସେମାନଙ୍କର ପ୍ରକୃତ ନିଷ୍ପାଦନ ପରେ ସେଠାରେ ବ୍ୟବସାୟଗୁଡିକ ପ୍ରଦର୍ଶିତ ହୁଏ |
- ସେହି ଅନୁଯାୟୀ, ଯଦି ଆପଣ ଗତ ଦୁଇ ଦିନ ପାଇଁ ଏହି ରିପୋର୍ଟ ଅନୁରୋଧ କରନ୍ତି, ତେବେ ଏହା ତିନି ଦିନ ମଧ୍ୟରେ ପ୍ରସ୍ତୁତ ହୋଇଯିବ |
- ଶେଷ ଦିନ ପାଇଁ କାରବାର ପାଇବାକୁ, ଆମେ କାରବାର ଗ୍ରହଣ ପାଇଁ ପଦ୍ଧତି ବ୍ୟବହାର କରୁ, କିନ୍ତୁ ମନେରଖନ୍ତୁ ଯେ ଦଲାଲ ରିପୋର୍ଟ ସୃଷ୍ଟି ହେବା ପରେ ସେମାନଙ୍କର id ଏବଂ ବିଷୟବସ୍ତୁ ବଦଳିପାରେ |
GetBrokerReport
ଏକ ଦଲାଲ୍ ରିପୋର୍ଟ ପାଇବାକୁ, ଆପଣଙ୍କୁ ଆକାଉଣ୍ଟ୍ id, ରିପୋର୍ଟର ଆରମ୍ଭ ତାରିଖ ଏବଂ ଶେଷ ତାରିଖ ନେବାକୁ ପଡିବ, କିନ୍ତୁ 31 ଦିନରୁ ଅଧିକ ନୁହେଁ | _Broker_report_request ସୃଷ୍ଟି କରିବାରେ, API କୁ ଏକ ରିପୋର୍ଟ ସୃଷ୍ଟି କରିବାକୁ ଆମେ ଏକ ଅନୁରୋଧ ପଠାଉ , ପ୍ରତିକ୍ରିୟାରେ ଏକ ଟାସ୍କ ଆଇଡ୍ ପ୍ରାପ୍ତ କର | ଏହା ପରେ, ଏହି ଟାସ୍କ Id ବ୍ୟବହାର କରି, ଆମେ _broker_report_response ରୁ ତଥ୍ୟ ପାଇଥାଉ |
- ଏହି ତାରିଖଗୁଡ଼ିକ ପାଇଁ ତୁମକୁ ଟାସ୍କାଇଡ୍ ସବୁଦିନ ପାଇଁ ସେଭ୍ କରିବାକୁ ପଡିବ |
- ଯେହେତୁ ଯଦି ଆପଣ ଏହାକୁ ହରାନ୍ତି, ତେବେ ଅନୁରୋଧ କରାଯାଇଥିବା ତାରିଖ ପାଇଁ ରିପୋର୍ଟ ପ୍ରଥମେ ପି generation ିର ଅନୁରୋଧର ଉତ୍ତରରେ ଆସିବ,
- ଏବଂ ତା’ପରେ ଏହା ଆଦ come ଆସିବ ନାହିଁ |
[/ spoiler] ଚାଲ କୋଡ୍ ଲେଖିବା ଆରମ୍ଭ କରିବା |
ସାମ୍ପ୍ରତିକ ତାରିଖରୁ ବିତରଣକୁ ଧ୍ୟାନରେ ରଖି ତାରିଖ ପାଇବା ପାଇଁ ପଦ୍ଧତି |
const getDateSubDay = (subDay = 5, start = true) => { const ତାରିଖ = ନୂତନ ତାରିଖ (); date.setUTCDate (date.getUTCDate () – ସବ୍ ଡେ); if (start) { date.setUTCHours (0, 0, 0, 0); } else { date.setUTCHours (23, 59, 59, 999); } ଫେରସ୍ତ ତାରିଖ; };
ଉତ୍ପାଦନ ଅନୁରୋଧ ରିପୋର୍ଟ କରନ୍ତୁ |
const brokerReport = ଅପେକ୍ଷା (sdk.operations.getBrokerReport) ({ generateBrokerReportRequest: { accountId, from, to, }, });
ଫଳାଫଳ:
- କମାଣ୍ଡର ପ୍ରଥମ ଏକଜେକ୍ୟୁଶନ୍ ର ଫଳାଫଳ ଭାବରେ, ଆମେ ଟାସ୍କ ଇଡ୍ ପାଇଥାଉ |
- ଦଲାଲଙ୍କ ପକ୍ଷରୁ ଏହି ରିପୋର୍ଟ ପ୍ରସ୍ତୁତ ହେବା ଆରମ୍ଭ ହୋଇଛି | ଯେତେବେଳେ ଏହା ପ୍ରସ୍ତୁତ ହୁଏ ଅଜ୍ଞାତ, ଆମେ ରିପୋର୍ଟକୁ ଅପେକ୍ଷା କରି ଟାସ୍କ ଇଡିକୁ ଅପେକ୍ଷା କରିଥାଉ |
- କାହିଁକି? କାରଣ ଯଦି ରିପୋର୍ଟ ପ୍ରସ୍ତୁତ ନୁହେଁ, ଏହା ଏକ ତ୍ରୁଟି ପକାଇଥାଏ | ଯଦି ଦଲାଲଙ୍କ ପକ୍ଷରେ ରିପୋର୍ଟ ପ୍ରସ୍ତୁତ ନୁହେଁ, ତେବେ ଏହା ଆପଣଙ୍କ କୋଡ଼ରେ ଏକ ତ୍ରୁଟି ଅଟେ | ଦୟାକରି ପ୍ରକ୍ରିୟା କରନ୍ତୁ: 30058 | INVALID_ARGUMENT | କାର୍ଯ୍ୟ ଏପର୍ଯ୍ୟନ୍ତ ସମାପ୍ତ ହୋଇନାହିଁ, ଦୟାକରି ପରେ ପୁନର୍ବାର ଚେଷ୍ଟା କରନ୍ତୁ |
ଏକ ରିପୋର୍ଟକୁ ଅପେକ୍ଷା କରିବା ଏବଂ ଗ୍ରହଣ କରିବା ପାଇଁ କୋଡ୍ ଏହିପରି କିଛି ଦେଖାଯାଏ |
const timer = async time => new ନୂତନ ପ୍ରତିଜ୍ return ା ଫେରସ୍ତ (ସମାଧାନ => setTimeout (ସମାଧାନ, ସମୟ)); } const getBrokerResponseByTaskId = async (taskId, page = 0) => { ଚେଷ୍ଟା { ଫେରସ୍ତ ଅପେକ୍ଷା (sdk.operations.getBrokerReport) ({ getBrokerReportRequest: { taskId, page, }, }); } ଧରିବା (e) { console.log (‘ଅପେକ୍ଷା’, ଇ); ସମୟ ଅପେକ୍ଷା କରନ୍ତୁ (10000); ଫେରସ୍ତ getBrokerResponseByTaskId (taskId, page); } };
ତା’ପରେ ସମାନ ଯାଦୁ ହୁଏ | ଆମେ ଆମର ସ୍କ୍ରିପ୍ଟ ବନ୍ଦ କରିଦେଉ, ଏହାକୁ ପୁଣି ଆରମ୍ଭ କରିବା, ଆମର ଟାସ୍କ ନାହିଁ | ଆମେ ଟାସ୍କ ଇଡି ଅନୁରୋଧ ସହିତ କୋଡ୍ ଏକଜେକ୍ୟୁଟ୍ କରୁ, କିନ୍ତୁ ଆମେ ଆଉ ଟାସ୍କଇଡ୍ ପାଇନାହୁଁ, କିନ୍ତୁ ତୁରନ୍ତ ରିପୋର୍ଟ | ଯାଦୁ! ଏବଂ ଯଦି ସବୁବେଳେ ଏହିପରି ଥାଏ ତେବେ ସବୁକିଛି ଠିକ୍ ହୋଇଥାନ୍ତା | କିନ୍ତୁ ଗୋଟିଏ ମାସ ମଧ୍ୟରେ ଆଦ data ତଥ୍ୟ ମିଳିବ ନାହିଁ | ଉପଯୋଗୀ :
https://github.com/pskucherov/tcsstat/tree/step3.1 https://github.com/pskucherov/tcsstat/compare/step3.1
- ଯଦି କେହି ଏହା ସାମ୍ନାକୁ ଆସନ୍ତି, ତେବେ ଏହି ପ୍ରସଙ୍ଗକୁ ସ୍ୱାଗତ | ସେମାନେ ଏହି ଯାଦୁକୁ ମରାମତି କରିବା ପରେ, ଏହା ଏହାର ଶକ୍ତି ହରାଇବ ଏବଂ କ h ଣସି ପ୍ରକାରେ ଭିନ୍ନ ହେବ | କିନ୍ତୁ ସାମ୍ପ୍ରତିକ ମୁହୂର୍ତ୍ତରେ (03/21/2023) ଏହା ଠିକ୍ ସେହିପରି କାମ କରେ |
GetDividendsForeignIssuer |
କେହି କେହି ଭାବି ପାରନ୍ତି ଯେ ପଦ୍ଧତି ପୂର୍ବ ପଦ୍ଧତି ସହିତ ସମାନ ଏବଂ ଆପଣ ଗୋଟିଏ ପଦ୍ଧତି ବ୍ୟବହାର କରିପାରିବେ ଯେଉଁଥିରେ ଆପଣ କେବଳ ଅପରେସନ୍ସର ନାମ ପରିବର୍ତ୍ତନ କରିବେ | କିନ୍ତୁ ସେମାନେ ଅନୁମାନ କରିନଥିଲେ! ସେଠାରେ ନାମକରଣ ଉଭୟ ପଦ୍ଧତି ଏବଂ ପ୍ରତ୍ୟାବର୍ତ୍ତିତ ସୂଚନାରେ ବହୁତ ଭିନ୍ନ | ଏବଂ ପୃଷ୍ଠା ଗଣନା 0 ରୁ ଆରମ୍ଭ ହୁଏ, ତା’ପରେ 1 ରୁ | ଏହି ସବୁରେ ଦ୍ୱନ୍ଦ୍ୱ ନହେବା ପାଇଁ, ଦୁଇଟି ଭିନ୍ନ ପଦ୍ଧତି ଲେଖିବା ସହଜ | ଯାହା ଅଜବ, କାରଣ କାର୍ଯ୍ୟର ତର୍କ ସମାନ | ମୁଁ ଏକ ଦୀର୍ଘ ସମୟ ପାଇଁ ଛେପ ପକାଇଲି ଯେତେବେଳେ ମୁଁ ଗୋଟିଏ ପଦ୍ଧତି ତିଆରି କରିବାକୁ ଚେଷ୍ଟା କଲି ଏବଂ ସେଠାରେ କମ୍ କୋଡ୍ ଥିଲା | ଏଠାରେ କ examples ଣସି ଉଦାହରଣ ରହିବ ନାହିଁ |
GetOperationsByCursor |
ତିନିଜଣଙ୍କର ମୋର ପ୍ରିୟ | ଯଦିଓ ସବୁଠାରୁ ସଠିକ୍ ନୁହେଁ, କିନ୍ତୁ ସବୁଠାରୁ ପର୍ଯ୍ୟାପ୍ତ | ଆମେ ଏକ ଖାତା ସୃଷ୍ଟି ଆରମ୍ଭରୁ ସର୍ବାଧିକ ସମ୍ଭାବ୍ୟ ତାରିଖ ପର୍ଯ୍ୟନ୍ତ ଏକ ଅନୁରୋଧ କରିଥାଉ (ଏକ ଆକାଉଣ୍ଟ୍ ବନ୍ଦ କରିବା କିମ୍ବା ସାମ୍ପ୍ରତିକ) | ଆମେ ଉତ୍ତର ପାଇଥାଉ, କର୍ସର୍ ନିଅ ଏବଂ ଯେପର୍ଯ୍ୟନ୍ତ ଡାଟା ଅଛି ସେ ପର୍ଯ୍ୟନ୍ତ ପୁନ request ଅନୁରୋଧ | ଏବଂ ଉପରୋକ୍ତ ଉଦାହରଣ ଅପେକ୍ଷା କୋଡ୍ ଅଧିକ ସଂକ୍ଷିପ୍ତ ଅଟେ |
const timer = async time => new ନୂତନ ପ୍ରତିଜ୍ return ା ଫେରସ୍ତ (ସମାଧାନ => setTimeout (ସମାଧାନ, ସମୟ)); } const getOperationsByCursor = async (sdk, accountId, from, to, cursor = ”) => { try { const reqData = { accountId, from, to, limit: 1000, state: sdk.OperationState.OPERATION_STATE_EXECUTED, ବିନା କମିଶନ: ମିଥ୍ୟା, ବିନା ଟ୍ରେଡ୍: ମିଥ୍ୟା, ରାତାରାତି ବିନା: ମିଥ୍ୟା, କର୍ସର୍, }; ପ୍ରତ୍ୟାବର୍ତ୍ତନ sdk.operations.getOperationsByCursor (reqData); } ଧରିବା (ଇ) tim ସମୟ ଅପେକ୍ଷା (60000); ଫେରସ୍ତ getOperationsByCursor (sdk, accountId, from, to, cursor = ”); } };
ଚାଲିବାକୁ ଥିବା ଡ୍ରାଫ୍ଟ ଏଠାରେ ଅଛି : https://github.com/pskucherov/tcsstat/tree/step3.3 ଆମର ପ୍ରୟୋଗ ଯଦି ସଠିକ୍ ଭାବରେ କରାଯାଏ, ତେବେ ଖାତାର ସମ୍ପୂର୍ଣ୍ଣ ଅସ୍ତିତ୍ୱ ପାଇଁ ଆପଣଙ୍କୁ ଦଲାଲ୍ ରିପୋର୍ଟ ପାଇବା ଆବଶ୍ୟକ | ଏବଂ ନିଖୋଜ ତଥ୍ୟ ପାଇଁ, ସେହି ସମାନ T-3s, ଅପରେସନ୍ ରୁ ପୁନ o ଲୋଡ୍ କରନ୍ତୁ | କିନ୍ତୁ ଏହାକୁ ଏକ ପୃଥକ ପ୍ରବନ୍ଧରେ ଅଲଗା କରାଯାଇପାରେ | ମୂଖ୍ୟ ନ୍ୟୁଆନ୍ସ ମଧ୍ୟରୁ ଯାହା ତୁମେ ସାମ୍ନା କରିବ ତାହା ହେଉଛି ଆଲୁ ଅପରେସନ୍ ଏବଂ ଏକ ଦଲାଲ୍ ରିପୋର୍ଟ |
- ଯଦି ଆଜି ଆପଣ ଏକ ଦଲାଲ୍ ରିପୋର୍ଟ ଏବଂ ଆବଶ୍ୟକ ତାରିଖ ପାଇଁ କାରବାର ଗ୍ରହଣ କରିଛନ୍ତି, ଏହାକୁ ସମସ୍ତ ଡାଟାବେସରେ ରଖନ୍ତୁ, ତେବେ କ problems ଣସି ଅସୁବିଧା ନାହିଁ |
- ଆସନ୍ତାକାଲି ଯେତେବେଳେ ତୁମେ ରିପୋର୍ଟ ଏବଂ ଅପରେସନ୍ସରୁ ତଥ୍ୟର ପରବର୍ତ୍ତୀ ଅଂଶ ଗ୍ରହଣ କରିବ ଏବଂ ବିଦ୍ୟମାନ ଡାଟାବେସ୍ ସହିତ ସିଙ୍କ୍ରୋନାଇଜ୍ କରିବାକୁ ନିଷ୍ପତ୍ତି ନେବ, ତୁମର ଅସୁବିଧା ହେବ |
- ପ୍ରକ୍ରିୟାକରଣ ପରେ ଅସନ୍ତୁଷ୍ଟ କିମ୍ବା id ପରିବର୍ତ୍ତନ ବିଷୟରେ ଅନେକ ନ୍ୟୁଆନ୍ସ |
- ତା’ପରେ OTC ବଜାର ପାଇଁ, id ର ଆଦ match ମେଳ ଖାଉ ନାହିଁ |
- API ର ବିଶେଷତ୍ୱ ହେତୁ ସିଙ୍କ୍ରୋନାଇଜ୍ ଯନ୍ତ୍ରର ନ୍ୟୁଆନ୍ସ, ଯାହା ପୁନର୍ବାର ସମକକ୍ଷ ହୁଏ ନାହିଁ | କିନ୍ତୁ ତାହା ଅନ୍ୟ ଏକ କାହାଣୀ |
ଚାଲନ୍ତୁ ଆମର ଅନୁପ୍ରୟୋଗରେ ଅପରେସନ୍ ବିଷୟରେ ସୂଚନା ପାଇବା | ଡାଟା କେଉଁଠାରେ ପ୍ରକ୍ରିୟାକରଣ ଏବଂ ଗଚ୍ଛିତ ହେବ ତାହା ମୁଖ୍ୟ ପ୍ରଶ୍ନ ହେବ |
- ଯଦି ଆପଣ ଏହା ନିଜ ପାଇଁ କରନ୍ତି, ଆପଣ ବିଭିନ୍ନ ଉପକରଣରୁ ସମାନ ତଥ୍ୟ ଖାଇବେ | ତାପରେ ଆପଣଙ୍କୁ ସର୍ଭରରେ ଡାଟା ପ୍ରକ୍ରିୟାକରଣ ଏବଂ ସଂରକ୍ଷଣ କରିବା ଆବଶ୍ୟକ |
- ଯଦି ଆପଣଙ୍କର ଅନେକ ଭିନ୍ନ ଭିନ୍ନ ଉପଭୋକ୍ତା ବ୍ୟବହାର କରନ୍ତି, ତେବେ ଆପଣ ଅଧିକ ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ ବିଷୟ ସ୍ଥିର କରିବାକୁ ପଡିବ: ଉପଭୋକ୍ତାମାନଙ୍କର ଗତି କିମ୍ବା ଆପଣଙ୍କ ପାର୍ଶ୍ୱରେ ଲୁହା ସଞ୍ଚୟ | ଯିଏ ଅସୀମ ପରିମାଣର ହାର୍ଡୱେର୍ ଦେଇପାରିବ ସେ ନିଜ ସର୍ଭରରେ ସବୁକିଛି ଗଣନା କରେ ଏବଂ ଏହାକୁ ଉପଭୋକ୍ତାମାନଙ୍କ ପାଇଁ ସୁପର ଦ୍ରୁତ ଗତିରେ ବ୍ୟବହାର କରେ, ଯେପରିକି ବ୍ୟାଟେରୀ ଏବଂ ଟ୍ରାଫିକ୍, ଯାହା ଫୋନରେ ବହୁତ ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ |
ପ୍ରତିବଦଳରେ, ବ୍ରାଉଜରରେ ଗଣନା କରିବା ହେଉଛି ସର୍ବୋଚ୍ଚ ସମାଧାନ ନୁହେଁ | ତେଣୁ, ଯାହା ମହଙ୍ଗା ନୁହେଁ, ଆମେ ଏହାକୁ ଆମର ସର୍ଭରରେ ବିଚାର କରୁ | ଆମେ ବାକି ସବୁକୁ ଗ୍ରାହକଙ୍କୁ ଛାଡିଥାଉ | ମୁଁ ପ୍ରକୃତରେ ସର୍ଭରରେ କମିଶନ ନେବାକୁ ଏବଂ ଗଣନା କରିବାକୁ ଚାହୁଁଛି | କିନ୍ତୁ ଏଠାରେ “ଇଣ୍ଟରାକ୍ଟିଭିଟି” ନାମକ ନ୍ୟୁଆନ୍ସ ଆସେ | ଧରାଯାଉ ତୁମର ହଜାରେ ଅପରେସନ୍ ଅଛି ଏବଂ ସେଗୁଡିକ ଗ୍ରହଣ କରିବାକୁ ପାଞ୍ଚ ମିନିଟ୍ ସମୟ ଲାଗେ | ଏହି ସମୟରେ ଉପଭୋକ୍ତା କ’ଣ ପାଇବେ? ସ୍ପିନର୍? ଅଗ୍ରଗତି? ଇନଫା କେତେ ଅପଲୋଡ୍ ହେଲା ସେ ବିଷୟରେ? “ସକ୍ରିୟ ଅପେକ୍ଷା” ବ୍ୟବହାର କରିବା ଆଦର୍ଶ ଅଟେ ଯେତେବେଳେ ପ୍ରକ୍ରିୟାରେ ଉପଭୋକ୍ତା କିଛି ଦେଖିପାରନ୍ତି | ଫଳାଫଳ ହେଉଛି :
- ପୃଷ୍ଠା ଲୋଡିଂ |
- ସମସ୍ତ ଇନଭଏସ୍ ଅନୁରୋଧ କରାଯାଇଛି |
- ଏହା ପରେ, ସମସ୍ତ ଆକାଉଣ୍ଟ୍ ପାଇଁ କାର୍ଯ୍ୟକାରୀ ହୋଇଥିବା କାରବାର ପାଇଁ ଆୟୋଗ ସହିତ ସମସ୍ତ କାରବାର ଅନୁରୋଧ କରାଯାଏ | ଯେହେତୁ ଡାଟା ଗ୍ରହଣ କରାଯାଇଛି, ଏହା ବ୍ରାଉଜରରେ ଉପସ୍ଥାପିତ ହୋଇଛି |
ପ୍ରତ୍ୟେକ ଥର ଇଭେଣ୍ଟଗୁଡିକରେ ତଥ୍ୟ ଫିଲ୍ଟର୍ ନକରିବା ପାଇଁ, ଆମେ ପ୍ରତ୍ୟେକ ଆକାଉଣ୍ଟ୍ ପାଇଁ ନିଜସ୍ୱ ଇଭେଣ୍ଟ ଟାଣିବା | ଏହି ପରି:
socket.emit (‘sdk: getOperationsCommissionResult_’ + accountId, { ଆଇଟମ୍: ଡାଟା? .items, inPresent: Boolean (nextCursor), });
ଲଞ୍ଚ ହେବାକୁ ଥିବା ଡ୍ରାଫ୍ଟ ଏଠାରେ ଅଛି: https://github.com/pskucherov/tcsstat/tree/step3 https://github.com/pskucherov/tcsstat/compare/step2…step3 ଆଗକୁ ବ .ୁଛି ଏହା ବହୁତ ଭଲ ଯେ ଆପଣ ଏହି ରେଖା ପ read ିଛନ୍ତି!
ଆଗ୍ରହର ସୂଚନାର ଗଣନା ଏବଂ ଆଉଟପୁଟ୍ |
କିଏ କେଉଁ ସୂଚନା ଆବଶ୍ୟକ କରେ ତାହା ଉପରେ ନିର୍ଭର କରେ | ତେଣୁ, ମୁଁ ତୁରନ୍ତ ତୁମକୁ ମୁଖ୍ୟ ନ୍ୟୁନାନ୍ସକୁ କହିବି ଯାହା ତୁମେ ସାମ୍ନା କରିବ |
ମୂଲ୍ୟ ସହିତ କାମ କରିବା |
ଫାଇନାନ୍ସ ସହିତ କାମ କରୁଥିବା ସମସ୍ତେ ଜାଣନ୍ତି ଯେ ଟଙ୍କା କାରବାର କେବଳ ସମ୍ପୂର୍ଣ୍ଣ ସଂଖ୍ୟା ସହିତ କରାଯିବା ଉଚିତ | ଦଶମିକ ବିନ୍ଦୁ ପରେ ମୂଲ୍ୟଗୁଡିକର ଅସତ୍ୟତା ଏବଂ ବହୁ ସଂଖ୍ୟକ ଅପରେସନ୍ ସହିତ ସମନ୍ୱିତ ତ୍ରୁଟି ହେତୁ | ସେଥିପାଇଁ ସମସ୍ତ ମୂଲ୍ୟ ନିମ୍ନ ମନି ଭାଲ୍ୟୁ ଫର୍ମାଟରେ ଉପସ୍ଥାପିତ ହୋଇଛି |
କ୍ଷେତ୍ର | ଟାଇପ୍ କରନ୍ତୁ | | ବର୍ଣ୍ଣନା |
---|---|---|
ମୁଦ୍ରା | ଷ୍ଟ୍ରିଙ୍ଗ୍ | ଷ୍ଟ୍ରିଙ୍ଗ୍ ISO ମୁଦ୍ରା କୋଡ୍ | |
ଏକକଗୁଡ଼ିକ | int64 | ରାଶିର ପୂର୍ଣ୍ଣ ଅଂଶ, ଏକ ନକାରାତ୍ମକ ସଂଖ୍ୟା ହୋଇପାରେ | |
ନାନୋ | | int32 | ପରିମାଣର ଭଗ୍ନାଂଶ ଅଂଶ, ଏକ ନକାରାତ୍ମକ ସଂଖ୍ୟା ହୋଇପାରେ | |
ଆମେ ସେମାନଙ୍କୁ ପୃଥକ ଭାବରେ ପ୍ରକ୍ରିୟାକରଣ କରୁ, ତାପରେ ସେମାନଙ୍କୁ ମୂଲ୍ୟ ମୂଲ୍ୟକୁ ଆଣିବା:
quotation.units + quotation.nano / 1e9 |
ଫ୍ୟୁଚର ଚୁକ୍ତିଗୁଡ଼ିକର ମୂଲ୍ୟ |
ଫ୍ୟୁଚରର ମୂଲ୍ୟ ପଏଣ୍ଟରେ ଉପସ୍ଥାପିତ ହୁଏ, ଯେତେବେଳେ ତୁମର ମୁଦ୍ରା ଭବିଷ୍ୟତ ଥାଏ, ତୁମେ ହାର ଜାଣିବା ଆବଶ୍ୟକ | ଏବଂ ଅବଶ୍ୟ ପଏଣ୍ଟରେ ମୂଲ୍ୟ ଏବଂ ମୂଲ୍ୟ ଷ୍ଟେପ୍ | ଯେତେବେଳେ ଆପଣ କାରବାରରୁ ଲାଭ ହିସାବ କରନ୍ତି, ଏହା ଶୁଟ୍ ହୋଇପାରେ, କାରଣ | ଯଦି ତୁମେ ପରିମାଣକୁ ମୂଲ୍ୟକୁ ବ lying ାଇ ସମୁଦାୟ ରାଶି ଗଣନା କର | ଏଠାରେ ଆପଣ ସାବଧାନ ହେବା ଆବଶ୍ୟକ | ବର୍ତ୍ତମାନ ପାଇଁ, ଏହା କିପରି ଯାଉଛି ଦେଖିବା | ଏହା ମୁଦ୍ରା ଫ୍ୟୁଚର ପାଇଁ ପ୍ରଯୁଜ୍ୟ, ଅନ୍ୟ ସ୍ଥାନରେ ଏହା ସହିତ ସବୁକିଛି ଠିକ ଅଛି |
OTC ବଜାର |
ଏହି ବଜାରରେ ଅନେକ ବିଶେଷତା ଅଛି, ତେଣୁ ଆସନ୍ତୁ ଏହା ଉପରେ ପୃଥକ ଭାବରେ ଅପରେସନ୍ ଅଧ୍ୟୟନ କରିବା | ଯେତେବେଳେ ଆପଣ ସିଙ୍କ୍ରୋନାଇଜ୍ ଅପରେସନ୍ ଆରମ୍ଭ କରିବେ, ଏହା ଜଣାପଡିବ ଯେ ଯନ୍ତ୍ରକୁ ସଠିକ୍ ଭାବରେ ମେଳାଇବା ପାଇଁ ଆପଣଙ୍କୁ ଫିଜି / ଟିକର୍ ସମାନ ଫର୍ମକୁ ଆଣିବା ଆବଶ୍ୟକ | ଯେତେବେଳେ ଆପଣ ଏହାକୁ ଦଲାଲ ରିପୋର୍ଟ ସହିତ ସିଙ୍କ୍ରୋନାଇଜ୍ କରିବା ଆରମ୍ଭ କରିବେ, ଏହା ଜଣାପଡିବ ଯେ ସମାନ କାରବାରର ଟ୍ରେଡ୍ ଆଇଡି କାରବାରରେ ଆରମ୍ଭରେ ଅକ୍ଷର ଅଛି ଏବଂ ସେଗୁଡ଼ିକ ଦଲାଲ ରିପୋର୍ଟରେ ନାହିଁ | ତେଣୁ, ସେମାନଙ୍କୁ ତୁଳନା କରାଯାଇପାରିବ ନାହିଁ … ଆହେମ୍-ଆହେମ୍ … ତୁଳନାତ୍ମକ ଭାବରେ! ମୁଁ ବାଣିଜ୍ୟ ସମୟ, ଟିକର ଏବଂ ମେଳ ଖାଉଛି ଯେ ଗୋଟିଏ ଟ୍ରେଡ୍ ଆଇ ଅନ୍ୟଟିରେ ଅଛି | ଠିକ୍, ମୁଁ ଜାଣେ ନାହିଁ ଯିଏ ଏହାର ସାମ୍ନା କରେ ଏବଂ ଯିଏ ଏହାର ଯତ୍ନ ନିଏ, ଏହି ସମସ୍ୟାକୁ ଆସ କିମ୍ବା ଏକ ନୂତନ ଆରମ୍ଭ କର |
ସାଧନଗୁଡ଼ିକ ଉପରେ ଗାଣିତିକ କାର୍ଯ୍ୟ |
ସମଗ୍ର ତାଲିକା ସହିତ ଗାଣିତିକ କାର୍ଯ୍ୟ କରିବା, ଦେଖିବା ବିନା, ଅସମ୍ଭବ | ନରମକୁ ଗରମ ଯୋଗ ନକରିବା ପାଇଁ, ଆମେ ସର୍ବଦା ମୁଦ୍ରା ଯାଞ୍ଚ କରିଥାଉ ଏବଂ କେବଳ ପ୍ରକ୍ରିୟା ଯଦି ଆମେ ନିଶ୍ଚିତ ଯେ ମୁଦ୍ରା ମେଳ ହୁଏ, ଏବଂ ପଏଣ୍ଟଗୁଡିକ ଇଚ୍ଛାମୃତ ମୁଦ୍ରାରେ ରୂପାନ୍ତରିତ ହୁଏ | ବ୍ୟାଙ୍କ ନମ୍ବର ସହିତ କାମ କରିବା ବିଷୟରେ ଜ୍ knowledge ାନ ସହିତ ସଶସ୍ତ୍ର, ଆମେ ପ୍ରତ୍ୟେକ ଆକାଉଣ୍ଟରେ ଖର୍ଚ୍ଚ ହୋଇଥିବା କମିଶନ ହିସାବ କରିବୁ | ଏହିପରି: https://github.com/pskucherov/tcsstat/tree/step4 https://github.com/pskucherov/tcsstat/compare/step3…step4
ମାଇକ୍ରୋ ସର୍ଭିସ୍ ପ୍ରସ୍ତୁତ!
https://github.com/pskucherov/tcsstat ଏକ ହୋମୱାର୍କ ଭାବରେ, ଆପଣ ସେବାଟି ମନ୍ଥର ସଂଯୋଗ ସହିତ କାମ କରେ କି ନାହିଁ, ଯେତେବେଳେ ସଂଯୋଗ ଭାଙ୍ଗିଯାଏ, ଯେତେବେଳେ ଇଣ୍ଟରନେଟ୍ ସଂଯୋଗ ବିଚ୍ଛିନ୍ନ ହୁଏ, ଯେତେବେଳେ ଦଲାଲଙ୍କ ଦ୍ୱାରା ତ୍ରୁଟି କିମ୍ବା ସମୟ ସୀମା ସମାପ୍ତ ହୁଏ, ତାହା ଆପଣ ଯାଞ୍ଚ କରିପାରିବେ |
ଭବିଷ୍ୟତ ପାଇଁ ସିଦ୍ଧାନ୍ତ ଏବଂ ଯୋଜନାଗୁଡିକ |
- ମ basic ଳିକ କାର୍ଯ୍ୟ ଏବଂ ନିବେଶ API ସହିତ କାର୍ଯ୍ୟ କରିବା ବିଷୟରେ ଶିଖିଲେ |
- ସମୟ ~ 10 ଘଣ୍ଟା ବିତାଇଲା |
- ଅସୁବିଧା ସ୍ତର ~ ଜୁନିଅର + / ନିମ୍ନ ମଧ୍ୟମ |
ଯଦି ଆପଣ ମାଇକ୍ରୋ ସର୍ଭିସକୁ ବିଶୋଧନ କରିବା ଜାରି ରଖନ୍ତି, ତେବେ ଆପଣ ଏହିପରି କିଛି ସହିତ ଶେଷ ହୋଇପାରନ୍ତି |
https://opexbot.info
ଏହା ମୋର ବିକାଶ, ଯେଉଁମାନେ ନିଜେ ବୁ understand ିବା, ଚଳାଇବା ଏବଂ ଗଣିବାକୁ ଅତ୍ୟଧିକ ଅଳସୁଆ | ବ୍ୟବହାରକାରୀଙ୍କ ଅନୁରୋଧରେ ମୁଁ ସେଠାରେ ଆନାଲିଟିକ୍ସ ଯୋଡିବାକୁ ଯୋଜନା କରିଛି | ଯଦି ଆପଣ ଆର୍ଟିକିଲ୍ ପସନ୍ଦ କରନ୍ତି, ତେବେ ମୋର ଟେଲିଗ୍ରାମ ଚ୍ୟାନେଲକୁ ସବସ୍କ୍ରାଇବ କରନ୍ତୁ |
Полезная статья. Не могу представить, сколько усилий автора потребовалось, чтобы все описать. Благодарю.