Gambar di atas:
Hal ini disebabkan karena ketika mempelajari strategi biner, kita tidak dapat secara intuitif mengamati proses pembukaan posisi, studi titik-titik negosiasi, dan penulisan kode, dan juga karena kode tidak intuitif ketika melakukan pengujian dengan disk, dan kembali dan kembali ke log headers, dan kita tidak dapat secara intuitif mengamati proses pembukaan posisi, studi titik-titik negosiasi, dan penulisan kode. Saya ingin menulis grafik dengan tampilan yang intuitif, berdasarkan contoh kode besar Z, saya menulis template grafik sederhana, sekarang fungsinya sangat sederhana, hanya menampilkan garis K real-time, menampilkan posisi terbuka, posisi kosong. Fungsi lain belum ditambahkan (misalnya beberapa Indikator yang ditulis sendiri ditampilkan dalam garis, ditampilkan dalam K-line diagram, dll.), Saya akan menambahkannya perlahan-lahan. Karena ini belum banyak diuji, saya akan menawarkannya kepada Anda untuk dipelajari, berhati-hatilah dengan disk nyata. Penggunaan sederhana: Ada 2 fungsi ekspor sementara:
$.SignOP(time,price,amount,state)
$.Draw(records)
\(.SignOP ((time,price,amount,state) adalah fungsi yang digunakan untuk menandai posisi yang dibuka setelah posisi dibuka, dengan 4 parameter. \).Draw(records) Fungsi ini digunakan untuk menggambar garis K. Fungsi ini harus ditempatkan pada awal siklus utama strategi. Parameter dapat ditransfer ke null, sehingga fungsi itu sendiri dapat memperoleh ≠
Berikut ini adalah contoh kode 30 baris dengan ukuran Z, untuk mengakses kode menggunakan template ini. Hanya 3 kalimat yang ditambahkan ke dalam kode.
function main(){
var STATE_IDLE = -1;//空闲状态
var state = STATE_IDLE;
var opAmount = 0;
var initAccount = $.GetAccount();
Log(initAccount);//输出账户初始信息
while(true){
---------------------------------------------------------------------------------------------
$.Draw(null);// 画图表K线
--------------------------------------------------------------------------------------------
if(state === STATE_IDLE){
var n = $.Cross(FastPeriod,SlowPeriod);
if(Math.abs(n) >= EnterPeriod){
opAmount = parseFloat((initAccount.Stocks * PositionRatio).toFixed(3));
var obj = n > 0 ? $.Buy(opAmount) : $.Sell(opAmount);
if(obj){
opAmount = obj.amount;
state = n > 0 ? PD_LONG : PD_SHORT;
Log("开仓详情",obj,"交叉周期",n);
}
---------------------------------------------------------------------------------------------
$.SignOP((new Date()).getTime(),obj.price,obj.amount,(n > 0 ? 1 : 2) ); //标记买入 卖出 开仓
---------------------------------------------------------------------------------------------
}
}else{
var n = $.Cross(ExitFastPeriod,ExitSlowPeriod);
if(Math.abs(n) >= ExitPeriod && ((state === PD_LONG && n < 0 ) || (state === PD_SHORT && n > 0))){
var obj = state === PD_LONG? $.Sell(opAmount) : $.Buy(opAmount);
---------------------------------------------------------------------------------------------
$.SignOP((new Date()).getTime(),obj.price,obj.amount,0); //标记平仓
---------------------------------------------------------------------------------------------
state = STATE_IDLE;
var nowAccount = $.GetAccount();
LogProfit(nowAccount.Balance - initAccount.Balance,"钱:",nowAccount.Balance,"币:",nowAccount.Stocks,"平仓详情:",obj,"交叉周期",n);
}
}
Sleep(Interval*1000);//暂停10秒
}
}


Kode ini belum sempurna, selamat datang di Axe of the Great God.