Bermain JavaScript dengan orang tua -- menciptakan mitra kecil yang akan melakukan pembelian dan penjualan.

Penulis:Mimpi kecil, Dibuat: 2017-03-06 09:57:41, Diperbarui: 2017-10-11 10:36:41

Bermain dengan orang tua dan orang tua JavaScript membuat mitra kecil untuk membeli dan menjual.

Kehidupan yang membosankan di depan para petani tua

Apakah dunia kode yang membosankan bisa memiliki mata air yang jernih? Apakah kehidupan yang monoton bisa memiliki sedikit angin segar? Pemuda yang gelisah akan menjadi gelisah lagi? Ini pasti adalah perasaan umum dari para programmer. Sebagai seorang programmer yang sudah dewasa, di tingkat burung merpati JavaScript tidak bisa lagi disebut kecil, gunakan nama tua! Meskipun tingkat burung merpati, sibuk dengan kode sehari-hari, tetapi juga tidak menghalangi bermain dengan JS.

  • Menemukan

    Old White sebagai seorang petani yang masuk lambat, yang bermain dengan masa depan. Ada sedikit konsep perdagangan sekuritas, Anda dapat menganggap saya telah meledak di pasar berjangka, untuk menjadi seorang programmer. Lebih baik belajar bahasa pemrograman C, C ++ saat kuliah tanpa melewatkan kelas, ini sangat membantu bagi orang muda seusiaku untuk menguasai JavaScript dengan cepat. Tidak apa-apa minum dengan teman-teman (teman saya adalah seorang pengontrol komoditas waktu luang swasta), juga mengobrol tentang pasar berjangka.

    Setelah melakukan pencarian, Anda dapat melihat bahwa JS, Python, C / C ++, JAVA, dll. dapat melakukan transaksi terprogram (lebih banyak hanya menggunakan JS, Python sedang belajar sendiri), masih banyak yang harus dipelajari.

    Salah satu program robot yang baru-baru ini dipelajari adalah sebuah program perdagangan yang terkenal di luar negeri, yang juga merupakan pasar komoditas berjangka, untuk membawa ide ke pasar komoditas di dalam negeri (ada sebuah perusahaan bernama simnow yang menyediakan layanan simulasi akun).

    img

    img

    Saat pertama kali menulis dengan JavaScript merasa benar-benar tidak ada yang bisa dihilangkan, perasaan ini dan sebelumnya menulis kode JS benar-benar berbeda, otak tidak bisa beradaptasi, sebelumnya melihat garis-garis hijau, kolom-kolom di perangkat lunak saham yang tidak pernah dipertimbangkan sebelumnya bagaimana dihitung.

    Ada juga beberapa referensi yang berguna. Seperti STOCH RSI, tidak banyak informasi yang tersedia di internet, jadi Anda hanya perlu mencoba sendiri.

    Jika Anda ingin melihat lebih banyak, Anda bisa melihat gambar di bawah ini.

function LLV(array,period){
    if(!array || array.length - period < 0){
        throw "error:" + array;
    }
    var min = array[array.length - period];
    for(var i = array.length - period; i < array.length; i++){
        if( array[i] < min ){
            min = array[i];
        }
    }
    return min;
}

function HHV(array,period){
    if(!array || array.length - period < 0){
        throw "error:" + array;
    }
    var max = array[array.length - period];
    for(var i = array.length - period; i < array.length; i++){
        if( array[i] > max){
            max = array[i];
        }
    }
    return max;
}

function DeleteNullEle(initArr){
    var dealArr = [];
    var initArrLen = initArr.length;
    for(var i = 0,j = 0 ; i < initArrLen ; i++,j++){
        if(initArr[i] === null || isNaN(initArr[i]) ){
            j--;
            continue;
        }
        dealArr[j] = initArr[i];
    }
    return dealArr;
}

