[TOC] আমি ২০২০ সালে একটি নিবন্ধ লিখেছিলাম উচ্চ-ফ্রিকোয়েন্সি কৌশল সম্পর্কে।https://www.fmz.com/digest-topic/6228⇒ যদিও অনেক মনোযোগ পেয়েছে, তবে লেখাটি গভীর নয় ⇒ সময় আরও দুই বছরেরও বেশি সময় কেটেছে এবং বাজারেও পরিবর্তন এসেছে ⇒ সেই নিবন্ধটি প্রকাশের পরে, আমার উচ্চ-ফ্রিকোয়েন্সি কৌশলটি দীর্ঘ সময়ের জন্য স্থিতিশীল উপার্জন করতে সক্ষম হয়েছিল, তবে ধীরে ধীরে লাভ হ্রাস পেয়েছে, এমনকি একবার বন্ধও হয়েছে ⇒ সাম্প্রতিক মাসগুলিতে পুনর্নির্মাণের জন্য আরও প্রচেষ্টা করা হয়েছে এবং বর্তমানে কিছুটা অর্থ উপার্জন করতে সক্ষম ⇒ এই নিবন্ধটি আমার উচ্চ-ফ্রিকোয়েন্সি কৌশলটির ধারণাগুলির আরও বিশদ এবং কিছু সরলীকৃত কোডের সাথে পরিচয় করিয়ে দেবে, যা একটি ক্যাচিং পয়েন্টার হিসাবে কাজ করে, প্রতিক্রিয়া জানাতে স্বাগতম ⇒
রিটার্ন কমিশন অ্যাকাউন্ট, উদাহরণস্বরূপ, বিয়ানয়ান, বর্তমানে ম্যাকার রিটার্ন কমিশন 100,000 এর 5 ভাগ, যদি প্রতিদিনের লেনদেনের পরিমাণ 100 মিলিয়ন ইউ, রিটার্ন কমিশন 5000 ইউ হয়। অবশ্যই, ট্যাকাররা ভিআইপি রেসের উপর ভিত্তি করে থাকে, তাই যদি কৌশলটি খাওয়ার প্রয়োজন না হয় তবে ভিআইপি স্তরটি উচ্চ-ফ্রিকোয়েন্সি কৌশলটির উপর খুব বেশি প্রভাব ফেলে না। সাধারণ এক্সচেঞ্জের বিভিন্ন স্তরের বিভিন্ন রিটার্ন কমিশন রয়েছে এবং উচ্চতর লেনদেনের পরিমাণ বজায় রাখা দরকার। অনেক আগে কিছু মুদ্রা বাজারের উচ্চতর উদ্বেগ ছিল, রিটার্ন কমিশনও লাভজনক ছিল না, অভ্যন্তরীণ ভলিউম বৃদ্ধির সাথে সাথে রিটার্ন কমিশন লাভের বৃহত্তর শতাংশ গঠন করে, এমনকি সম্পূর্ণভাবে রিটার্ন কমিশনে নির্ভর করে, উচ্চ-ফ্রিকোয়েন্সি ব্যবসায়ীরা শীর্ষের ফি অনুসরণ করে।
গতি; উচ্চ-ফ্রিকোয়েন্সি নীতিকে উচ্চ-ফ্রিকোয়েন্সি বলা হয় কারণ এটি দ্রুত হয়; এক্সচেঞ্জ কলো সার্ভারে যোগদান, সর্বনিম্ন বিলম্ব এবং সবচেয়ে স্থিতিশীল সংযোগ পাওয়ার জন্যও অন্তর্ভুক্তির শর্তগুলির মধ্যে একটি হয়ে ওঠে। নীতির অভ্যন্তরীণ সময়ও যতটা সম্ভব কম হওয়া উচিত।
উপযুক্ত বাজার; উচ্চ-ফ্রিকোয়েন্সি ট্রেডিংকে পরিমাণগত লেনদেনের মুকুট বলা হয়; আমি বিশ্বাস করি যে অনেক পদ্ধতিগত ব্যবসায়ী চেষ্টা করেছেন, তবে বেশিরভাগ লোককে থামানো উচিত কারণ তারা অর্থ উপার্জন করে না এবং উন্নতির দিক খুঁজে পায় না, মূলত ভুল ট্রেডিং বাজারটি খুঁজে পাওয়ার কারণে। কৌশলটির প্রাথমিক পর্যায়ে তুলনামূলকভাবে সহজ বাজারে অর্থ উপার্জন করা উচিত, যাতে লাভজনক এবং উন্নত প্রতিক্রিয়াও থাকে যা কৌশলটির অগ্রগতির পক্ষে সহায়ক হয়। যদি শুরু থেকে সবচেয়ে প্রতিযোগিতামূলক বাজারে, অনেক সম্ভাব্য প্রতিপক্ষের সাথে প্রতিযোগিতা করা হয়, তবে কীভাবে চেষ্টা করা যায় তা হারাতে হবে এবং দ্রুত ধরে রাখা যায় না। আমি নতুন স্থায়ী চুক্তির জোড়া ট্রেডিংয়ের পরামর্শ দিই, যখন প্রতিযোগীদের সংখ্যা এত বেশি নয়, বিশেষত তুলনামূলকভাবে বড় ট্রেডিং, যখন অর্থ উপার্জন করা সবচেয়ে সহজ হয়। বিটিসি এবং ইটিএইচ-এর ট্রেডিংয়ের সর্বাধিক পরিমাণ, সর্বাধিক সক্রিয়, তবে বেঁচে থাকাও সবচেয়ে কঠিন।
প্রতিযোগিতার মুখোমুখি হওয়া; যে কোনও লেনদেনের বাজার গতিশীল পরিবর্তনশীল, কোনও ট্রেডিং কৌশল চিরকালের জন্য স্থায়ী নয়, উচ্চ-ফ্রিকোয়েন্সি ট্রেডিং আরও স্পষ্ট, এই বাজারে প্রবেশ করা সরাসরি সবচেয়ে স্মার্ট, সবচেয়ে পরিশ্রমী ব্যবসায়ীদের সাথে প্রতিদ্বন্দ্বিতা করে। শূন্য এবং গেমিংয়ের বাজারে, আপনি অন্যের তুলনায় কম অর্থ উপার্জন করেন। যত বেশি দেরী করবেন, তত বেশি অসুবিধা হবে, ইতিমধ্যে বাজারে রয়েছেন এবং যে কোনও সময় উন্নতি করতে পারেন। তিন বা চার বছর আগে সেরা সুযোগ হওয়া উচিত ছিল, সম্প্রতি ডিজিটাল মুদ্রা বাজারের সামগ্রিক সক্রিয়তা হ্রাস পেয়েছে, এখন নতুনদের কাছ থেকে উচ্চ-ফ্রিকোয়েন্সি ট্রেডিং শুরু করা খুব কঠিন।
উচ্চ-ফ্রিকোয়েন্সি কৌশলগুলি বিভিন্ন ধরণের
আমার কৌশল হল ট্রেন্ড এবং মার্কেটপ্লেসের সংমিশ্রণ, প্রথমে ট্রেন্ডটি নির্ধারণ করুন, তারপর অর্ডার করুন, অর্ডারটি সম্পন্ন হওয়ার পরে অবিলম্বে অর্ডারটি বিক্রি করুন, স্টক স্টপ না রেখে, নীচে সংমিশ্রণ কৌশল কোডের সাথে পরিচয় করিয়ে দেওয়া হয়েছে।
নিচের কোডটি বিএনএ-র চিরস্থায়ী চুক্তির উপর ভিত্তি করে একটি আর্কিটেকচার, যা মূলত ওয়েবসকেট গভীরতা গভীরতা অর্ডার প্রবাহ ট্রেডস বাজার এবং অবস্থান অবস্থান তথ্য সাবস্ক্রাইব করে। যেহেতু বাজার এবং অ্যাকাউন্টের তথ্য পৃথক সাবস্ক্রাইব করা হয়, তাই সর্বশেষ তথ্য পাওয়ার বিষয়ে সিদ্ধান্ত নেওয়ার জন্য ক্রমাগত পাঠ্য ((-১) ব্যবহার করা হয়, এখানে ইভেন্টলুপ (১০০০) ব্যবহার করা হয়, সরাসরি মৃত চক্র এড়ানো হয়, সিস্টেমের বোঝা হ্রাস করা হয়। ইভেন্টলুপ (১০০০) ডাব্লুএসএস বা একযোগে পাঠানো মিশন ফিরে আসার সময়কে ব্লক করে, যখন সময়টি 1000ms এর বেশি হয়।
var datastream = null
var tickerstream = null
var update_listenKey_time = 0
function ConncetWss(){
if (Date.now() - update_listenKey_time < 50*60*1000) {
return
}
if(datastream || tickerstream){
datastream.close()
tickerstream.close()
}
//需要APIKEY
let req = HttpQuery(Base+'/fapi/v1/listenKey', {method: 'POST',data: ''}, null, 'X-MBX-APIKEY:' + APIKEY)
let listenKey = JSON.parse(req).listenKey
datastream = Dial("wss://fstream.binance.com/ws/" + listenKey + '|reconnect=true', 60)
//Symbols是设定的交易对
let trade_symbols_string = Symbols.toLowerCase().split(',')
let wss_url = "wss://fstream.binance.com/stream?streams="+trade_symbols_string.join(Quote.toLowerCase()+"@aggTrade/")+Quote.toLowerCase()+"@aggTrade/"+trade_symbols_string.join(Quote.toLowerCase()+"@depth20@100ms/")+Quote.toLowerCase()+"@depth20@100ms"
tickerstream = Dial(wss_url+"|reconnect=true", 60)
update_listenKey_time = Date.now()
}
function ReadWss(){
let data = datastream.read(-1)
let ticker = tickerstream.read(-1)
while(data){
data = JSON.parse(data)
if (data.e == 'ACCOUNT_UPDATE') {
updateWsPosition(data)
}
if (data.e == 'ORDER_TRADE_UPDATE'){
updateWsOrder(data)
}
data = datastream.read(-1)
}
while(ticker){
ticker = JSON.parse(ticker).data
if(ticker.e == 'aggTrade'){
updateWsTrades(ticker)
}
if(ticker.e == 'depthUpdate'){
updateWsDepth(ticker)
}
ticker = tickerstream.read(-1)
}
makerOrder()
}
function main() {
while(true){
ConncetWss()
ReadWss()
worker()
updateStatus()
EventLoop(1000)
}
}
আমি আগে বলেছি যে আমার উচ্চ-ফ্রিকোয়েন্সি কৌশলটি ট্রেন্ডটি নির্ধারণ করতে এবং বিক্রয়টি সম্পাদন করতে হবে। স্বল্পমেয়াদী প্রবণতা মূলত প্রতি-ট্রেডের ডেটা ভিত্তিতে বিচার করা হয়, অর্থাৎ সাবস্ক্রিপশনের মধ্যে অ্যাগট্রেড, যার মধ্যে ট্রেডের দিক, দাম, পরিমাণ, সময় ইত্যাদি অন্তর্ভুক্ত রয়েছে। বিক্রয়টি মূলত গভীরতা এবং বিক্রয় পরিমাণের রেফারেন্স। নীচে বিস্তারিতভাবে উল্লেখ করা হয়েছে যে নির্দেশকগুলির জন্য মনোযোগ দেওয়া দরকার, বেশিরভাগ নির্দেশকগুলিকে বিক্রয় এবং বিক্রয় দুটি গ্রুপে বিভক্ত করা হয়েছে এবং সমস্ত নির্দিষ্ট সময় উইন্ডোতে গতিশীল পরিসংখ্যান, আমার কৌশলটির সময় উইন্ডোটি 10 সেকেন্ডের মধ্যে রয়েছে।
//bull代表短期看涨,bear短期看跌
let bull = last_sell_price > avg_sell_price && last_buy_price > avg_buy_price &&
avg_buy_amount / avg_buy_time > avg_sell_amount / avg_sell_time;
let bear = last_sell_price < avg_sell_price && last_buy_price < avg_buy_price &&
avg_buy_amount / avg_buy_time < avg_sell_amount / avg_sell_time;
যদি সর্বশেষ বিক্রয় মূল্য বিক্রয় আদেশের গড় মূল্যের চেয়ে বেশি হয়, সর্বশেষ ক্রয় মূল্য বিক্রয় আদেশের গড় মূল্যের চেয়ে বেশি হয়, এবং স্থির ব্যবধানের ক্রয়ের মূল্য বিক্রয় আদেশের মূল্যের চেয়ে বেশি হয়, তবে এটি স্বল্পমেয়াদী বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউন্স বাউ
function updatePrice(depth, bid_amount, ask_amount) {
let buy_price = 0
let sell_price = 0
let acc_bid_amount = 0
let acc_ask_amount = 0
for (let i = 0; i < Math.min(depth.asks.length, depth.bids.length); i++) {
acc_bid_amount += parseFloat(depth.bids[i][1])
acc_ask_amount += parseFloat(depth.asks[i][1])
if (acc_bid_amount > bid_amount && buy_price == 0) {
buy_price = parseFloat(depth.bids[i][0]) + tick_size
}
if (acc_ask_amount > ask_amount && sell_price == 0) {
sell_price = parseFloat(depth.asks[i][0]) - tick_size
}
if (buy_price > 0 && sell_price > 0) {
break
}
}
return [buy_price, sell_price]
}
এখানেও পুরানো ধারণার অনুসরণ করা হয়, যেখানে গভীরতাকে প্রয়োজনীয় পরিমাণে পুনরাবৃত্তি করা হয়, এখানে অনুমান করা হয় যে 1s এর মধ্যে 10 পয়সা প্রদান করা যেতে পারে, নতুন লিঙ্কযুক্ত আদেশের ক্ষেত্রে বিবেচনা না করে, বিক্রয় আদেশের দাম 10 পয়সা প্রদানের আঘাতের অবস্থান হিসাবে সেট করা হয়। কতটি নির্দিষ্ট সময় উইন্ডো নিজেকে সেট করতে হবে।
let buy_amount = Ratio * avg_sell_amount / avg_sell_time
let sell_amount = Ratio * avg_buy_amount / avg_buy_time
Ratio একটি স্থির অনুপাতকে প্রতিনিধিত্ব করে, যা হল ক্রয়ের পরিমাণটি সর্বশেষ বিক্রি হওয়া সংখ্যার একটি স্থির অনুপাত। এই কৌশলটি বর্তমান ক্রয়-বিক্রয় কার্যকলাপের উপর ভিত্তি করে অর্ডার আকারের জন্য স্বয়ংক্রিয়ভাবে সামঞ্জস্যপূর্ণ।
if(bull && (sell_price-buy_price) > N * avg_diff) {
trade('buy', buy_price, buy_amount)
}else if(position.amount < 0){
trade('buy', buy_price, -position.amount)
}
if(bear && (sell_price-buy_price) > N * avg_diff) {
trade('sell', sell_price, sell_amount)
}else if(position.amount > 0){
trade('sell', sell_price, position.amount)
}
এর মধ্যে avg_diff হল গড় হিসাবের পার্থক্য, শুধুমাত্র বর্তমান অর্ডার কেনার ও বিক্রয়ের পার্থক্য একটি নির্দিষ্ট সংখ্যার গুণের চেয়ে বড় হলেই হিসাব করা হবে এবং যদি শূন্য অর্ডার থাকে তবে এটি স্থির হয়ে যাবে, দীর্ঘমেয়াদী চালান এড়াতে।
var tasks = []
var jobs = []
function worker(){
let new_jobs = []
for(let i=0; i<tasks.length; i++){
let task = tasks[i]
jobs.push(exchange.Go.apply(this, task.param))
}
_.each(jobs, function(t){
let ret = t.wait(-1)
if(ret === undefined){
new_jobs.push(t)//未返回的任务下次继续等待
}
})
jobs = new_jobs
tasks = []
}
/*
需要的任务参数写在param里
tasks.push({'type':'order','param': ["IO", "api", "POST","/fapi/v1/order",
"symbol="+symbol+Quote+"&side="+side+"&type=LIMIT&timeInForce=GTX&quantity="+
amount+"&price="+price+"&newClientOrderId=" + UUID() +"×tamp="+Date.now()]})
*/
mztcoinআপনি কি জানেন যে আপনি যদি আপনার পণ্যটি বিক্রি করতে চান তবে আপনি এটি বিক্রি করতে পারেন? আপনি যদি এটি বিক্রি করতে চান তবে আপনি এটি বিক্রি করতে পারেন। আপনি যদি এটি বিক্রি করতে চান তবে আপনি এটি বিক্রি করতে পারেন। আপনি যদি এটি বিক্রি করতে চান তবে আপনি এটি বিক্রি করতে পারেন।
mztcoinঘাসের দেবতা
ড্যাঙ্গুঘাসের দেবতা
77924998গ্রাসওয়ান কোন AWS সার্ভার ব্যবহার করে?
সিকিটিঅত্যাচারী
বিউসিয়াওকগ্রাসেন একটি উচ্চ ফ্রিকোয়েন্সি কোর্স প্রদান করে।
আমার হৃদয় এখনওএই কৌশলটি কি কপি করার জন্য ব্যবহার করা যেতে পারে?
লেখকঃ ট্রেডম্যানআমি আমার বন্ধুদের সাথে কথা বলতে চাই এবং তাদের সাথে কথা বলতে চাই, এবং আমি তাদের সাথে কথা বলতে চাই।
~ বাতাসের ঢেউয়ের মধ্যে ঢেউ ~অত্যাচারী
fmzeroগ্রাস গড!
ওক পরিমাণঅত্যাচারী
ঘাসএটি খুব কঠিন এবং এর অর্থ খুব বেশি নয়।