আমি একটি সতর্কতা প্রেরণ কৌশল লিখেছি, এবং আমি মনে করি যে এটি একটি ত্রুটি আছে, কিন্তু আমি মনে করি যে এটি একটি ত্রুটি আছে, তাই আমি এই কোডটি ব্যবহার করতে চাই।

Period_list = [PERIOD_D1,12*60*60,6*60*60, 4*60*60,3*60*60,PERIOD_H1,45*60,PERIOD_M30,PERIOD_M15,PERIOD_M5,PERIOD_M1];// মিনিট লাইন তালিকা lastTime=0; var malevel0 = new Array(); // একটি অভিধান malevel0 সংজ্ঞায়িত করুন[symbol]=0; function OnBar(record,symbol) { if (record==null) return; var len=record.length-1; if(len<200) return;
var ma200=TA.MA(record,ma_len)
var cci = talib.CCI(record, cci_len)
if(record[len].Open<ma200[len])
malevel0[symbol]=1;
var con=(malevel0[symbol]==1) && record[len].Open>ma200[len] && cci[len]>cci_value
//Log("con",malevel0[symbol]l,malevel0,record[len].Open,ma200[len],cci[len],record[len-1].Open,ma200[len-1]);
if(con)
{
malevel0[symbol]=0;
str = _D(record[record.length - 1].Time);//把 此刻的 毫秒时间 转换成 字符串(能看懂的)
Log("条件提示["+symbol+str+"]推送微信@" ); //输出一条信息 并推送微信
}
} /* function profit_order (() / বন্ধ করুন { prices=get_last_price() if(prices==null) return; if{CheckPositionDirect}==1) // একাধিক পজিশন { if( prices[0]-stop_price>profit_perent*stop_price/100) { Log ((“অধিক স্তন্যপান”,prices[0],stop_price); ClosePosition(prices[0]); reset(); } }else if(CheckPositionDirect() ==-1) // খালি ভান্ডার { if( stop_price-prices[1] >profit_perent*stop_price/100) { Log ((“খালি স্টপ”,prices[1],stop_price); ClosePosition(prices[1]); reset(); } }
} */
// প্রধান লেনদেনের লজিক
function OnTick(symbol)
{
//exchange.SetContractType(“swap”);
record = exchange.GetRecords(Period_list[period]);
if(record==null)
return;
if (record[record.length - 1].Time != lastTime) {
//Log(“নতুন K-রেখা তৈরি হয়েছে”,symbol,record[record.length - 1].Time);
lastTime = record[record.length - 1].Time; // lastTime আপডেট করা আবশ্যক, এটি অত্যন্ত গুরুত্বপূর্ণ।
OnBar ((record,symbol);// ক্লোজ-আপ মূল্য মোড
}
}
// প্ল্যাটফর্মটি টিক স্তরের উপর ভিত্তি করে function main() { falg=1; var contract_list=[“BTC_USDT”,“ETH_USDT”] for(var i=0; i } } }