/*
LC := REF(CLOSE,1); //REF(C,1) 上一周期的收盘价
RSI:=SMA(MAX(CLOSE-LC,0),N,1)/SMA(ABS(CLOSE-LC),N,1) *100;
%K:     MA(RSI-LLV(RSI,M),P1)/MA(HHV(RSI,M)-LLV(RSI,M),P1)*100;  LLV(l,60)表示:检索60天内的最低价,可适应于检索任何股票
%D:MA(%K,P2);

LC := REF(CLOSE,1);
RSI:=SMA(MAX(CLOSE-LC,0),N,1)/SMA(ABS(CLOSE-LC),N,1) *100;
STOCHRSI:MA(RSI-LLV(RSI,M),P1)/MA(HHV(RSI,M)-LLV(RSI,M),P1)*100;
*/
function FstochRSI(records,n,m,p1,p2){
    var len = records.length;
    //var LC = records[len-2];//上一周期收盘价
    //var rsi = TA.RSI(records,n);// RSI 数组   ,talib
    var rsi = talib.RSI(records,n);
    rsi = DeleteNullEle(rsi);//ceshi

    var arr1 = [];
    var arr2 = [];
    var arr3 = [];
    var arr4 = [];
    var rsi_a = [];
    var rsi_b = [];
    var k = [];
    var d = null;

    /*不包含当前柱
    for(var a = 0 ;a < rsi.length ; a++ ){//改造 不用 LLV
        for(var aa = 0 ; aa <= a; aa++ ){
            rsi_a.push(rsi[aa]);
        }
        arr1.push(rsi[a] - TA.Lowest(rsi_a,m));
    }
    for(var b = 0 ;b < rsi.length ; b++ ){//改造 不用 HHV
        for(var bb = 0 ; bb <= b; bb++ ){
            rsi_b.push(rsi[bb]);
        }
        arr2.push(TA.Highest(rsi_b,m) - TA.Lowest(rsi_b,m));
    }
    */
    for(var a = 0 ;a < rsi.length ; a++ ){//改造 不用 LLV
        if(a < m){
            continue;
        }
        for(var aa = 0 ; aa <= a; aa++ ){
            rsi_a.push(rsi[aa]);
        }
        arr1.push(rsi[a] - LLV(rsi_a,m));
    }
    for(var b = 0 ;b < rsi.length ; b++ ){//改造 不用 HHV
        if(b < m){
            continue;
        }
        for(var bb = 0 ; bb <= b; bb++ ){
            rsi_b.push(rsi[bb]);
        }
        arr2.push(HHV(rsi_b,m) - LLV(rsi_b,m));
    }

    arr1 = DeleteNullEle(arr1);
    arr2 = DeleteNullEle(arr2);
    //Log("arr1:",arr1.length,"-",arr1);//ceshi
    //Log("arr2:",arr2.length,"-",arr2);//ceshi

    arr3 = talib.MA(arr1,p1);
    arr4 = talib.MA(arr2,p1);

    arr3 = DeleteNullEle(arr3);
    arr4 = DeleteNullEle(arr4);

    //Log("ceshi");//ceshi
    var c = 0;
    var diff = 0;
    if(arr3.length !== arr4.length){//实测 长度不相等
        throw "error: !=" + arr3.length + "----" + arr4.length;
        diff = arr4.length - arr3.length; //example   diff  =   10  -   6
    }else{
        //throw "error:" + arr3.length + "----" + arr4.length;
    }

    for( ;c < arr3.length ; c++ ){
        k.push(arr3[c] / arr4[c + diff] * 100);
    }

    d = talib.MA(k,p2);

    return [k,d,rsi];
}

Dia mengatakan, "Saya tidak tahu apa yang akan terjadi.

img

Saya akan menulis di sini hari ini, dan kami akan bertemu di lain waktu.https://www.fmz.com/bbs-topic/723

Pemrogram LittleDream


Lebih banyak

sedikit315Sapi!