diff --git a/.gitbook/assets/90bd916263cbda0d6c7df8e16f3909d4.jpg b/.gitbook/assets/90bd916263cbda0d6c7df8e16f3909d4.jpg new file mode 100644 index 00000000..e260a49f Binary files /dev/null and b/.gitbook/assets/90bd916263cbda0d6c7df8e16f3909d4.jpg differ diff --git a/.gitbook/assets/a3f955270ba357c39d29a9106ba641f1.jpg b/.gitbook/assets/a3f955270ba357c39d29a9106ba641f1.jpg new file mode 100644 index 00000000..8335b65c Binary files /dev/null and b/.gitbook/assets/a3f955270ba357c39d29a9106ba641f1.jpg differ diff --git a/.gitbook/assets/b39ac58ecaf3ab0a1e158c9d2ea7764e.jpg b/.gitbook/assets/b39ac58ecaf3ab0a1e158c9d2ea7764e.jpg new file mode 100644 index 00000000..3458465d Binary files /dev/null and b/.gitbook/assets/b39ac58ecaf3ab0a1e158c9d2ea7764e.jpg differ diff --git a/.gitbook/assets/b3dc1ee141e9d832e485950869d1657c.jpg b/.gitbook/assets/b3dc1ee141e9d832e485950869d1657c.jpg new file mode 100644 index 00000000..262aaf93 Binary files /dev/null and b/.gitbook/assets/b3dc1ee141e9d832e485950869d1657c.jpg differ diff --git a/.gitbook/assets/bfm-unity-3.0 (4).png b/.gitbook/assets/bfm-unity-3.0 (4).png new file mode 100644 index 00000000..0e230ed0 Binary files /dev/null and b/.gitbook/assets/bfm-unity-3.0 (4).png differ diff --git a/.gitbook/assets/bfm-unity-3.0 (5).png b/.gitbook/assets/bfm-unity-3.0 (5).png new file mode 100644 index 00000000..c79672fd Binary files /dev/null and b/.gitbook/assets/bfm-unity-3.0 (5).png differ diff --git a/.gitbook/assets/bfm-unity-3.0 (6).png b/.gitbook/assets/bfm-unity-3.0 (6).png new file mode 100644 index 00000000..c7193e18 Binary files /dev/null and b/.gitbook/assets/bfm-unity-3.0 (6).png differ diff --git a/.gitbook/assets/bfm-unity-zhan-lve-he-zuo-huo-ban- (3).png b/.gitbook/assets/bfm-unity-zhan-lve-he-zuo-huo-ban- (3).png new file mode 100644 index 00000000..fb0ac43c Binary files /dev/null and b/.gitbook/assets/bfm-unity-zhan-lve-he-zuo-huo-ban- (3).png differ diff --git a/.gitbook/assets/bfm-unitybji-you-shang-.png b/.gitbook/assets/bfm-unitybji-you-shang-.png new file mode 100644 index 00000000..122cea39 Binary files /dev/null and b/.gitbook/assets/bfm-unitybji-you-shang-.png differ diff --git a/.gitbook/assets/bfm-unitycji-bie-you-shang-.png b/.gitbook/assets/bfm-unitycji-bie-you-shang-.png new file mode 100644 index 00000000..cc339051 Binary files /dev/null and b/.gitbook/assets/bfm-unitycji-bie-you-shang-.png differ diff --git a/.gitbook/assets/bi-fang-meng-xin-logo3.png b/.gitbook/assets/bi-fang-meng-xin-logo3.png new file mode 100644 index 00000000..4f455e49 Binary files /dev/null and b/.gitbook/assets/bi-fang-meng-xin-logo3.png differ diff --git a/.gitbook/assets/bian-zu-.png b/.gitbook/assets/bian-zu-.png new file mode 100644 index 00000000..802c9af6 Binary files /dev/null and b/.gitbook/assets/bian-zu-.png differ diff --git a/.gitbook/assets/d21fa7bce50ff1247e6806dded8a007e.jpg b/.gitbook/assets/d21fa7bce50ff1247e6806dded8a007e.jpg new file mode 100644 index 00000000..a5e997f7 Binary files /dev/null and b/.gitbook/assets/d21fa7bce50ff1247e6806dded8a007e.jpg differ diff --git a/.gitbook/assets/dang-jian-xuan-chuan-1.png b/.gitbook/assets/dang-jian-xuan-chuan-1.png new file mode 100644 index 00000000..3b4fae3e Binary files /dev/null and b/.gitbook/assets/dang-jian-xuan-chuan-1.png differ diff --git a/.gitbook/assets/dang-jian-xuan-chuan-11.png b/.gitbook/assets/dang-jian-xuan-chuan-11.png new file mode 100644 index 00000000..05d8cc41 Binary files /dev/null and b/.gitbook/assets/dang-jian-xuan-chuan-11.png differ diff --git a/.gitbook/assets/dang-jian-xuan-chuan-2.png b/.gitbook/assets/dang-jian-xuan-chuan-2.png new file mode 100644 index 00000000..b06db16b Binary files /dev/null and b/.gitbook/assets/dang-jian-xuan-chuan-2.png differ diff --git a/.gitbook/assets/dang-jian-xuan-chuan-21.png b/.gitbook/assets/dang-jian-xuan-chuan-21.png new file mode 100644 index 00000000..8528616b Binary files /dev/null and b/.gitbook/assets/dang-jian-xuan-chuan-21.png differ diff --git a/.gitbook/assets/dang-jian-xuan-chuan-23.png b/.gitbook/assets/dang-jian-xuan-chuan-23.png new file mode 100644 index 00000000..e8b8633d Binary files /dev/null and b/.gitbook/assets/dang-jian-xuan-chuan-23.png differ diff --git a/.gitbook/assets/dang-jian-xuan-chuan-3.png b/.gitbook/assets/dang-jian-xuan-chuan-3.png new file mode 100644 index 00000000..978192b6 Binary files /dev/null and b/.gitbook/assets/dang-jian-xuan-chuan-3.png differ diff --git a/.gitbook/assets/dang-jian-xuan-chuan-31.png b/.gitbook/assets/dang-jian-xuan-chuan-31.png new file mode 100644 index 00000000..e01e8458 Binary files /dev/null and b/.gitbook/assets/dang-jian-xuan-chuan-31.png differ diff --git a/.gitbook/assets/defi_3 (1).png b/.gitbook/assets/defi_3 (1).png new file mode 100644 index 00000000..1a27a7dd Binary files /dev/null and b/.gitbook/assets/defi_3 (1).png differ diff --git a/.gitbook/assets/f92ac38b6b8ef52244f60616bcd8acf6.jpg b/.gitbook/assets/f92ac38b6b8ef52244f60616bcd8acf6.jpg new file mode 100644 index 00000000..9dc95191 Binary files /dev/null and b/.gitbook/assets/f92ac38b6b8ef52244f60616bcd8acf6.jpg differ diff --git a/.gitbook/assets/gang-gan-shuai-kong-zhi-.png b/.gitbook/assets/gang-gan-shuai-kong-zhi-.png new file mode 100644 index 00000000..91ac4dc9 Binary files /dev/null and b/.gitbook/assets/gang-gan-shuai-kong-zhi-.png differ diff --git a/.gitbook/assets/image (18).png b/.gitbook/assets/image (18).png new file mode 100644 index 00000000..6c8a75e9 Binary files /dev/null and b/.gitbook/assets/image (18).png differ diff --git a/.gitbook/assets/image (21).png b/.gitbook/assets/image (21).png new file mode 100644 index 00000000..f78b0e69 Binary files /dev/null and b/.gitbook/assets/image (21).png differ diff --git a/.gitbook/assets/image (27).png b/.gitbook/assets/image (27).png new file mode 100644 index 00000000..666b1b48 Binary files /dev/null and b/.gitbook/assets/image (27).png differ diff --git a/.gitbook/assets/image (28).png b/.gitbook/assets/image (28).png new file mode 100644 index 00000000..b9eeb001 Binary files /dev/null and b/.gitbook/assets/image (28).png differ diff --git a/.gitbook/assets/image (29).png b/.gitbook/assets/image (29).png new file mode 100644 index 00000000..02357df1 Binary files /dev/null and b/.gitbook/assets/image (29).png differ diff --git a/.gitbook/assets/image (30).png b/.gitbook/assets/image (30).png new file mode 100644 index 00000000..f78b0e69 Binary files /dev/null and b/.gitbook/assets/image (30).png differ diff --git a/.gitbook/assets/image (31).png b/.gitbook/assets/image (31).png new file mode 100644 index 00000000..f28ccca2 Binary files /dev/null and b/.gitbook/assets/image (31).png differ diff --git a/.gitbook/assets/image (32).png b/.gitbook/assets/image (32).png new file mode 100644 index 00000000..54be90d3 Binary files /dev/null and b/.gitbook/assets/image (32).png differ diff --git a/.gitbook/assets/image (33).png b/.gitbook/assets/image (33).png new file mode 100644 index 00000000..1faf4230 Binary files /dev/null and b/.gitbook/assets/image (33).png differ diff --git a/.gitbook/assets/image (34).png b/.gitbook/assets/image (34).png new file mode 100644 index 00000000..1faf4230 Binary files /dev/null and b/.gitbook/assets/image (34).png differ diff --git a/.gitbook/assets/image (35).png b/.gitbook/assets/image (35).png new file mode 100644 index 00000000..54be90d3 Binary files /dev/null and b/.gitbook/assets/image (35).png differ diff --git a/.gitbook/assets/image (36).png b/.gitbook/assets/image (36).png new file mode 100644 index 00000000..d2547b19 Binary files /dev/null and b/.gitbook/assets/image (36).png differ diff --git a/.gitbook/assets/image (37).png b/.gitbook/assets/image (37).png new file mode 100644 index 00000000..d2547b19 Binary files /dev/null and b/.gitbook/assets/image (37).png differ diff --git a/.gitbook/assets/image (38).png b/.gitbook/assets/image (38).png new file mode 100644 index 00000000..b59c91c4 Binary files /dev/null and b/.gitbook/assets/image (38).png differ diff --git a/.gitbook/assets/image (39).png b/.gitbook/assets/image (39).png new file mode 100644 index 00000000..a699756f Binary files /dev/null and b/.gitbook/assets/image (39).png differ diff --git a/.gitbook/assets/image (40).png b/.gitbook/assets/image (40).png new file mode 100644 index 00000000..a699756f Binary files /dev/null and b/.gitbook/assets/image (40).png differ diff --git a/.gitbook/assets/image (41).png b/.gitbook/assets/image (41).png new file mode 100644 index 00000000..318ffb8d Binary files /dev/null and b/.gitbook/assets/image (41).png differ diff --git a/.gitbook/assets/image (42).png b/.gitbook/assets/image (42).png new file mode 100644 index 00000000..318ffb8d Binary files /dev/null and b/.gitbook/assets/image (42).png differ diff --git a/.gitbook/assets/image (43).png b/.gitbook/assets/image (43).png new file mode 100644 index 00000000..3e0bcce4 Binary files /dev/null and b/.gitbook/assets/image (43).png differ diff --git a/.gitbook/assets/image (44).png b/.gitbook/assets/image (44).png new file mode 100644 index 00000000..3e0bcce4 Binary files /dev/null and b/.gitbook/assets/image (44).png differ diff --git a/.gitbook/assets/image (45).png b/.gitbook/assets/image (45).png new file mode 100644 index 00000000..63710b45 Binary files /dev/null and b/.gitbook/assets/image (45).png differ diff --git a/.gitbook/assets/image (46).png b/.gitbook/assets/image (46).png new file mode 100644 index 00000000..521703ff Binary files /dev/null and b/.gitbook/assets/image (46).png differ diff --git a/.gitbook/assets/image (47).png b/.gitbook/assets/image (47).png new file mode 100644 index 00000000..ca1249c2 Binary files /dev/null and b/.gitbook/assets/image (47).png differ diff --git a/.gitbook/assets/image (48).png b/.gitbook/assets/image (48).png new file mode 100644 index 00000000..521703ff Binary files /dev/null and b/.gitbook/assets/image (48).png differ diff --git a/.gitbook/assets/image (49).png b/.gitbook/assets/image (49).png new file mode 100644 index 00000000..acc63538 Binary files /dev/null and b/.gitbook/assets/image (49).png differ diff --git a/.gitbook/assets/image (50).png b/.gitbook/assets/image (50).png new file mode 100644 index 00000000..3913f62d Binary files /dev/null and b/.gitbook/assets/image (50).png differ diff --git a/.gitbook/assets/image (51).png b/.gitbook/assets/image (51).png new file mode 100644 index 00000000..521703ff Binary files /dev/null and b/.gitbook/assets/image (51).png differ diff --git a/.gitbook/assets/image (52).png b/.gitbook/assets/image (52).png new file mode 100644 index 00000000..521703ff Binary files /dev/null and b/.gitbook/assets/image (52).png differ diff --git a/.gitbook/assets/image (53).png b/.gitbook/assets/image (53).png new file mode 100644 index 00000000..521703ff Binary files /dev/null and b/.gitbook/assets/image (53).png differ diff --git a/.gitbook/assets/image (54).png b/.gitbook/assets/image (54).png new file mode 100644 index 00000000..93beafdb Binary files /dev/null and b/.gitbook/assets/image (54).png differ diff --git a/.gitbook/assets/image (55).png b/.gitbook/assets/image (55).png new file mode 100644 index 00000000..521703ff Binary files /dev/null and b/.gitbook/assets/image (55).png differ diff --git a/.gitbook/assets/image (56).png b/.gitbook/assets/image (56).png new file mode 100644 index 00000000..6b7c4973 Binary files /dev/null and b/.gitbook/assets/image (56).png differ diff --git a/.gitbook/assets/ping-mu-kuai-zhao-20210821-xia-wu-12.49.02.png b/.gitbook/assets/ping-mu-kuai-zhao-20210821-xia-wu-12.49.02.png new file mode 100644 index 00000000..1ec85708 Binary files /dev/null and b/.gitbook/assets/ping-mu-kuai-zhao-20210821-xia-wu-12.49.02.png differ diff --git a/.gitbook/assets/ping-mu-kuai-zhao-20210823-shang-wu-9.03.45.png b/.gitbook/assets/ping-mu-kuai-zhao-20210823-shang-wu-9.03.45.png new file mode 100644 index 00000000..8f7ca1ff Binary files /dev/null and b/.gitbook/assets/ping-mu-kuai-zhao-20210823-shang-wu-9.03.45.png differ diff --git a/.gitbook/assets/ping-mu-kuai-zhao-20210823-xia-wu-6.37.08.png b/.gitbook/assets/ping-mu-kuai-zhao-20210823-xia-wu-6.37.08.png new file mode 100644 index 00000000..686cca1a Binary files /dev/null and b/.gitbook/assets/ping-mu-kuai-zhao-20210823-xia-wu-6.37.08.png differ diff --git a/.gitbook/assets/ping-mu-kuai-zhao-20210826-xia-wu-1.55.30.png b/.gitbook/assets/ping-mu-kuai-zhao-20210826-xia-wu-1.55.30.png new file mode 100644 index 00000000..cff1323c Binary files /dev/null and b/.gitbook/assets/ping-mu-kuai-zhao-20210826-xia-wu-1.55.30.png differ diff --git a/.gitbook/assets/ping-mu-kuai-zhao-20210902-xia-wu-3.52.15.png b/.gitbook/assets/ping-mu-kuai-zhao-20210902-xia-wu-3.52.15.png new file mode 100644 index 00000000..820e276e Binary files /dev/null and b/.gitbook/assets/ping-mu-kuai-zhao-20210902-xia-wu-3.52.15.png differ diff --git a/.gitbook/assets/ping-mu-kuai-zhao-20210920-shang-wu-11.47.15.png b/.gitbook/assets/ping-mu-kuai-zhao-20210920-shang-wu-11.47.15.png new file mode 100644 index 00000000..247710d1 Binary files /dev/null and b/.gitbook/assets/ping-mu-kuai-zhao-20210920-shang-wu-11.47.15.png differ diff --git a/.gitbook/assets/ping-mu-kuai-zhao-20210923-shang-wu-10.03.17.png b/.gitbook/assets/ping-mu-kuai-zhao-20210923-shang-wu-10.03.17.png new file mode 100644 index 00000000..43f821fe Binary files /dev/null and b/.gitbook/assets/ping-mu-kuai-zhao-20210923-shang-wu-10.03.17.png differ diff --git a/README.md b/README.md index df535f5c..e03dfbee 100644 --- a/README.md +++ b/README.md @@ -4,12 +4,6 @@ description: BF​M Unity —— Blockchain · Finance · Metaverse # 比坊梦 —— 区块链 · 金融 · 元宇宙 -> ## **比坊梦 —— 区块链 · 金融 · 元宇宙** -> -> **BF​M Unity —— Blockchain · Finance · Metaverse** - -![](.gitbook/assets/bfm-unity-3.0%20%283%29.png) - {% hint style="info" %} NOTE: **This project is in beta. Use at your own risk.** @@ -17,32 +11,14 @@ NOTE: **This project is in beta. Use at your own risk.** ### [赞助](https://guhhhhaa.gitbook.io/bfm/juan-zeng-da-shang) \| [加群](https://guhhhhaa.gitbook.io/bfm/ru-he-jia-ru-wo-men-de-tao-lun-qun-zu) \| [看板](https://trello.com/b/z4aDgNAL/todolist) -### [**系统核心代码**](https://guhhhhaa.gitbook.io/bfm/ruan-jian-bfm-on-python) **\|** [**CCXT重点实验室**](https://www.bfm-unity.com/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li) \| [**投资方法论**](https://guhhhhaa.gitbook.io/joinquant/jin-rong-li-lun-zong-jie) +### [**系统核心代码**](https://guhhhhaa.gitbook.io/bfm/ruan-jian-bfm-on-python) ****\| [**投资方法论**](https://guhhhhaa.gitbook.io/joinquant/jin-rong-li-lun-zong-jie) {% endhint %} -{% page-ref page="qian-xian/lv0-zhu-jian-qiao-yin-dao.md" %} - - - -{% page-ref page="qian-xian/management-cockpit-operation/" %} - -{% page-ref page="qian-xian/lv2-yin-hang/" %} - -{% page-ref page="qian-xian/command-room-discovery/" %} - -{% page-ref page="qian-xian/research-institute-development/" %} - -{% page-ref page="hou-fang/roadmap/" %} - {% page-ref page="li-shi/ru-he-jia-ru-wo-men-de-tao-lun-qun-zu/qun-gong-gao-bei-fen.md" %} -{% page-ref page="hou-fang/juan-zeng-da-shang.md" %} - -![](.gitbook/assets/bfm-unity-3.0%20%282%29.png) - ## 本项目使用 GNU General Public License v3.0 {% page-ref page="feng-kong-yu-he-gui/gpl-v3.md" %} -**© 2021.** [**BFM-Unity.com.**](https://www.bfm-unity.com/) [**BFM Unity**](https://www.bfm-unity.com/)**.** [**比坊梦联合体**](https://www.bfm-unity.com/)**. All Rights Reserved.** +**© 2020.** [**BFM-Unity.com.**](https://www.bfm-unity.com/) [**BFM Unity**](https://www.bfm-unity.com/)**.** [**比坊梦联合体**](https://www.bfm-unity.com/)**. All Rights Reserved.** diff --git a/SUMMARY.md b/SUMMARY.md index 79c9f46e..9048f47d 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -2,88 +2,6 @@ * [比坊梦 —— 区块链 · 金融 · 元宇宙](README.md) -## 前线 - -* [LV0-主舰桥 \(引导\) 🇺🇳](qian-xian/lv0-zhu-jian-qiao-yin-dao.md) -* [LV1-驾驶舱 \(运行\) 🚜](qian-xian/management-cockpit-operation/README.md) - * [什么样的人适合投资比特币?](qian-xian/management-cockpit-operation/shen-me-yang-de-ren-kuo-he-tou-zi-bi-te-bi.md) - * [私钥云保管 🔑 ☁️](qian-xian/management-cockpit-operation/si-yao-yun-bao-guan.md) - * [资产配置 🕙 ⌚️](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/README.md) - * [战略资产配置——卓尔金历 🕙](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/README.md) - * [卓尔金升级1——拟合函数](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-li-fa-de-sheng-ji-1-ni-he-han-shu.md) - * [卓尔金升级2——误差分析](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-li-fa-de-sheng-ji-2-wu-cha-fen-xi.md) - * [卓尔金升级3——图灵完备](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-3-tu-ling-wan-bei.md) - * [卓尔金升级4——动态图表](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-4-dong-tai-tu-biao.md) - * [卓尔金升级5——分类网络](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-5-shen-jing-wang-luo.md) - * [战术资产配置——哈布历⌚️](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/README.md) - * [哈布历法1层次](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/ha-bu-li-fa-yan-jiu.md) - * [哈布历法2层次](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/ha-bu-li-fa-gou-xiang-1.md) - * [已废弃](qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/yi-fei-qi.md) - * [数学利器](qian-xian/management-cockpit-operation/shu-xue-li-qi.md) -* [LV2-影银行 \(枢纽\) 🏦](qian-xian/lv2-yin-hang/README.md) - * [自营业务](qian-xian/lv2-yin-hang/zi-ying-tou-zi.md) - * [个人业务](qian-xian/lv2-yin-hang/ge-ren-ye-wu/README.md) - * [比坊梦基金会——资产管理](qian-xian/lv2-yin-hang/ge-ren-ye-wu/untitled-1.md) - * [企业业务](qian-xian/lv2-yin-hang/untitled.md) - * [创世业务](qian-xian/lv2-yin-hang/chuang-shi-ye-wu.md) -* [LV3-指挥室 \(探索\) 👔](qian-xian/command-room-discovery/README.md) - * [指挥室 - 以太坊](qian-xian/command-room-discovery/command-room-eth.md) - * [指挥室 - 币安智能链](qian-xian/command-room-discovery/command-room-bsc.md) - * [指挥室 - Polygon\(Matic\)](qian-xian/command-room-discovery/zhi-hui-shi-polygonmatic.md) - * [指挥室 - IPFS/FIL](qian-xian/command-room-discovery/zhi-hui-shi-ipfsfil.md) -* [LV4-研究院 \(架构\) 🔬](qian-xian/research-institute-development/README.md) - * [导游](qian-xian/research-institute-development/dao-you.md) - * [素白 · 密斯卡托尼克大学 🏫](qian-xian/research-institute-development/xiao-bai-xue-cheng/README.md) - * [Excel 教室](qian-xian/research-institute-development/xiao-bai-xue-cheng/excel-jiao-shi.md) - * [Power BI 教室](qian-xian/research-institute-development/xiao-bai-xue-cheng/power-bi-jiao-cheng.md) - * [SPSS 教室](qian-xian/research-institute-development/xiao-bai-xue-cheng/spss-jiao-cheng.md) - * [Python少儿编程教室 👩‍🏫](qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/README.md) - * [Python 办公自动化 OA](qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python-ban-gong-zi-dong-hua.md) - * [Python 金融 Finance](qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python-finance.md) - * [Python Project](qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python.md) - * [开发环境搭建教室 👨‍🏫 🚩](qian-xian/research-institute-development/xiao-bai-xue-cheng/ben-di-kai-fa-huan-jing.md) - * [文献与数据](qian-xian/research-institute-development/xiao-bai-xue-cheng/wen-xian-yu-shu-ju.md) - * [网络安全](qian-xian/research-institute-development/xiao-bai-xue-cheng/wang-luo-an-quan-dao-hang.md) - * [MIS 系统开发](qian-xian/research-institute-development/xiao-bai-xue-cheng/di-dai-ma-kai-fa.md) - * [WEB 全栈开发](qian-xian/research-institute-development/xiao-bai-xue-cheng/qian-duan-hou-duan.md) - * [企业战略分析](qian-xian/research-institute-development/xiao-bai-xue-cheng/qi-ye-zhan-lve-fen-xi.md) - * [基础财商教育](qian-xian/research-institute-development/xiao-bai-xue-cheng/ji-chu-cai-shang-jiao-yu.md) - * [风水玄学儒释道瑜伽占卜塔罗吸引力法则灵性修行](qian-xian/research-institute-development/xiao-bai-xue-cheng/feng-shui-xuan-xue-ru-shi-dao-zhan-bu-ta-luo-xi-yin-li-ling-xing-xiu-hang.md) - * [玄黑 · 算法科学分院 🔭 🛰️](qian-xian/research-institute-development/suan-fa-yan-jiu-yuan.md) - * [正黄 · API接口技术分院👩‍🚀👨‍🚀](qian-xian/research-institute-development/api-jie-kou-yan-jiu-yuan/README.md) - * [币安API实验室🚩](qian-xian/research-institute-development/api-jie-kou-yan-jiu-yuan/bi-an-duo-bi-zhong-zi-dong-hua-ce-lve-api-cao-zuo-zhi-nan.md) - * [朱红 · 高并发技术分院👩‍🔬 👨‍🔬](qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/README.md) - * [新版本高并发实验室🚩](qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/xin-ban-ben-gao-bing-fa-shi-yan-shi.md) - * [旧版本高并发实验室](qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/yi-bu-bing-fa-xie-cheng.md) - * [苍青 · 开源项目工程分院👷‍♀️👷](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/README.md) - * [总览](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/zong-lan.md) - * [Freqtrade 领域级重点实验室](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/freqtrade-shi-yan-shi.md) - * [HummingBot领域级重点实验室🚩](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/hummingbot-ling-yu-ji-zhong-dian-shi-yan-shi.md) - * [CCXT 领域级重点实验室🚩](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/README.md) - * [CCXT文档](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/ccxt-ke-ti-zu-1.md) - * [CCXT手册](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/ccxt-zhong-wen-kai-fa-shou-ce.md) - * [AIOQuant 实验室](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/liang-hua-kuang-jia-tui-jian-ke-cheng.md) - * [Peregrine 领域级重点实验室🚩](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/peregrine-shi-yan-shi.md) - * [btrader实验室](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/btrader-shi-yan-shi.md) - * [js实验室1](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/js-shi-yan-shi-1.md) - * [实验室2](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shi-yan-shi-2.md) - * [py重点实验室](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/py-zhong-dian-shi-yan-shi.md) - * [以太坊部署实验室](qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/yi-tai-fang-bu-shu-shi-yan-shi.md) -* [LV5-研究院 \(量子\) ☢️](qian-xian/lv5-yuan-lao-yuan-liang-zi/README.md) - * [曜黑 · 量子退火研究院](qian-xian/lv5-yuan-lao-yuan-liang-zi/yao-hei-liang-zi-tui-huo-fen-yuan.md) -* [LV6-星魔方 \(分类\) 🎲](qian-xian/lv6-xing-mo-fang-fen-lei/README.md) - * [数据分析-精炼](qian-xian/lv6-xing-mo-fang-fen-lei/shi-yan-shi-zhan-shi-gui.md) - * [数据分析-实验](qian-xian/lv6-xing-mo-fang-fen-lei/yu-zhou-mo-fang-hui-gui-fen-xi.md) - * [人工智能-实验](qian-xian/lv6-xing-mo-fang-fen-lei/ren-gong-zhi-neng-de-pen-jing-xiang.md) - -## 后方 - -* [陈列室 \(历程\) 🏆](hou-fang/roadmap/README.md) - * [虚拟资产编号名录](hou-fang/roadmap/fei-wu-zhi-zi-chan-ming-lu.md) -* [会客厅 \(赞助\) 💰 & 资产公示](hou-fang/juan-zeng-da-shang.md) -* [财务](hou-fang/ji-du-cai-wu-bao-biao.md) -* [设计](hou-fang/she-ji-tu.md) - ## 核心 * [【算法】算法描述](he-xin/what-is-bfm-al/README.md) @@ -116,45 +34,13 @@ * [01城密咒](li-shi/hui-shou-zhan/untitled.md) * [心理学](li-shi/hui-shou-zhan/xin-li-xue.md) -## 传统金融 - -* [云POS无卡支付 💳](chuan-tong-jin-rong/zhe-die.md) -* [股票投资](chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/README.md) - * [选股](chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/xuan-gu.md) -* [基金投资](chuan-tong-jin-rong/ji-jin-tou-zi/README.md) - * [若尘的且慢基金](chuan-tong-jin-rong/ji-jin-tou-zi/ruo-chen-de-qie-man-ji-jin.md) -* [黄金投资](chuan-tong-jin-rong/huang-jin-tou-zi.md) -* [国债逆回购](chuan-tong-jin-rong/guo-zhai-ni-hui-gou.md) -* [可转债打新](chuan-tong-jin-rong/ke-zhuan-zhai-da-xin.md) -* [离岸 HK·SG 🌍 港美股](chuan-tong-jin-rong/gang-mei-gu-kai-hu.md) - -## 考证学习 - -* [金融考试](kao-zheng-xue-xi/kao-shi-bao-ming.md) -* [计算机考试](kao-zheng-xue-xi/ji-suan-ji-kao-shi.md) -* [公务员考试](kao-zheng-xue-xi/untitled-1.md) - ## 工具 * [SS/V2Ray 科学上网 ✈️](gong-ju/ss-v2ray.md) -* [文章论文生成器](gong-ju/wen-zhang-sheng-cheng-qi.md) -* [发现网站](gong-ju/fa-xian-wang-zhan.md) -* [B站视频下载 🎬 ⏬](gong-ju/b-zhan-shi-pin-xia-zai.md) -* [法律文件下载](gong-ju/fa-lv-wen-jian-xia-zai.md) ## 风控与合规 * [LICENCE:GNU GPL v3.0](feng-kong-yu-he-gui/gpl-v3.md) -* [网站备案](feng-kong-yu-he-gui/wang-zhan-bei-an.md) -* [反洗钱](feng-kong-yu-he-gui/fan-xi-qian.md) -* [组织形式](feng-kong-yu-he-gui/zu-zhi-xing-shi/README.md) - * [腾讯云公司注册](feng-kong-yu-he-gui/zu-zhi-xing-shi/teng-xun-yun-gong-si-zhu-ce.md) - * [公司注册](feng-kong-yu-he-gui/zu-zhi-xing-shi/gong-si-zhu-ce.md) - * [申请社会团体](feng-kong-yu-he-gui/zu-zhi-xing-shi/shen-qing-she-hui-tuan-ti.md) - * [组织命名](feng-kong-yu-he-gui/zu-zhi-xing-shi/untitled.md) - * [如何注册民间团体?](feng-kong-yu-he-gui/zu-zhi-xing-shi/ru-he-zhu-ce-min-jian-tuan-ti.md) - * [章程参考1](feng-kong-yu-he-gui/zu-zhi-xing-shi/zhang-cheng-can-kao-1.md) - * [章程参考2](feng-kong-yu-he-gui/zu-zhi-xing-shi/zhang-cheng-can-kao-2.md) ## 链接 @@ -163,24 +49,3 @@ * [Github托管地址](https://github.com/guhhhhaa/bfm-gitbook) * [旧群文件](https://github.com/guhhhhaa/bfm-group-file) -## 空间站(建设中……) - -* [BFM \| 比坊梦(建设中……)](kong-jian-zhan/bfm-bi-fang-meng.md) -* [0-0 BFM Unity \| 比坊梦联合体](kong-jian-zhan/bfm-unity-bi-fang-meng-lian-he-ti.md) -* [0-1 BFM DA \| 比坊梦数产](kong-jian-zhan/bfm-da-bi-fang-meng-shu-chan.md) -* [1-0 BFM R-Ins. \| 比坊梦科学研究院](kong-jian-zhan/bfm-rins.-bi-fang-meng-ke-xue-yan-jiu-yuan.md) -* [1-1 BFM D-Ins. \| 比坊梦工程设计院](kong-jian-zhan/bfm-dins.-bi-fang-meng-gong-cheng-she-ji-yuan.md) -* [2-0 BFM Univ. \| 比坊梦大学](kong-jian-zhan/bfm-univ.-bi-fang-meng-da-xue.md) -* [2-1 BFM Cult. \| 比坊梦文化](kong-jian-zhan/bfm-cult.-bi-fang-meng-wen-hua.md) -* [2-2 BFM Trad. \| 比坊梦金典](kong-jian-zhan/bfm-trad.-bi-fang-meng-jin-dian.md) - ---- - -* [【垃圾】回收站 ♻️](la-ji-hui-shou-zhan/README.md) - * [入群费用](la-ji-hui-shou-zhan/yi-shi-xiao.md) - * [指挥室](la-ji-hui-shou-zhan/zhi-hui-shi.md) - * [神经网络策略](la-ji-hui-shou-zhan/shen-jing-wang-luo-ce-lve.md) - * [挖狗狗币](la-ji-hui-shou-zhan/wa-gou-gou-bi.md) - * [MVRV](la-ji-hui-shou-zhan/mvrv-bei-zhe-die.md) - * [驾驶舱](la-ji-hui-shou-zhan/cong-jia-shi-cang-xie-xia-de-la-ji.md) - diff --git a/chuan-tong-jin-rong/gang-mei-gu-kai-hu.md b/chuan-tong-jin-rong/gang-mei-gu-kai-hu.md deleted file mode 100644 index c622fea3..00000000 --- a/chuan-tong-jin-rong/gang-mei-gu-kai-hu.md +++ /dev/null @@ -1,61 +0,0 @@ -# 离岸 HK·SG 🌍 港美股 - -## 导航指南网站:🧭 - -[美股之家](https://www.mg21.com/) \| [中牛港美](https://www.zngm.com/) \| [口袋开户](https://www.kdkh.com/) \| [美股指南](https://investguider.com/) \| [**旺旺来富**](https://wangwanglaifu.com/)\*\*\*\* - -## 离岸银行卡:💳 - HK🇭🇰 - SG🇸🇬 - -[土耳其电子签证避坑攻略](https://zhuanlan.zhihu.com/p/145685753) - -[远程个人离岸银行开户](https://wangwanglaifu.com/individual-remote-offshore-bank-account-opening/) - -[**汇丰**](https://www.hsbc.com.cn/) **\|** [**渣打**](https://www.sc.com/cn/) **\|** [**花旗**](https://www.citi.com/) **🇬🇧🇺🇸 🚩** -[**星展**](https://www.dbs.com.sg/) **\|** [**大华**](https://www.uob.com.sg/chi/) **\|** [**华侨**](https://www.ocbc.com/) **🇸🇬 🚩** -[**恒生**](https://www.hangseng.com.cn/) **\|** [**东亚**](https://www.hkbea.com.cn/PersonalBusiness/) **\|** [**大新**](https://www.dahsing.com/) **🇭🇰 🚩** -[**中国**](https://www.boc.cn/) **\|** [**工商**](http://www.icbc.com.cn/icbc/) **\|** [**建设**](http://www.ccb.com/cn) **🇨🇳 🚩 95566 \| 95588 \| 95533** -[**农业**](http://www.abchina.com/cn/) **\|** [**交通**](http://www.bankcomm.com/) **\|** [**邮储**](https://www.psbc.com/cn) **🇨🇳 95599 \| 95559 \| 95580** -[**民生**](https://www.cmbc.com.cn/) **\|** [**招商**](https://www.cmbchina.com/) **\|** [**中信**](http://www.citicbank.com/) **🇨🇳 🚩 95568 \| 95555 \| 95558** -[**平安**](https://bank.pingan.com/) **\|** [**光大**](https://www.cebbank.com/) **\|** [**兴业**](https://www.cib.com.cn/) **🇨🇳 95511 \| 95595 \| 95561** -[**浦发**](https://www.spdb.com.cn/) **\|** [**广发**](http://www.cgbchina.com.cn/) **\|** [**华夏**](https://www.hxb.com.cn/) **🇨🇳 95528 \| 95508 \| 95577** - -[全球最大的50家银行在区块链领域的布局](https://cloud.tencent.com/developer/article/1356837) - -## [互联网券商](https://zhuanlan.zhihu.com/p/349480662): - -[老虎](https://www.itiger.com/) \| [雪盈](https://www.snowballsecurities.com/) \|[ 富途](https://www.futuhk.com/)\([富途牛牛](https://www.futunn.com/)\) \| [微牛](https://www.webull.com/) \| [华盛](https://www.vbkr.com/) - -—————————— - -十三张热门香港卡评测+办理攻略 -[https://zhuanlan.zhihu.com/p/350801551](https://zhuanlan.zhihu.com/p/350801551) - -手把手教你办理香港民生卡买港股、美股 -[https://zhuanlan.zhihu.com/p/46755993](https://zhuanlan.zhihu.com/p/46755993) - -—————————— - -【链接】「中港两地银行卡」办理全解析 __手机搜狐网 [https://m.sohu.com/a/360061422\_120481337](https://m.sohu.com/a/360061422_120481337) __ - -【链接】干货 \|「中港两地银行卡」如何办理?手机搜狐网 [https://m.sohu.com/a/209974660\_100014622](https://m.sohu.com/a/209974660_100014622) - -【链接】香港公司账户开设攻略与注意事项 \_ 手机搜狐网 [https://m.sohu.com/a/123697977\_587533](https://m.sohu.com/a/123697977_587533) - -0,离岸金融服务由 -**旺旺来富** -提供:[https://wangwanglaifu.com/](https://wangwanglaifu.com/) ([知乎1](https://www.zhihu.com/people/wangwanglaifu)) -[个人离岸业务 - 旺旺来富](https://wangwanglaifu.com/individual-offshore-services/) -[其他产品与服务 - 旺旺来富](https://wangwanglaifu.com/products-and-services/) - -1,离岸金融服务由 -**香港卓信会计事务所有限公司** -或 -**杭州卓信经济信息咨询有限公司(卓信企业)** -提供: -[http://www.zhuoxin.hk/](http://www.zhuoxin.hk/) 或 [http://www.zhuoxin.net/](http://www.zhuoxin.net/) - -2,离岸金融服务由 -**宏源国际咨询管理(深圳)有限公司** -提供: -[https://www.liankuaiche.com/](https://www.liankuaiche.com/) 或 [http://www.hyintern.com/index.html](http://www.hyintern.com/index.html) - diff --git a/chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/README.md b/chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/README.md deleted file mode 100644 index 51edd1a2..00000000 --- a/chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/README.md +++ /dev/null @@ -1,28 +0,0 @@ -# 股票投资 - -[萝卜投研](https://robo.datayes.com/v2/),[集思录](https://www.jisilu.cn/),[雪球](https://xueqiu.com/),[价值大师网](https://www.gurufocus.cn/)([美国席勒市盈率](https://www.gurufocus.cn/indicator/shiller_pe),[美国巴菲特指标](https://www.gurufocus.cn/indicator/buffett-market-valuation),[中国巴菲特指标](https://www.gurufocus.cn/indicator/global_market_valuation/CHN))…… - -[同花顺](https://www.10jqka.com.cn/),[东方财富](https://www.eastmoney.com/),[新浪财经](https://finance.sina.com.cn/)…… - -聚宽,米筐,优矿,大矿…… - -马克维兹,多因子,凯利,香农…… - -网格,马丁…… - -国债逆回购,可转债打新…… - -算法交易,量化投资,数据分析,统计分析,商业智能…… - -指标分析 均线MA,EMA, 趋势MACD,摆动KDJ,能量RSI, ATR,BOLL…… - -资产负债率,净资产收益率,应收账款周转率…… PE,PB,股息率,ROE…… - -Word,Excel,PPT,Power BI,SPSS…… - -## [【投资干货】10个投资理财必备工具!看这一篇就够✅](https://www.bilibili.com/video/BV1uQ4y1Z7yD) - -国内软件 1.巨潮咨询 2.芝士选股\(本人也用,但是收费\) 3 爱问财 4 雪球 5 支付宝 - -国外软件 1 英为财情 2 ft财报 3 富途 4 trading viewing 5 hypercharts - diff --git a/chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/xuan-gu.md b/chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/xuan-gu.md deleted file mode 100644 index 70db4c13..00000000 --- a/chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/xuan-gu.md +++ /dev/null @@ -1,97 +0,0 @@ -# 选股 - -{% hint style="info" %} -NOTE: 策略推荐市盈率,市净率策略, - -**该策略的特点是 —— 抗跌不跟涨,跟涨选指数** -{% endhint %} - -## 大盘 - -### 沪深300 - -沪深300-市净率 - -[https://robo.datayes.com/v2/landing/monitor\_detail?slotId=238422](https://robo.datayes.com/v2/landing/monitor_detail?slotId=238422) - -沪深300-市盈率 - -[https://robo.datayes.com/v2/landing/monitor\_detail?slotId=238421](https://robo.datayes.com/v2/landing/monitor_detail?slotId=238421) - -### 上证综指 - -上证综指-市净率 - -[https://robo.datayes.com/v2/landing/monitor\_detail?slotId=238420](https://robo.datayes.com/v2/landing/monitor_detail?slotId=238420) - -上证综指-市盈率 - -[https://robo.datayes.com/v2/landing/monitor\_detail?slotId=238419](https://robo.datayes.com/v2/landing/monitor_detail?slotId=238419) - -## 选股 - -### 因子看板——风险因子,风格因子 - -[https://www.joinquant.com/view/factorlib/list](https://www.joinquant.com/view/factorlib/list) - -### 市净率因子 book\_to\_price\_ratio - -(教科书上是价格/净值,这个是净值/价格,所以教科书上选小的,这个选大的) -**(回测区间选10年) -(策略:按照市值比例购买。预计未来下跌时选择最大分位数的股票,预计上涨时选指数)** -[https://www.joinquant.com/view/factorlib/detail/f297b9704818db80ad7fde91fe42b493?buildtype=0&universetype=aHMzMDA%3D&period=M3k%3D&commisionFee=MA%3D%3D&skipPaused=MQ%3D%3D](https://www.joinquant.com/view/factorlib/detail/bb3b7b42b7425d4ada99603b008724d4?buildtype=0&universetype=aHMzMDA%3D&period=M3k%3D&commisionFee=MA%3D%3D&skipPaused=MQ%3D%3D) - -### 预期市盈率 predicted\_earnings\_to\_price\_ratio - -(教科书上是价格/收益,这个是收益/价格,所以教科书上选小的,这个选大的) -**(回测区间选10年) -(策略:按照市值比例购买。预计未来下跌时选择最大分位数的股票,预计上涨时选指数)** -[https://www.joinquant.com/view/factorlib/detail/bb3b7b42b7425d4ada99603b008724d4?buildtype=0&universetype=aHMzMDA%3D&period=M3k%3D&commisionFee=MA%3D%3D&skipPaused=MQ%3D%3D](https://www.joinquant.com/view/factorlib/detail/bb3b7b42b7425d4ada99603b008724d4?buildtype=0&universetype=aHMzMDA%3D&period=M3k%3D&commisionFee=MA%3D%3D&skipPaused=MQ%3D%3D) - -## 投资建议 - -选股是没有必要的,技术分析一概不靠谱。最好的选股就是指数。至于个股,和个基金,我是从来不推荐的。推荐买入股票指数基金和债券基金。 - -真正需要做的是,股票指数和债券的配比关系。而股票指数和债券的配比关系是按照大盘的市净率和市盈率来决定的。 - -一切通过技术分析,想要跑赢沪深300和纳指100的尝试都是徒劳的。选股和操作没有用,噪声操作会加大你的亏损,不信你做个10年回测就明白——[https://www.joinquant.com/view/factorlib/list](https://www.joinquant.com/view/factorlib/list) 这个是因子分析,可以选择你的选股策略进行回测,如果你把周期拉到10年,你会发现,相比技术分析指数才是真正有效的选择。 - -如果说什么有用,也就是,市净率,市盈率,才有用。 而且市净率,市盈率只有下跌行情有用,能抗跌, - -上涨行情都偏离价值,所以市净率,市盈率无法用来追涨。 - -{% embed url="https://guhhhhaa.gitbook.io/joinquant/jin-rong-li-lun-zong-jie/ji-ben-mian-xuan-gu" %} - -{% hint style="success" %} -## 选股,成长性: - -净资产收益率ROE>15%(**>10%**就不错)(ROE=PB/PE), -且用杜邦分析剔除杠杆(权益乘数<3)。 - -股息率>5%,([不绝对](https://xueqiu.com/4195046382/148444383),可以不加) - -市盈率相对盈利增长比率[PEG](https://xueqiu.com/8287840120/74917276)<0.5。(<1也可)([参考](https://xueqiu.com/8287840120/83909262)) - -## 确定买卖点,相对估值,低估高估: - - 介绍:[估值和资本结构因子](https://xueqiu.com/8287840120/102600210) - -市盈率P/E<10,—— 0 - 12买入,>20卖出 - -市净率P/B<2, —— 0 - 1.2买入,>2卖出 - - - -[**https://www.ricequant.com/quant/wizard/**](https://www.ricequant.com/quant/wizard/)\*\*\*\* - -\*\*\*\*[**https://www.joinquant.com/wizardstock/index/generateStock**](https://www.joinquant.com/wizardstock/index/generateStock)\*\*\*\* - -\*\*\*\*[**回测结果**](https://www.ricequant.com/quant/backtest/6224534)\*\*\*\* -{% endhint %} - -![](../../.gitbook/assets/ping-mu-kuai-zhao-20210228-xia-wu-1.29.34.png) - -![](../../.gitbook/assets/ping-mu-kuai-zhao-20210228-xia-wu-1.24.27.png) - -![   横轴是估值,纵轴是仓位和操作](../../.gitbook/assets/0e2abfcc2987f6aaeb09ece758f3e8ac.jpg) - diff --git a/chuan-tong-jin-rong/guo-zhai-ni-hui-gou.md b/chuan-tong-jin-rong/guo-zhai-ni-hui-gou.md deleted file mode 100644 index 6a752a62..00000000 --- a/chuan-tong-jin-rong/guo-zhai-ni-hui-gou.md +++ /dev/null @@ -1,6 +0,0 @@ -# 国债逆回购 - -[https://www.bilibili.com/video/BV1TJ411i7je](https://www.bilibili.com/video/BV1TJ411i7je) - -[https://www.bilibili.com/video/BV1MJ411i7Ld](https://www.bilibili.com/video/BV1MJ411i7Ld) - diff --git a/chuan-tong-jin-rong/huang-jin-tou-zi.md b/chuan-tong-jin-rong/huang-jin-tou-zi.md deleted file mode 100644 index dad54528..00000000 --- a/chuan-tong-jin-rong/huang-jin-tou-zi.md +++ /dev/null @@ -1,11 +0,0 @@ -# 黄金投资 - -![](../.gitbook/assets/87242006592424.png) - -从上面的表格我们可以了解积利金与积存金的区别,但是只是一些比较基本的内容。如果从积利金与积存金的本质上分析的话,中国银行积利金更像是股票投资,它的业务起点为1克,投资时购买的是黄金,但是退出时可以在账户资金与实物金之间转换。 - -而工商银行积存金更像一款普通的理财产品,虽然投资者购入的是积存金这一与黄金市场挂钩的产品,但是投资者本身不需要了解黄金市场,因为工商银行会安排贵金属理财专家团队来购入黄金,买卖交易。 - -简单来说,购买中国银行积利金,需要投资者本身对贵金属市场有一定认识,因为需要自己根据上海黄金交易所黄金现货的请假来判断。而工商银行的积存金投资者把钱交给工商银行,然后工商银行的贵金属团队来操刀黄金市场的交易,在一定程度上可以分散风险。 - - diff --git a/chuan-tong-jin-rong/ji-jin-tou-zi/README.md b/chuan-tong-jin-rong/ji-jin-tou-zi/README.md deleted file mode 100644 index 43dfa2d1..00000000 --- a/chuan-tong-jin-rong/ji-jin-tou-zi/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# 基金投资 - -## 常用基金 - -#### [**广发纳斯达克100指数C\[006479\]**](http://fund.eastmoney.com/006479.html)\*\*\*\* - -#### \*\*\*\*[广发纳斯达克100指数A\[270042\]](http://fund.eastmoney.com/270042.html) - -#### [**华宝香港大盘A\[501301\]**](http://fund.eastmoney.com/501301.html)\*\*\*\* - -## 群友推荐基金 - -![](../../.gitbook/assets/2836d1dd67fb0fb86288f409a551e21e.png) - -#### \*\*\*\*[**嘉实沪港深精选股票\[001878\]**](http://fund.eastmoney.com/001878.html)\*\*\*\* - -#### \*\*\*\*[前海开源人工智能主题混合\[001986\]](http://fund.eastmoney.com/001986.html) - -## 若尘的且慢基金 - -{% page-ref page="ruo-chen-de-qie-man-ji-jin.md" %} - diff --git a/chuan-tong-jin-rong/ji-jin-tou-zi/ruo-chen-de-qie-man-ji-jin.md b/chuan-tong-jin-rong/ji-jin-tou-zi/ruo-chen-de-qie-man-ji-jin.md deleted file mode 100644 index 13254625..00000000 --- a/chuan-tong-jin-rong/ji-jin-tou-zi/ruo-chen-de-qie-man-ji-jin.md +++ /dev/null @@ -1,8 +0,0 @@ -# 若尘的且慢基金 - -主策略(长期高收益)20% [https://qieman.com/portfolios/ZH084662](https://qieman.com/portfolios/ZH084662) - -稳定策略(长期低风险)20% [https://qieman.com/portfolios/ZH087885](https://qieman.com/portfolios/ZH087885) - -激进策略(短期高风险)5% [https://qieman.com/portfolios/ZH087897](https://qieman.com/portfolios/ZH087897) - diff --git a/chuan-tong-jin-rong/ke-zhuan-zhai-da-xin.md b/chuan-tong-jin-rong/ke-zhuan-zhai-da-xin.md deleted file mode 100644 index 120be509..00000000 --- a/chuan-tong-jin-rong/ke-zhuan-zhai-da-xin.md +++ /dev/null @@ -1,20 +0,0 @@ -# 可转债打新 - -[https://zhuanlan.zhihu.com/p/102159147](https://zhuanlan.zhihu.com/p/102159147) - -[https://zhuanlan.zhihu.com/p/99965092](https://zhuanlan.zhihu.com/p/99965092) - -[https://www.bilibili.com/video/BV1Za4y1H7Bj](https://www.bilibili.com/video/BV1Za4y1H7Bj) - -[https://www.bilibili.com/video/BV1Ua4y1H78Z](https://www.bilibili.com/video/BV1Ua4y1H78Z) - -[https://www.bilibili.com/video/BV1Lo4y1Z7yQ](https://www.bilibili.com/video/BV1Lo4y1Z7yQ) √ - -[https://www.bilibili.com/video/BV1Qy4y1U7Gp](https://www.bilibili.com/video/BV1Qy4y1U7Gp) √ - -如果是打新可转债专用,每个账户不需要放多少钱, - -每只可转债从申购到上市一般15天,这样一个月就可以周转两次, - -一般5000就足够了,如果遇到运气爆棚,随时银证转账即可。 - diff --git a/chuan-tong-jin-rong/zhe-die.md b/chuan-tong-jin-rong/zhe-die.md deleted file mode 100644 index 28cb28be..00000000 --- a/chuan-tong-jin-rong/zhe-die.md +++ /dev/null @@ -1,205 +0,0 @@ -# 云POS无卡支付 💳 - -{% tabs %} -{% tab title="信用卡云POS无卡支付" %} -1,申请信用卡 - -* \*\*\*\*[**51信用卡管家**](https://www.u51.com/),[**卡牛信用卡管家**](https://www.kaniu.com/),各大手机银行 - -2,激活信用卡 - -* 需**本人**带**身份证**和**信用卡**去各大银行**线下实体网点**激活 - -3,刷卡收款 - -* [大嘉购](https://djg.jiajiepay.com/share/share.html?agenTinvitCode=y1NbcYZI+7vskR2zsCBw199cqbOT+1AhnSHq99HRbd+niPBp9nYyUk/AfNZnC1e65bdVS/5hib5jEaafrAcuYmEk2+tPIT3AQpq0IMcfuBpospgPpLdiBDFf84iY1XTlirbugCd0BNT8J3l4j1YcXTUGWJ3WWJu3aLNSEnArXXw=&displayCode=*******5521#/) 🚩 -* [易刷吧](https://yishuaba.com/yishuaba-share/#/?invitationCode=836602®Type=0) 🚩**(费率0.38%)** - -\*\*\*\*[**2021手机POS机最新大全**](https://www.poszfw.com/posdl/947.html)(排名不分先后,按首字母排序) - -| [宝贝支付](https://bbpurse.com/flypayfx/popularize/registpage?pcode=00B52S85507) | [电银付](https://cloud.chinaebi.cn/yfapi/regist/#/download-apk?type=1) | [大嘉购](https://djg.jiajiepay.com/share/share.html?agenTinvitCode=y1NbcYZI+7vskR2zsCBw199cqbOT+1AhnSHq99HRbd+niPBp9nYyUk/AfNZnC1e65bdVS/5hib5jEaafrAcuYmEk2+tPIT3AQpq0IMcfuBpospgPpLdiBDFf84iY1XTlirbugCd0BNT8J3l4j1YcXTUGWJ3WWJu3aLNSEnArXXw=&displayCode=*******5521#/) 🚩 | -| :--- | :--- | :--- | -| [汇开优店](https://m.dsyundian.com/mobile/html/share/index.html?phone=otf8g7gwzIYURQD7137JPw==&flag=1&barndId=1) | [金运微收](https://jkreg.jytpay.com/index?inviteUser=10375124&termCode=96&termSource=1) | [闪电宝Plus](https://star.cloudpnr.com/sdb_plus/sdbpl-mobile/html/homePicCtr/regH5?phone=DfrR1UGTeALbsDuMu0accQ==&flag=1&barndId=1) 🚩 | -| [易刷吧](https://yishuaba.com/yishuaba-share/#/?invitationCode=836602®Type=0) 🚩 | [易钱包](https://yqb.net.cn/) | [**颐支付**](http://oss.flmyzf.com/yzf/html/downloadapp/index.html#/)\*\*\*\* | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
是否通过需要门头照费率
小额
-
费率 -
大额
前期费用小额 -
到账时间
大额 -
到账时间
大嘉购 🚩0.38%0.6%0 -

300*1, T+1

-

-

>20000 -
1000*5, T+0

-
T+0
电银付 🚩未知
闪电宝Plus 🚩0.38%+10.6%+30
汇开优店 -
金运微收 - 未知
易钱包 🚩0.6%+30.6%+30.5
易刷吧 - 未知未知
宝贝支付 🚩0.38%0.38%
<b></b>颐支付<b></b>
- -4,资金周转方案:如借了1.5W,手中只有1k,那么将1k还进刷出,重复15次即可还清该期欠款,延后到下一期。理论上可以无限延后,这样每个月只需交手续费,无需交利息。 - -建议不要集中一天,而是在还款期之前分散多天操作。 - -注意先多预留出少量的手续费。 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20201222-xia-wu-7.19.25.png) - -## 参考: - -[https://www.poszfw.com/posbl/701.html](https://www.poszfw.com/posbl/701.html) -[https://www.poszfw.com/posdl/947.html](https://www.poszfw.com/posdl/947.html) - -[https://www.84ie.com/shengcaiyoudao/2912.html](https://www.84ie.com/shengcaiyoudao/2912.html) -{% endtab %} - -{% tab title="币安" %} -币安可以抵押借币,日息万五,年18% -{% endtab %} - -{% tab title="DeFi" %} -* [**Aave**](https://app.aave.com/)\*\*\*\* - -闪电贷一般需要用户通过编程实现,但目前也出现了一些工具,比如 [CollateralSwap](https://collateralswap.com/)、[DeFi Saver](https://app.defisaver.com/)、[Furucombo](https://furucombo.app/) 等,使得用户不需要编程也能使用闪电贷。 -{% endtab %} - -{% tab title="合约,期货" %} -群主不了解,不建议 -{% endtab %} -{% endtabs %} - -## 银行信用卡分期——计算器 - -#### 快易理财网 - [信用卡分期实际年化利率计算器](https://www.kylc.com/bank/fees/ccinstallmentrate.html) - -## 小贷,网贷——计算器 - -> 建议别碰小贷, -> -> 实在不行可以碰 平安普惠 和 宜信普惠。但是他们也是高利贷。 -> -> 有条件还是老老实实刷信用卡,分期,提额。还有银行的贷款。 - -[等额本息计算器](http://www.baiozhuntuixing.com/benxi.aspx) \| [等额本金计算器](http://www.baiozhuntuixing.com/benjin.aspx) \| [等额本金与等额本息的区别](http://www.baiozhuntuixing.com/diff.aspx) - -[民间借贷计算器](http://www.baiozhuntuixing.com/people.aspx) - -[和讯理财计算器](https://money.hexun.com/toolcase_loans/index.html) - -## **名义利率与实际利率**转化**计算** - -**(使用 EXCEL 的** [**IRR**](https://support.microsoft.com/zh-cn/office/irr-%e5%87%bd%e6%95%b0-64925eaa-9988-495b-b290-3ad0c163c1bc?ui=zh-cn&rs=zh-cn&ad=cn) **函数)** - -经验公式:等额本息实际利**率=1.8\*名义利率** - -[实用tips:如何计算等额本息还款方式贷款的实际年化利率 ](https://www.sohu.com/a/245052510_154368) - diff --git a/feng-kong-yu-he-gui/fan-xi-qian.md b/feng-kong-yu-he-gui/fan-xi-qian.md deleted file mode 100644 index 6c919426..00000000 --- a/feng-kong-yu-he-gui/fan-xi-qian.md +++ /dev/null @@ -1,100 +0,0 @@ -# 反洗钱 - -## 中国人民银行办公厅关于进一步加强反洗钱和反恐怖融资工作的通知 - -出处: 中国人民银行 发布时间:2019-07-15 - -为进一步落实风险为本方法,提高反洗钱和反恐怖融资工作有效性,防范洗钱和恐怖融资风险,根据《中华人民共和国反洗钱法》、《中华人民共和国反恐怖主义法》、《中华人民共和国中国人民银行法》等法律规定,现就加强义务机构反洗钱和反恐怖融资工作有关事项通知如下: - -一、加强客户身份识别管理 - -(一)客户身份核实要求 - -义务机构在识别客户身份时,应通过可靠和来源独立的证明文件、数据信息和资料核实客户身份,了解客户建立、维持业务关系的目的及性质,并在适当情况下获取相关信息。 - -原则上,义务机构应当在建立业务关系或办理规定金额以上的一次性业务之前,完成客户及其受益所有人的身份核实工作。但在有效管理洗钱和恐怖融资风险的情况下,为不打断正常交易,可以在建立业务关系后尽快完成身份核实。在未完成客户身份核实工作前,义务机构应当建立相应的风险管理机制和程序,对客户要求办理的业务实施有效的风险管理措施,如限制交易数量、类型或金额,加强交易监测等。 - -对于寿险和具有投资功能的财产险业务,义务机构应当充分考虑保单受益人的风险状况,决定是否对保单受益人开展强化的客户身份识别。当保单受益人为非自然人且具有较高风险时,义务机构应当采取强化的客户身份识别措施,至少在给付保险金时,通过合理手段识别和核实其受益所有人。 - -义务机构应当采取持续的客户身份识别措施,详细审查保存的客户资料和业务关系存续期间发生的交易,及时更新客户身份证明文件、数据信息和资料,确保当前进行的交易符合义务机构对客户及其业务、风险状况、资金来源等方面的认识。对于高风险客户,义务机构应当提高审查的频率和强度。 - -如果义务机构无法进行客户身份识别工作,或经评估超过本机构风险管理能力的,不得与客户建立或维持业务关系,并应当考虑提交可疑交易报告。 - -(二)依托第三方机构开展客户身份识别的要求 - -义务机构依托第三方机构开展客户身份识别的,应当采取以下措施:一是确认第三方机构接受反洗钱和反恐怖融资监管,并按照反洗钱法律、行政法规和本通知要求,采取了客户身份识别及交易记录保存措施;二是立即从第三方机构获取客户身份识别的必要信息;三是在需要时立即从第三方机构获取客户身份证明文件和其他相关资料的复印件或影印件。义务机构应当承担第三方机构未履行客户身份识别义务的责任。 - -义务机构依托境外第三方机构开展客户身份识别,应当充分评估该机构所在国家或地区的风险状况,不得依托来自高风险国家或地区的第三方机构开展客户身份识别。 - -二、加强洗钱或恐怖融资高风险领域的管理 - -(一)高风险领域的客户身份识别和交易监测要求 - -在洗钱和恐怖融资风险较高的领域,义务机构应当采取与风险相称的客户身份识别和交易监测措施,包括但不限于: - -1.进一步获取客户及其受益所有人身份信息,适度提高客户及其受益所有人信息的收集或更新频率。 - -2.进一步获取业务关系目的和性质的相关信息,深入了解客户经营活动状况、财产或资金来源。 - -3.进一步调查客户交易及其背景情况,询问交易目的,核实交易动机。 - -4.适度提高交易监测的频率及强度。 - -5.按照法律规定或与客户的事先约定,对客户的交易方式、交易规模、交易频率等实施合理限制。 - -6.合理限制客户通过非面对面方式办理业务的金额、次数和业务类型。 - -7.与客户建立、维持业务关系,或为客户办理业务,需经高级管理层批准或授权。 - -(二)高风险国家或地区的管控要求 - -义务机构应当建立工作机制,及时获取金融行动特别工作组(FATF)发布和更新的高风险国家或地区名单。在与来自FATF名单所列的高风险国家或地区的客户建立业务关系或进行交易时,义务机构应采取与高风险相匹配的强化身份识别、交易监测等控制措施,发现可疑情形时应当及时提交可疑交易报告,必要时拒绝提供金融服务乃至终止业务关系。 - -已经与高风险国家或地区的机构建立代理行关系的,义务机构应当进行重新审查,必要时终止代理行关系。对于在高风险国家或地区设立的分支机构或附属机构,义务机构应当提高内部监督检查或审计的频率和强度,确保所属分支机构或附属机构严格履行反洗钱和反恐怖融资义务。 - -义务机构应当采取合理方式,关注其他国家或地区的反洗钱和反恐怖融资体系缺陷。上述“合理方式”应当参照《中国人民银行关于印发<金融机构洗钱和恐怖融资风险评估及客户分类管理指引>的通知》(银发〔2013〕2号)中关于“地域风险”子项所列的内容。 - -(三)不得简化客户身份识别措施的情形 - -义务机构怀疑客户涉嫌洗钱、恐怖融资等违法犯罪活动的,无论其交易金额大小,不得采取简化的客户身份识别措施,并应采取与其风险状况相称的管理措施。 - -三、加强跨境汇款业务的风险防控和管理 - -(一)办理跨境汇出汇款的风险防控和管理要求 - -办理跨境汇出汇款时,义务机构应当获取和登记汇款人姓名或名称、账号、住所,以及收款人的姓名或名称、账号。汇款人没有在本机构开户的或本机构无法登记收款人账号的,义务机构应当将唯一交易识别码作为汇款人或收款人账号进行登记,确保该笔交易可跟踪稽核。其中,唯一交易识别码是指由字母、数字或符号组成的号码,与用于汇款的支付清算系统或报文系统协议相一致。 - -对于单笔人民币1万元或外币等值1000美元以上的跨境汇出汇款,义务机构还应当登记汇款人的有效身份证件或其他身份证明文件的号码,并通过核对或查看已留存的客户有效身份证件、其他身份证明文件等措施核实汇款人信息,确保信息的准确性。如怀疑客户涉嫌洗钱、恐怖融资等违法犯罪活动的,无论交易金额大小,义务机构应当核实汇款人信息。 - -义务机构应当将汇款人和收款人的姓名或名称、账号或唯一交易识别码完整传递给接收汇款的机构。 - -(二)义务机构作为跨境汇款业务中间机构的风险防控和管理要求 - -义务机构作为跨境汇款业务的中间机构时,应当完整传递汇款人和收款人的所有信息,采取合理措施识别是否缺少汇款人和收款人必要信息,并依据风险为本的政策和程序,明确执行、拒绝或暂停上述汇款业务的适用情形及相应的后续处理措施。 - -(三)办理跨境汇入汇款的风险防控和管理要求 - -办理跨境汇入汇款时,义务机构应当获取收款人姓名或名称、账号或唯一交易识别码等信息,采取实时监测或事后监测等合理措施,识别是否缺少汇款人或收款人必要信息,并依据风险为本的政策和程序,明确执行、拒绝或暂停上述跨境汇款业务的适用情形及相应的后续处理措施。 - -对于单笔人民币1万元或外币等值1000美元以上的跨境汇入汇款,义务机构应当通过核对或查看已留存的客户有效身份证件或其他身份证明文件等措施核实收款人身份,并根据风险状况采取相应的其他客户身份识别措施。 - -(四)其他要求 - -1.对于办理上述跨境汇款业务中获取的汇款人、收款人等相关信息,义务机构应当至少保存5年。 - -2.义务机构在处理跨境汇款业务过程中,应当严格执行联合国安理会有关防范和打击恐怖主义和恐怖融资的相关决议(如联合国安理会第1267号决议和第1373号决议及其后续决议),禁止与决议所列的个人或实体进行交易,并按照规定采取限制交易、冻结等控制措施。 - -3.对于掌握汇款人和收款人双方信息的义务机构,在跨境汇款业务处理过程中,应当审核汇款人和收款人双方的信息, 发现可疑情形的,按照规定提交可疑交易报告。 - -4.办理跨境汇出汇款的义务机构,如不能遵从上述要求的,则不得为客户办理汇款业务。 - -四、加强预付卡代理销售机构的风险管理 - -非银行支付机构委托销售合作机构代理销售预付卡时,应当在委托代理协议中明确双方的反洗钱和反恐怖融资职责,将销售合作机构纳入自身的反洗钱和反恐怖融资体系,对销售合作机构遵守反洗钱和反恐怖融资义务的情况进行监督。非银行支付机构应当按照安全、准确、完整的原则,保存销售合作机构的名录,登记其姓名或名称、有效身份证件或其他身份证明文件的种类和号码、地址,并按照规定及时向监管机构、执法机构等部门报送。 - -五、加强交易记录保存,及时报送可疑交易报告 - -义务机构应当强化内部管理措施,更新技术手段,逐步完善相关信息系统,采取切实可行的管理措施,确保交易记录和客户身份信息完整准确,便于开展资金监测,配合反洗钱监管和案件调查。义务机构应当建立适当的授权机制,明确工作程序,按照规定将客户身份信息和交易记录迅速、便捷、准确地提供给监管机构、执法机构等部门。 - -对于符合《金融机构大额交易和可疑交易报告管理办法》(中国人民银行令〔2016〕第3号发布)第十七条规定情形的可疑交易报告,义务机构应当立即向中国反洗钱监测分析中心和中国人民银行或当地分支机构报送。 - diff --git a/feng-kong-yu-he-gui/wang-zhan-bei-an.md b/feng-kong-yu-he-gui/wang-zhan-bei-an.md deleted file mode 100644 index 05023458..00000000 --- a/feng-kong-yu-he-gui/wang-zhan-bei-an.md +++ /dev/null @@ -1,4 +0,0 @@ -# 网站备案 - -[https://cloud.tencent.com/product/ba](https://cloud.tencent.com/product/ba) - diff --git a/feng-kong-yu-he-gui/zu-zhi-xing-shi/README.md b/feng-kong-yu-he-gui/zu-zhi-xing-shi/README.md deleted file mode 100644 index 8a9eab78..00000000 --- a/feng-kong-yu-he-gui/zu-zhi-xing-shi/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# 组织形式 - diff --git a/feng-kong-yu-he-gui/zu-zhi-xing-shi/gong-si-zhu-ce.md b/feng-kong-yu-he-gui/zu-zhi-xing-shi/gong-si-zhu-ce.md deleted file mode 100644 index ca129d5c..00000000 --- a/feng-kong-yu-he-gui/zu-zhi-xing-shi/gong-si-zhu-ce.md +++ /dev/null @@ -1,8 +0,0 @@ -# 公司注册 - -[腾讯云工商注册服务重磅上线!全场低至10元起](https://cloud.tencent.com/developer/article/1696121) - -[注册公司如何少走弯路?](https://cloud.tencent.com/developer/article/1705004) - -[常见问题](https://cloud.tencent.com/document/product/1260/45868) - diff --git a/feng-kong-yu-he-gui/zu-zhi-xing-shi/ru-he-zhu-ce-min-jian-tuan-ti.md b/feng-kong-yu-he-gui/zu-zhi-xing-shi/ru-he-zhu-ce-min-jian-tuan-ti.md deleted file mode 100644 index 1da67b04..00000000 --- a/feng-kong-yu-he-gui/zu-zhi-xing-shi/ru-he-zhu-ce-min-jian-tuan-ti.md +++ /dev/null @@ -1,6 +0,0 @@ -# 如何注册民间团体? - -作者:匿名用户 链接:[https://www.zhihu.com/question/55657714/answer/158532916](https://www.zhihu.com/question/55657714/answer/158532916) 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 - -找民政部门办理,具体条件及所需资料如下说明:一、成立条件 中国公民、法人均可以申请成立社会团体,发起人数量不限,但国家机关和具有行政管理职能的事业单位不宜作为发起人,也不能成为会员,具体条件包括: \(1\)有50个以上的个人会员或者30个以上的单位会员;个人会员和单位会员混合组成的,总数不少于50个; \(2\)有规范的名称、章程和相应的组织机构; \(3\)有固定的住所; \(4\)有与其业务活动相适应的专职工作人员; \(5\)有规定最低限额的活动资金; \(6\)有独立承担民事责任的能力。 二、所需材料 筹备阶段,申请人应该提交以下材料: \(1\)关于筹备成立申请书\(写明成立该社会团体的必要性,成立的社会团体基本情况,包括宗旨、主要的业务范围、活动资金及其来源、发起人情况介绍、拟发展会员及分布情况等。申请书由发起人签名或者盖章\); \(2\)业务主管单位同意筹备成立的文件; \(3\)章程草案\(依照章程示范文本拟定\); \(4\)住所使用权证明\(住所为租赁的,须提供租赁合同复印件以及房产证复印件;住所为其他组织或个人无偿提供的,须由房产所有者出具证明,并提供房屋产权证复印件\); \(5\)验资报告; \(6\)拟任负责人名单、《社会团体负责人备案表》\(编号:12\)\(加盖单位人事章,并注明在社会团体的拟任职务\)和本人身份证明文件的复印件; 负责人包括理事长\(会长\)、副理事长\(副会长\)和秘书长。 \(7\)会员名单\(个人会员应列出姓名、工作单位及职务、联系电话,并本人签字;单位会员应列出单位名称、地址,法定代表人和联系电话\); 成立阶段,申请人应该提交如下材料: \(8\)《社会团体法人登记申请表》\(编号:01\); \(9\)《社会团体法定代表人登记表》\(编号:04\); \(10\)《社会团体章程核准表》\(编号:05\) \(11\)《社会团体负责人备案表》\(编号:12\) 三、办理程序 申请成立社会团体,须经过申请筹备成立和申请成立登记两个阶段,均先经业务主管单位审查同意,再向登记管理机关提交申请。具体程序包括: \(1\)经业务主管单位审查同意,发起人向登记管理机关提交筹备成立申请材料; \(2\)登记管理机关审查批准的,向发起人发同意筹备成立文件; \(3\)发起人在6个月的筹备期内,开展筹备工作,召开成立大会,通过章程,产生执行机构、负责人和法定代表人; \(4\)发起人向业务主管单位提交成立登记申请材料; \(5\)业务主管单位审查同意后,发起人向登记管理机关提交成立登记申请材料; \(6\)登记管理机关审查后,准予登记的,发给社会团体法人登记证书; - diff --git a/feng-kong-yu-he-gui/zu-zhi-xing-shi/shen-qing-she-hui-tuan-ti.md b/feng-kong-yu-he-gui/zu-zhi-xing-shi/shen-qing-she-hui-tuan-ti.md deleted file mode 100644 index 65ad597d..00000000 --- a/feng-kong-yu-he-gui/zu-zhi-xing-shi/shen-qing-she-hui-tuan-ti.md +++ /dev/null @@ -1,6 +0,0 @@ -# 申请社会团体 - -申请社会团体,非盈利组织,民办非企业 - -统一社会信用代码 - diff --git a/feng-kong-yu-he-gui/zu-zhi-xing-shi/teng-xun-yun-gong-si-zhu-ce.md b/feng-kong-yu-he-gui/zu-zhi-xing-shi/teng-xun-yun-gong-si-zhu-ce.md deleted file mode 100644 index e8e6b532..00000000 --- a/feng-kong-yu-he-gui/zu-zhi-xing-shi/teng-xun-yun-gong-si-zhu-ce.md +++ /dev/null @@ -1,4 +0,0 @@ -# 腾讯云公司注册 - -[https://cloud.tencent.com/document/product/1260](https://cloud.tencent.com/document/product/1260) - diff --git a/feng-kong-yu-he-gui/zu-zhi-xing-shi/untitled.md b/feng-kong-yu-he-gui/zu-zhi-xing-shi/untitled.md deleted file mode 100644 index 90e728c8..00000000 --- a/feng-kong-yu-he-gui/zu-zhi-xing-shi/untitled.md +++ /dev/null @@ -1,23 +0,0 @@ -# 组织命名 - -[http://www.gov.cn/fuwu/2015-08/18/content\_2914942.htm](http://www.gov.cn/fuwu/2015-08/18/content_2914942.htm) 申请成立社会团体办事指南 - -```text -鞍山市量化投资与算法交易研究会 -鞍山市量化投资与算法交易学会 -鞍山市量化投资与算法交易学会专业委员会 -鞍山市量化投资与算法交易研究基金会 -鞍山市量化投资与算法交易专业技术委员会 -鞍山市量化投资与算法交易协会 -鞍山市量化投资与算法交易研究院 -鞍山市算法交易与量化投资基金组织 -鞍山市算法交易与量化投资基金会 -鞍山市量化投资与算法交易学社 - -鞍山市金融发展局 -鞍山市工业和信息化局 -鞍山市科学技术协会 -``` - - - diff --git a/feng-kong-yu-he-gui/zu-zhi-xing-shi/zhang-cheng-can-kao-1.md b/feng-kong-yu-he-gui/zu-zhi-xing-shi/zhang-cheng-can-kao-1.md deleted file mode 100644 index 91fd36d0..00000000 --- a/feng-kong-yu-he-gui/zu-zhi-xing-shi/zhang-cheng-can-kao-1.md +++ /dev/null @@ -1,153 +0,0 @@ -# 章程参考1 - -### 中国市场学会量化金融专业委员会章程 - -2018年12月26日_10:45_**作者:量专委办公室第一章 总则** - -第一条 根据《中华人民共和国社团管理条例》和中国市场学会《关于成立中国市场学会量化金融专业委员会的决定》(编号【2018】4),特制订本团体章程。 - -第二条 本团体的名称:“中国市场学会量化金融专业委员会”,简称“量专委”,英文译名Quantitative Finance Committee of CMA,缩写QFCC。 - -第三条 本团体经中国市场学会批准在北京设立,是中国社会科学院指导、中国市场学会管理下,根据自愿原则,由量化金融与金融工程等领域的专家学者、金融机构高级专业人员、科研教育人士发起和组建的全国性非营利社会团体。 - -第四条 本团体的宗旨是:积极推动量化金融理论与实践的学术创新、学术研究和学术进步;切实组织财经金融各项学术标准和应用标准的社会开发与实施;努力促进金融工程、量化金融等相关分析方法和实践方式在中国金融行业与金融投资行业的广泛应用;深化财经金融、量化投资、金融风险管理、金融科技等领域的职业发展和高级专业人才培养;积极组织金融领域专家资源,聚焦现代金融的前沿发展,通过调研、咨询、交流、培训、出版等工作,开展学术研究与行业交流,全面服务于中国金融行业。 - -第五条 本团体接受国家民政部、中国社会科学院、中国市场学会监督管理与指导。 - -第六条 本团体的办公地址:北京市 - -**第二章 业务范围** - -第七条 本团体的业务范围包括: -\(一\)行业专题研究及调研:开展学术实践交流、技术研究和专题研究;接受各级政府部门和企业委托,开展学术、科研课题研究和战略规划调研及服务,编制金融相关领域的调查报告、行业报告、分析报告等,向政府和金融监管部门提供决策建议和决策参考信息; -\(二\)学术研讨及创新:开展多种形式的学术与实践交流、学术与技术研讨活动,推动金融工程、量化金融、金融科技、金融风险管理等各领域的学术研究、学术创新和学术进步; -\(三\)学术与应用标准的开发与实施:组织专家力量,发挥社团功能,开发并实施包括量化金融在内的金融领域的学术标准、应用标准和职业人才标准; -\(四\)教育培训:开展相关领域的专业培训工作,为财经金融各行业培养高级专业人才; -\(五\)学术报告与专业资料出版:开展基于量化金融专业的书刊编辑和出版工作; -\(六\)其他:开展主管单位委托的其它研究活动。 - -**第三章 会员** - -第八条 本团体采用单位会员和个人会员制。 - -第九条 申请加入本团体的会员,应当具备下列条件: -(一) 单位会员 1、 拥护和遵守团体章程; 2、 愿意加入社团为促进中国量化金融事业贡献力量; 3、 中国境内注册的各类金融机构、金融财经科研教学单位、其他金融服务相关机构; 4、 专业及地方行业组织和社会团体; -(二) 个人会员 1、 拥护和遵守团体章程 2、 愿意加入团体为促进中国量化金融事业贡献力量; 3、 从事量化金融等相关领域研究工作和实务工作并有独特见解的专家学者和机构管理人员; 4、 具有中级以上(含中级)职称; 第十条 会员入会的程序是: (一) 提交入会申请书; (二) 团体会员须经常务理事会讨论通过; -(三) 个人会员须经本会秘书处批准; -(四) 由理事会颁发会员证。 - -第十一条 会员享有下列权利: -(一) 本团体的选举权、被选举权和表决权; -(二) 参加本团体的活动; -(三) 获得本团体服务的优先权; -(四) 对本团体工作的批评建议权和监督权; -(五) 入会自愿、退会自由。 - -第十二条 会员履行下列义务: -(一) 执行本团体决议; -(二) 维护本团体的合法权益; -(三) 完成本团体委托的工作; -(四) 按规定缴纳会费; -(五) 向本团体反映情况,提供有关资料。 - -第十三条 会员退会应书面通知本团体,并交回会员证。会员如果一年不缴纳会费或不参加本团体活动的,视为自动退会。 - -第十四条 会员如有严重违反本章程的行为,经理事会或常务理事会表决通过予以除名。 - -**第四章 管理体制** - -第十五条 本团体是中国市场学会的专业二级分支机构,实行中国市场学会领导下的主任办公会议制度。 - -第十六条 本团体设置委员会主任一名、常务副主任一名,副主任若干名、秘书长一名。主任、(常务)副主任和秘书长须得到中国市场学会的正式任命。 - -第十七条 本团体会员代表大会的职权是: \(一\)制定和修改章程; \(二\)选举和罢免理事; \(三\)审议理事会的工作报告和团体财务报告; \(四\)决定终止事宜; \(五\)决定其他重大事宜。 - -第十八条 会员代表大会须有2/3以上的会员代表出席方能召开,其决议须经到会的会员代表半数以上表决通过方能生效。 - -第十九条 会员代表大会每届5年。因特殊情况需提前或延期换届的,须由理事会表决通过,报业务主管单位审查并经社团登记管理机关批准同意,但延期换届最长不超过1年。 - -第二十条 理事会是会员代表大会的执行机构,在会员代表大会闭会期间开展日常工作,对会员代表大会负责。 - -第二十一条 理事会的职权: -\(一\)执行会员代表大会的决议; -\(二\)选举和罢免理事长、副理事长; -\(三\)筹备召开会员代表大会; -\(四\)向会员代表大会报告工作和财务状况; -\(五\)决定会员的吸收或除名; -\(六\)决定设立办事机构、代表机构和实体机构; -\(七\)决定其他重大事项。 - -第二十二条 理事会须有2/3以上理事出席方能召开,其决议须经到会理事2/3以上表决通过方能生效。 - -第二十三条 理事会每年至少召开一次会议;情况特殊的,也可采用通讯形式召开 - -第二十四条 本团体设立常务理事会。常务理事会由理事会选举产生,在理事会闭会期间行使第十五条第(一)、(三)、(五)、(六)、(七)项的职权,对理事会负责。 - -第二十五条 常务理事会须有2/3以上常务理事出席方能召开,其决议须经到会常务理事2/3以上表决通过方能生效。 - -第二十六条 常务理事会至少半年召开一次会议;情况特殊的也可采用通讯形式召开。 - -第二十七条 本团体理事会主要负责人由中国市场学会任命。理事长主持理事会全面工作。 - -第二十八条 本团体的理事长、副理事长必须具备下列条件: -\(一\)坚持党的路线、方针、政策,政治素质好; -\(二\)在本团体业务领域内有较大影响; -\(三\)身体健康,能坚持正常工作; -\(四\)未受过剥夺政治权利的刑事处罚; -\(五\)具有完全民事行为能力。 - -第二十九条 本团体理事长行使下列职权: -\(一\)召集和主持理事会\(或常务理事会\); -\(二\)检查会员代表大会、理事会\(或常务理事会\)决议的落实情况; -\(三\)代表本团体签署有关重要文件; -\(四\)决定任免理事会各工作机构负责人; -\(五\)组织实施年度工作计划。 - -第三十条 本团体下设学术委员会,接受中国市场学会和中国市场学会量化专业委员会的双重领导。 - -第三十一条 学术委员会设主任一名、副主任若干名,均由全体委员选举产生,并须得到中国市场学会的正式聘任。学术委员会可根据需要聘任中外籍的荣誉主任和顾问。 - -**第五章 资产管理、使用原则** - -第三十二条 本团体经费来源: -(一)会费收入; -(二)单位、团体或个人的捐赠; -(三)在核准的业务范围内开展活动或服务的收入; -(四)其他合法收入。 - -第三十三条 本团体按照国家有关规定收取会员会费。 - -第三十四条 本团体经费必须用于本章程规定的业务范围和事业发展,不得在会员中分配。 - -第三十五条 本团体建立严格的财务管理制度,保证会计资料合法、真实、准确、完整。 - -第三十六条 本团体的资产管理必须执行国家规定的财务管理制度,接受会员代表大会和财政部门的监督。资产来源属于国家拨款或者社会捐赠、资助的,必须接受审计机关的监督,并将有关情况以适当方式向社会公布。 - -第三十七条 本团体的资产,任何单位、个人不得侵占、私分和挪用。 - -第三十八条 本团体专职工作人员的工资和保险、福利待遇,参照国家对事业单位的有关规定执行。 - -**第六章 章程的修改程序** - -第三十九条 对本团体章程的修改,须经理事会表决通过后报会员代表大会审议。 - -第四十条 本团体修改的章程,须在会员代表大会通过后15日内,经业务主管单位审查同意后生效。 - -**第七章 终止程序及终止后的财产处理** - -第四十一条 本团体完成宗旨自行解散或由于分立、合并等原因需要注销的,由理事会或常务理事会提出终止动议。本团体终止动议须经会员代表大会表决通过,并报业务主管单位审查同意。 - -第四十二条 本团体终止前,须在业务主管单位及有关机关指导下成立清算组织,清理债权债务,处理善后事宜。清算期间,不开展清算以外的活动。 - -第四十三条 本团体经中国市场学会核准注销后即为终止。 - -第四十四条 本团体终止后的剩余财产,在业务主管单位的监督下,按照国家有关规定,用于发展与本团体宗旨相关的事业。 - -**第八章 附则** - -第四十五条 本章程经2018年5月1日第一届第一次会员代表大会表决通过。 - -第四十六条 本章程的解释权属本团体的理事会。 - -本章程自中国市场学会核准之日起生效。 - diff --git a/feng-kong-yu-he-gui/zu-zhi-xing-shi/zhang-cheng-can-kao-2.md b/feng-kong-yu-he-gui/zu-zhi-xing-shi/zhang-cheng-can-kao-2.md deleted file mode 100644 index d393584c..00000000 --- a/feng-kong-yu-he-gui/zu-zhi-xing-shi/zhang-cheng-can-kao-2.md +++ /dev/null @@ -1,156 +0,0 @@ -# 章程参考2 - -## 济南量化投资研究会 - - [编辑](javascript:;) [讨论](https://baike.baidu.com/planet/talk?lemmaId=8279525) [上传视频](javascript:;)本词条缺少**概述图**,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!在[济南市](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E5%B8%82/194602)相关领导的关心与支持下,济南量化投资研究会于2012年3月申请成立,是国内目前经政府相关部门正式批准,注册成立的第一个量化投资研究组织中文名济南量化投资研究会成立时间2012年3月性 质非营利性组织隶 属[济南市科学技术协会](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E5%B8%82%E7%A7%91%E5%AD%A6%E6%8A%80%E6%9C%AF%E5%8D%8F%E4%BC%9A) - -### 目录 - -1. 1 [简介](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#1) -2. 2 [量化投资](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#2) -3. 3 [研究会发起人](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#3) -4. 4 [研究会宗旨](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#4) -5. 5 [研究会的目标](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#5) -6. 6 [研究会的日常工作任务](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#6) -7. 7 [研究会章程](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7) -8. ▪ [第一章 总则](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7_1) -9. ▪ [第二章 业务范围](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7_2) -10. ▪ [第三章 会员](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7_3) -11. ▪ [第四章 组织机构和负责人产生与罢免](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7_4) -12. ▪ [第五章 资产管理、使用原则](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7_5) -13. ▪ [第六章 章程的修改程序](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7_6) -14. ▪ [第七章 终止程序及终止后的财产处理](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7_7) -15. ▪ [第八章 附则](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84%E7%A0%94%E7%A9%B6%E4%BC%9A#7_8) - -### 简介 - -[编辑](javascript:;)是由山东慧才添富投资有限公司、山东泰月文和投资有限公司和济南泰月投资咨询有限公司联合发起的以量化投资为主题的行业性、民间性、地方性、非营利性的社会组织,隶属于[济南市科学技术协会](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E5%B8%82%E7%A7%91%E5%AD%A6%E6%8A%80%E6%9C%AF%E5%8D%8F%E4%BC%9A)管理,办公地点设在山东省[济南](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97)市。 - -### 量化投资 - -[编辑](javascript:;)[量化投资](https://baike.baidu.com/item/%E9%87%8F%E5%8C%96%E6%8A%95%E8%B5%84)是指采用数量化的方法或某种模型或程序对市场数据进行统计分析,并由此产生投资决策;在投资策略制定和市场数据统计分析时可采用多种科学方法进行定量定义,以供人或计算机执行。量化投资在海外的应用及发展已经比较成熟,其投资业绩稳定,市场规模和份额不断扩大、得到了越来越多投资者的认可。但量化投资的技术在国内仍还处在起步期。目前国内市场上定性投资者所占比例较大,机会少,竞争激烈;而量化投资者所占比例较小,机会很多,竞争很少,这给量化投资创造了良好的发展机遇。量化投资近年来在全球备受瞩目始于华尔街的一位传奇性人物—[詹姆斯·西蒙斯](https://baike.baidu.com/item/%E8%A9%B9%E5%A7%86%E6%96%AF%C2%B7%E8%A5%BF%E8%92%99%E6%96%AF),他管理的[大奖章基金](https://baike.baidu.com/item/%E5%A4%A7%E5%A5%96%E7%AB%A0%E5%9F%BA%E9%87%91/3836659)在1988年成立到2006年的17年间,去除分红后的年[平均收益率](https://baike.baidu.com/item/%E5%B9%B3%E5%9D%87%E6%94%B6%E7%9B%8A%E7%8E%87/9543234)达到38.5%,远远超过[沃伦·巴菲特](https://baike.baidu.com/item/%E6%B2%83%E4%BC%A6%C2%B7%E5%B7%B4%E8%8F%B2%E7%89%B9)连续20年年均20%左右的收益水平,即使在2007年[次贷危机](https://baike.baidu.com/item/%E6%AC%A1%E8%B4%B7%E5%8D%B1%E6%9C%BA)爆发当年,该基金的回报都高达85%。 - -### 研究会发起人 - -[编辑](javascript:;)作为研究会发起人的山东泰月文和投资有限公司和山东慧才添富投资有限公司分别成立于2001年和2003年,山东泰月文和投资有限公司自2007年起专业从事国内股权型合伙制[期货私募](https://baike.baidu.com/item/%E6%9C%9F%E8%B4%A7%E7%A7%81%E5%8B%9F)投资项目基金的运作。公司拥有强大的技术研发团队,并自主研发了一系列程序化交易系统,截至目前,公司在严格控制风险的前提条件下,为投资者带来了较稳定的盈利。同样作为发起人的山东慧才添富投资有限公司也是一家专业从事证券期货投资和资产管理的投资公司,注册资本2000万元。公司由多名经验丰富的金融业内人士担纲,主要的投资管理和研究人员都通过国家要求的专业资格考试并有丰富的量化投资研究经验,公司目前致力于资产管理、程序化交易推广服务和投资策略方案设计。在从事量化投资事业的同时,两家公司还共同成立了“泰月投资、慧才添富教育帮扶基金”,自2008年开始每年资助四川省[广元](https://baike.baidu.com/item/%E5%B9%BF%E5%85%83)市的贫苦失学儿童,基金用于对辍学儿童、特困学生在学习及生活方面的支持以及教学器材、书籍课本等相关学习用品的购置,完善贫困山区(乡村)基础教育设施的建设。研究会发起人与[银河期货](https://baike.baidu.com/item/%E9%93%B6%E6%B2%B3%E6%9C%9F%E8%B4%A7)、[鲁证期货](https://baike.baidu.com/item/%E9%B2%81%E8%AF%81%E6%9C%9F%E8%B4%A7)等多家国内期货公司、证券公司、以及多家银行、信托公司建立了长期的战略合作关系,并邀请了多位金融量化投资业内知名的专家、高校学者以及专业机构加入量化投资研究会。目前已邀请银河期货、中证期货、英大期货、[申银万国期货](https://baike.baidu.com/item/%E7%94%B3%E9%93%B6%E4%B8%87%E5%9B%BD%E6%9C%9F%E8%B4%A7/2069027)、中信建投期货等期货公司以及[中信证券](https://baike.baidu.com/item/%E4%B8%AD%E4%BF%A1%E8%AF%81%E5%88%B8)、[齐鲁证券](https://baike.baidu.com/item/%E9%BD%90%E9%B2%81%E8%AF%81%E5%88%B8)等多家券商加入机构会员,并邀请了投资业内众多同仁如(排名不分前后):[青泽](https://baike.baidu.com/item/%E9%9D%92%E6%B3%BD)、丁鹏、陈剑灵、汪建斌、邢向飞、[孟一](https://baike.baidu.com/item/%E5%AD%9F%E4%B8%80)、文竹居士等加入研究会。 - -### 研究会宗旨 - -[编辑](javascript:;)济南量化投资研究会的建立,以服务为重点,宣传推广、相互交流和提升整合为要点,凡有兴趣在山东经济发展中拓展业务、谋求发展的投资类企业及组织都是济南量化投资研究会的服务对象。济南量化投资研究会愿与各界朋友广泛联系与合作,以客观、公正和诚挚的态度提供各种方式的服务。 - -### 研究会的目标 - -[编辑](javascript:;)济南量化投资研究会的成立将进一步改善国内资本投资市场的投资结构,建立健全量化投资研究机制,整合券商、高校的研发资源和媒体的宣传推广优势,全面提升投资市场的整体水平,实现投资市场的现代化、数字化、规范化,促进投资市场的专业化建设发展。 - -### 研究会的日常工作任务 - -[编辑](javascript:;)1、每月、每季度定期开展投资理论研究,组织专家调研和开展量化投资实证研究、经验交流活动。2、开展国内外有关量化投资管理的交流与合作,组织会员和各类投资主体的[高级管理人员](https://baike.baidu.com/item/%E9%AB%98%E7%BA%A7%E7%AE%A1%E7%90%86%E4%BA%BA%E5%91%98/10598481)进行国内外专业的量化研讨会、培训和考察,提高量化决策水平和管理水平;同时承接会员提出或要求的学术及实战专题研究课题,积极开展技术教育和培训工作,为提高业内从业人员素质和企业素质,提升会员期货CTA管理和量化投资发展的水平。3、通过全面研究评价,向会员推荐国际先进的量化交易及管理平台,帮助协会会员改善量化投资管理技术,为投资者及投资机构提供资产管理能力评估报告。在会员体系内开展公益性的评选、交易业绩评比等活动,同时通过顾问委员会维护会员和业内人士的合法权益,向有关监管和领导部门反应会员建议和呼声。4、积极办理主管部门交办的其他任务。针对量化投资的调查与研究,配合上级领导指示,提出有关政策和立法方面的意见和建议。5、为会员和各类投资主体提供服务,为会员间企业间的投资和发展架设桥梁,开展项目分析、洽谈及投资决策、等咨询及技术、人才的对接合作服务。6、建立会员之间的电子信息网络,编辑出版研究会内部及会员发行的刊物,加强信息交流,扩大对外宣传。发现并推荐研究会内人才,表彰奖励有突出贡献的会员和在研究会工作中有显著成绩的工作人员,促进会员共同进步。 \[1\] - -### 研究会章程 - -[编辑](javascript:;) - -#### 第一章 总则 - -**第一条** 本团体的名称:中文名称:济南量化投资研究会(以下简称本会);英文名称:Jinan Quantify Investment Institute. - -**第二条** 本会的性质:是以量化投资研究为主题的业内企业及相关学术权威人士自愿组成的地域性、学术性、非营利性社团团体。 - -**第三条** 本会的宗旨:遵守宪法、法律、法规和国家政策规定,遵守社会道德风尚,研究量化投资理论,为投资行业服务,提高投资管理水平,为促进我市量化投资业快速发展做出应有的贡献。 - -**第四条** 本会接受业务主管单位[济南市科学技术协会](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E5%B8%82%E7%A7%91%E5%AD%A6%E6%8A%80%E6%9C%AF%E5%8D%8F%E4%BC%9A/6916447)和登记管理机关[济南市民政局](https://baike.baidu.com/item/%E6%B5%8E%E5%8D%97%E5%B8%82%E6%B0%91%E6%94%BF%E5%B1%80/11065306)的业务指导和监督管理。 - -**第五条** 本会的住所:济南市马鞍山路2号南郊宾馆。 - -#### 第二章 业务范围 - -**第六条** 本会的业务范围:(一)开展对量化投资方面的调查与研究,为政府出台政策、指导工作提出建议;(二)进行有关量化投资方面的资料收集、分析、整理和科学研究工作;(三)进行量化投资管理专业培训;(四)帮助会员提高量化投资管理技术;(五)开展国内外有关量化投资管理的交流与合作;(六)执行国家和政府经济政策,促进量化投资行业发展;(七)提供[宏观经济信息](https://baike.baidu.com/item/%E5%AE%8F%E8%A7%82%E7%BB%8F%E6%B5%8E%E4%BF%A1%E6%81%AF/1544886)分析,引导投资活动;(八)开展投资理论研究,组织经验交流活动;(九)为会员和各类投资主体提供项目决策、商品产业链介绍、资产保值等咨询服务;(十)为会员和各类投资主体推荐投资项目,介绍合作伙伴,拓展投资渠道,协助招投标工作,招商引资,提供市场预测、分析,促进经济合作;(十一)组织会员和各类投资主体开展对外交往和经济合作;(十二)组织会员开展行业自律活动,依法维护会员单位的合法权益;(十三)建立会员间的电子信息网络,编辑出版研究会刊物,加强信息交流,扩大对外宣传;(十四)完成主管部门交办的其他任务。 - -#### 第三章 会员 - -**第七条** 本会的会员包括单位会员和个人会员。 - -**第八条** 申请加入本会的会员,必须具备下列条件:(一)拥护本会的章程,愿意遵守本会的规章制度;(二)有加入本会的意愿,积极参加本会活动;(三)在本会的业务领域内具有一定影响。 - -**第九条** 会员入会的程序是:(一)提交入会申请书及相关资料;(二)经理事会讨论通过;(三)由理事会或理事会授权的机构颁发会员证。 - -**第十条** 会员享有下列权利:(一)选举权、被选举权和表决权;(二)有参加本会组织的各项活动的优先权;(三)有获得本会服务的优先权;(四)有对本会工作的批评建议权和监督权;(五)入会自愿,退会自由。 - -**第十一条** 会员应履行下列义务:(一)执行本会的决议;(二)维护本会的合法权益;(三)完成本会交办的工作;(四)按规定交纳会费;(五)向本会反映情况,提供有关资料。 - -**第十二条** 会员退会应书面通知本会,并交回会员证。会员如果2年不交纳会费或不参加本会活动的,视为自动退会。 - -**第十三条** 会员如有违法或严重违反本章程的行为,经理事会或常务理事会表决通过,予以除名。 - -#### 第四章 组织机构和负责人产生与罢免 - -**第十四条** 本会的最高权力机构是会员大会,会员大会的职权是:(一)制定和修改章程;(二)选举和罢免理事;(三)审议工作报告和财务报告;(四)决定终止事宜;(五)制定和修改会费标准;(六)决定其他重大事宜。 - -**第十五条** 会员大会须有2/3以上的会员出席方能召开,其决议须经到会会员半数以上表决通过方能生效。 - -**第十六条** 会员大会每届5年。因特殊情况需提前或延期换届的,须由理事会表决通过,报业务主管单位审查并经社团登记管理机关批准同意。但换届延期最长不超过1年。 - -**第十七条** 理事会是会员大会的执行机构,在闭会期间领导本会开展日常工作,对会员大会负责。 - -**第十八条** 理事会的职权是:(一)执行会员大会的决议;(二)选举和罢免会长、副会长、秘书长;(三)筹备召开会员大会;(四)向会员大会报告工作和财务状况;(五)决定会员的吸收或除名;(六)决定设立办事机构、分支机构、代表机构和实体机构;(七)决定副秘书长、各机构主要负责人的聘任;(八)领导本会各机构开展工作;(九)制定内部管理制度;(十)决定其他重大事项。 - -**第十九条** 理事会须有2/3以上理事出席方能召开,其决议须经到会理事2/3以上表决通过方能生效。 - -**第二十条** 理事会每年至少召开一次会议,情况特殊的,也可采用通讯形式召开。 - -**第二十一条** 本团体设立常务理事会。 常务理事会由理事会选举产生,在理事会闭会期间行使第十八条第一、三、五、六、七、八、九项的职权,对理事会负责。 - -**第二十二条** 常务理事会须有2/3以上常务理事出席方能召开,其决议须经到会常务理事2/3以上表决通过方能生效。 - -**第二十三条** 常务理事会至少半年召开一次会议;情况特殊的也可采用通讯形式召开。 - -**第二十四条** 本会的会长、副会长、秘书长必须具备下列条件:(一)坚持党的路线、方针、政策,政治素质好;(二)在本会业务领域内有较大影响;(三)会长、副会长、秘书长最高任职年龄不超过70周岁,秘书长为专职;(四)身体健康,能坚持正常工作;(五)未受过剥夺政治权利的刑事处罚;(六)具有完全民事行为能力。 - -**第二十五条** 本会会长、副会长、秘书长如超过最高任职年龄的,须经理事会表决通过,报业务主管单位审查并经社团登记管理机关批准同意后,方可任职。 - -**第二十六条** 本会会长、副会长、秘书长任期5年,会长、副会长、秘书长任期最长不得超过两届,因特殊情况需延长任期的,须经会员大会2/3以上会员表决通过,报业务主管单位审查并经社团登记管理机关批准同意后方可任职。 - -**第二十七条** 本会会长为本会法定代表人。本会法定代表人不兼任其他社会团体的法定代表人。 - -**第二十八条** 本会会长行使下列职权:(一)召集和主持理事会;(二)检查会员大会、理事会或常务理事会决议的落实情况;(三)代表本会签署有关重要文件。 - -**第二十九条** 本会秘书长行使下列职权:(一)主持办事机构开展日常工作,组织实施年度工作计划;(二)协调各分支机构、代表机构、实体机构开展工作;(三)提名副秘书长以及各办事机构、分支机构、代表机构和实体机构主要负责人,交理事会或常务理事会决定;(四)决定办事机构、代表机构、实体机构专职工作人员的聘用;(五)处理其他日常事务。 - -#### 第五章 资产管理、使用原则 - -**第三十条** 本会经费来源:(一)会费;(二)捐赠;(三)政府资助;(四)在核准的业务范围内开展活动或服务的收入;(五)利息;(六)其他合法收入。 - -**第三十一条** 本会按照国家有关规定收取会员会费。 - -**第二十二条** 本会经费必须用于本章程规定的业务范围和事业的发展,不得在会员中分配。 - -**第三十三条** 本会认真执行《[民间非营利组织会计制度](https://baike.baidu.com/item/%E6%B0%91%E9%97%B4%E9%9D%9E%E8%90%A5%E5%88%A9%E7%BB%84%E7%BB%87%E4%BC%9A%E8%AE%A1%E5%88%B6%E5%BA%A6/4144744)》,建立严格的[财务管理制度](https://baike.baidu.com/item/%E8%B4%A2%E5%8A%A1%E7%AE%A1%E7%90%86%E5%88%B6%E5%BA%A6/10205962),保证会计资料合法、真实、准确、完整。 - -**第三十四条** 本会配备具有专业资格的会计人员。 会计不得兼任出纳。会计人员必须进行会计核算,实行会计监督。会计人员调动工作或离职时,必须与接管人员办清交接手续。 - -**第三十五条** 本会的资产管理必须执行国家规定的[财务管理制度](https://baike.baidu.com/item/%E8%B4%A2%E5%8A%A1%E7%AE%A1%E7%90%86%E5%88%B6%E5%BA%A6/10205962),接受会员大会和财政部门的监督。资产来源属于国家拨款或者社会捐赠、资助的,必须接受审计机关的监督,并将有关情况以适当方式向社会公布。 - -**第三十六条** 本会换届或更换法定代表人之前必须接受社团登记管理机关和业务主管单位组织的财务审计。 - -**第三十七条** 本会的资产,任何单位、个人不得侵占、私分和挪用。 - -**第三十八条** 本会专职工作人员的工资和保险、福利待遇,参照有关规定执行。 - -#### 第六章 章程的修改程序 - -**第三十九条** 对本会章程的修改,须经理事会表决通过后报会员大会审议。**第四十条** 本会修改的章程,须在会员大会通过后15日内,经业务主管单位审查同意,并报社团登记管理机关核准后生效。 - -#### 第七章 终止程序及终止后的财产处理 - -**第四十一条** 本会完成宗旨或自行解散以及由于分立、合并等原因需要注销的,由理事会或常务理事会提出终止动议。**第四十二条** 本会终止动议须经会员大会表决通过,并报业务主管单位审查同意。**第四十三条** 本会终止前,须在业务主管单位及有关机关指导下成立清算组织,清理债权债务,处理善后事宜。清算期间,不开展清算以外的活动。**第四十四条** 本会经社团登记管理机关办理注销登记手续后即为终止。**第四十五条** 本会终止后的剩余财产,在业务主管单位和社团登记管理机关监督下,按照国家有关规定,用于发展与本会宗旨相关的事业。 - -#### 第八章 附则 - -**第四十六条** 本章程经2012年12月9日会员大会表决通过。 - -**第四十七条** 本章程的解释权属本会理事会所有。 - -**第四十八条** 本章程自社团登记管理机关核准之日起生效。 - -**第六条** 本会的业务范围:  (一)开展对量化投资方面的调查与研究,为政府出台政策、指导工作提出建议;  (二)进行有关量化投资方面的资料收集、分析、整理和科学研究工作;  (三)进行量化投资管理专业培训;  (四)帮助会员提高量化投资管理技术;  (五)开展国内外有关量化投资管理的交流与合作;  (六)执行国家和政府经济政策,促进量化投资行业发展;  (七)提供[宏观经济信息](https://baike.baidu.com/item/%E5%AE%8F%E8%A7%82%E7%BB%8F%E6%B5%8E%E4%BF%A1%E6%81%AF/1544886)分析,引导投资活动;  (八)开展投资理论研究,组织经验交流活动;  (九)为会员和各类投资主体提供项目决策、商品产业链介绍、资产保值等咨询服务;  (十)为会员和各类投资主体推荐投资项目,介绍合作伙伴,拓展投资渠道,协助招投标工作,招商引资,提供市场预测、分析,促进经济合作;  (十一)组织会员和各类投资主体开展对外交往和经济合作;  (十二)组织会员开展行业自律活动,依法维护会员单位的合法权益;  (十三)建立会员间的电子信息网络,编辑出版研究会刊物,加强信息交流,扩大对外宣传;  (十四)完成主管部门交办的其他任务。**第六条** 本会的业务范围:  (一)开展对量化投资方面的调查与研究,为政府出台政策、指导工作提出建议;  (二)进行有关量化投资方面的资料收集、分析、整理和科学研究工作;  (三)进行量化投资管理专业培训;  (四)帮助会员提高量化投资管理技术;  (五)开展国内外有关量化投资管理的交流与合作;  (六)执行国家和政府经济政策,促进量化投资行业发展;  (七)提供宏观经济信息分析,引导投资活动;  (八)开展投资理论研究,组织经验交流活动;  (九)为会员和各类投资主体提供项目决策、商品产业链介绍、资产保值等咨询服务;  (十)为会员和各类投资主体推荐投资项目,介绍合作伙伴,拓展投资渠道,协助招投标工作,招商引资,提供市场预测、分析,促进经济合作;  (十一)组织会员和各类投资主体开展对外交往和经济合作;  (十二)组织会员开展行业自律活动,依法维护会员单位的合法权益;  (十三)建立会员间的电子信息网络,编辑出版研究会刊物,加强信息交流,扩大对外宣传;  (十四)完成主管部门交办的其他 - diff --git a/gong-ju/b-zhan-shi-pin-xia-zai.md b/gong-ju/b-zhan-shi-pin-xia-zai.md deleted file mode 100644 index 53840a82..00000000 --- a/gong-ju/b-zhan-shi-pin-xia-zai.md +++ /dev/null @@ -1,4 +0,0 @@ -# B站视频下载 🎬 ⏬ - -[https://xbeibeix.com/api/bilibili/](https://xbeibeix.com/api/bilibili/) - diff --git a/gong-ju/fa-lv-wen-jian-xia-zai.md b/gong-ju/fa-lv-wen-jian-xia-zai.md deleted file mode 100644 index d426c5df..00000000 --- a/gong-ju/fa-lv-wen-jian-xia-zai.md +++ /dev/null @@ -1,6 +0,0 @@ -# 法律文件下载 - -{% embed url="http://www.64365.com/" %} - - - diff --git a/gong-ju/fa-xian-wang-zhan.md b/gong-ju/fa-xian-wang-zhan.md deleted file mode 100644 index dfc9472f..00000000 --- a/gong-ju/fa-xian-wang-zhan.md +++ /dev/null @@ -1,4 +0,0 @@ -# 发现网站 - -[https://www.similarsites.com/](https://www.similarsites.com/) - diff --git a/gong-ju/wen-zhang-sheng-cheng-qi.md b/gong-ju/wen-zhang-sheng-cheng-qi.md deleted file mode 100644 index 99b4afa6..00000000 --- a/gong-ju/wen-zhang-sheng-cheng-qi.md +++ /dev/null @@ -1,68 +0,0 @@ -# 文章论文生成器 - -## 狗屁不通文章生成器 - -### 互联网黑话生成器 - -[https://github.com/shadowings-zy/internet-industry-terms-generator](https://github.com/shadowings-zy/internet-industry-terms-generator) - -[http://www.shadowingszy.top/text-generator/index.html](http://www.shadowingszy.top/text-generator/index.html) - -二字动词: - -复盘,赋能,沉淀,倒逼,落地,串联,协同,反晡,兼容,包装,重组,履约,晌应,量化,发力,布局,联动,细分,梳理,输出,加速,共建,支撑,融合,聚合,集成,对齐,对标,对焦,抓手,拆解,拉通,抽象,摸索,提炼,打通,打透,吃透,迁移,分发,分层,分装,穿梭,辐射,围绕,复用,渗透,扩展,开拓。 - -二字名词: - -漏斗,中台,闭环,打法,拉通,纽带,矩阵,刺激,规模,场景,聚焦,维度,格局,形态,生态,话术,体系,认知,玩法,体感,感知,调性,心智,战役,合力,心力。 - -三字名词: - -颗粒度,感知度,方法论,组合拳,引爆点,点线面,精细化,差异化,平台化,结构化,影响力,耦合性,易用性,-致性,端到端,短平快。 - -四字名词: - -生命周期,价值转化,强化认知,资源倾斜,完善逻辑,抽离透传,复用打法,商业模式,快速响应,定性定量,关键路径,去中心化,结果导向,垂直领域,如何收口,归因分析,体验度量,信息屏障。​ - -复盘(review),赋能(enable),抓手\(grip\),对标(benchmark),沉淀\(internalize\),对齐\(alignment\),拉通\(stream-line\),倒逼\(push back\),颗粒度\(granularity\),落地\(landing\),中台\(middle office\),方法论\(methodology\),漏斗\(funnel\),组合拳\(blended measures\),闭环\(closed loop\),生命周期\(life cycle\),打法\(tactics\),履约\(delivery\),引爆点\(tipping point\),串联\(cascade\),价值转化\(value transfer \),关联转化\(associated transfer\),纽带\(bond\),矩阵\(matrix\),协同\(collabration\),反哺\(give back\),点线面\(point, line and to plane\),认知\(perception\),强化认知\(reinfored perception \),强化心智\(reinforced mind-set\),智能\(smart-\),机器学习\(machine learning\),智能决策\(smart decision\),交互\(inter-link\),兼容\(inclusive\),包装\(package\),相应\(relative\),刺激\(stimulate\),规模\(scale\),重组\(restructure\),量化\(measurable\),宽松\(loose\),资源倾斜\(resources allocation\),完善逻辑\(perfect logic\),抽离透传\(detach and circulate\),抽象思维\(abstract thinking\),复用打法\(replicate tactics\),发力\(put the force on \),精细化\(refining\),布局\(layout\),商业模式\(business model\)​ - -### 狗屁不通文章生成器 - -[https://github.com/menzi11/BullshitGenerator](https://github.com/menzi11/BullshitGenerator) - -[https://suulnnka.github.io/BullshitGenerator/index.html](https://suulnnka.github.io/BullshitGenerator/index.html) - -## 论文生成器 - -### 计算机科学论文生成器 - -[https://pdos.csail.mit.edu/archive/scigen/](https://pdos.csail.mit.edu/archive/scigen/) - -### 数学论文生成器 - -[https://thatsmathematics.com/mathgen/](https://thatsmathematics.com/mathgen/) - -## 医学论文生成器 - -[https://arxiv.org/pdf/1905.07870.pdf](https://arxiv.org/pdf/1905.07870.pdf) - -## 白皮书生成器\(已失效\) - -[https://whitepaper.koinster.com/](https://whitepaper.koinster.com/) - -## 科幻小说生成器\(有消息,未开源\) - -[https://m.hexun.com/tech/2020-10-28/202316282.html](https://m.hexun.com/tech/2020-10-28/202316282.html) - -## 清华大学九歌系统 - -[http://jiuge.thunlp.org/jueju.html​](http://jiuge.thunlp.org/jueju.html) - -## 小说续写工具 - -[http://if.caiyunai.com/dream/\#/](http://if.caiyunai.com/dream/#/) - -## 高考作文写作工具 - -[https://gitee.com/chenyang918/EssayKiller\_v2](https://gitee.com/chenyang918/EssayKiller_v2) - diff --git a/hou-fang/ji-du-cai-wu-bao-biao.md b/hou-fang/ji-du-cai-wu-bao-biao.md deleted file mode 100644 index 24ee9813..00000000 --- a/hou-fang/ji-du-cai-wu-bao-biao.md +++ /dev/null @@ -1,6 +0,0 @@ -# 财务 - -## 2021年Q1财报 - -## 2021年Q**2**财报 - diff --git a/hou-fang/juan-zeng-da-shang.md b/hou-fang/juan-zeng-da-shang.md deleted file mode 100644 index 569a1d35..00000000 --- a/hou-fang/juan-zeng-da-shang.md +++ /dev/null @@ -1,93 +0,0 @@ -# 会客厅 \(赞助\) 💰 & 资产公示 - -## 赞助 - -### 社区Token/NFT拍卖(由 [OpenSea](https://opensea.io/collections) 和 [Rarible](https://rarible.com/) 支持) - -{% tabs %} -{% tab title="BFM Unity Token" %} -用于社区治理。 - -BFM币BSC币安智能链合约地址:0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec - -{% embed url="https://bscscan.com/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec" %} - -{% embed url="https://pancakeswap.info/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec" %} -{% endtab %} - -{% tab title="统治局🚩" %} -## 投资者可以优先购买我们的NFT! - -### 先到先得,只有一个哦! - -{% embed url="https://rarible.com/token/0x60f80121c31a0d46b5279700f9df786054aa5ee5:611855" %} - -{% embed url="https://opensea.io/assets/0x60f80121c31a0d46b5279700f9df786054aa5ee5/611855" %} -{% endtab %} - -{% tab title="BFM Unity 铭牌 NFT" %} -BFM Unity 的 铭牌 -{% endtab %} - -{% tab title="星杯 NFT" %} -星杯 -{% endtab %} - -{% tab title="网络终端遗传因子 NFT" %} -网络终端遗传因子 -{% endtab %} - -{% tab title="白笛 NFT" %} -探窟家的荣耀 -{% endtab %} - -{% tab title="BFM算法纪念NFT" %} - -{% endtab %} -{% endtabs %} - -### 微信支付 - -![](../.gitbook/assets/1779f6a2493c2649cf67b84b11733d3f.jpg) - -### 支付宝 - -![](../.gitbook/assets/9304dfd7a84917a2a1364f70e5e1c023.jpg) - -### **币安支付** - -![](../.gitbook/assets/6889c0c32015caf05113720301000744.jpg) - -### **Ξ**TH or **Ξ**RC20 - -![](../.gitbook/assets/screenshot_2020-03-25-11-16-44-118_com.wallet.cry.png) - -### Ðoge - -![](../.gitbook/assets/881fcdba81e2eb5ac727012f083991cb.jpg) - -### ​₿TC - -![](../.gitbook/assets/screenshot_2020-03-25-11-16-30-068_com.wallet.cry.png) - -## 捐赠者公示 \(10元及以下不计入\) - -| 时间 | 昵称 | 联系方式 | 捐赠方式 | 金额 | -| :---: | :---: | :---: | :--- | :---: | -| 2021-3-22 | 青岭淡云 | 3186024190@qq.com | QQ红包🧧 | ¥200 | -| 2021-4-19 | 青岭淡云 | 3186024190@qq.com | QQ红包🧧 | ¥88.88 | - -## ₿FM Unity™透明资产公示 - -### 群主地址 - -[https://debank.com/profile/0x6c5bfa4a535ab2b742520056c4a1912853c8f5b3](https://debank.com/profile/0x6c5bfa4a535ab2b742520056c4a1912853c8f5b3) - -[https://debank.com/profile/0x07b26d5b094ac62c0975ad8696d4e63397c5c540](https://debank.com/profile/0x07b26d5b094ac62c0975ad8696d4e63397c5c540) 🚩(主要) - -### 若尘地址 - -[https://debank.com/profile/0x0540a183be580660a4c7399311b080fe13b06a11](https://debank.com/profile/0x0540a183be580660a4c7399311b080fe13b06a11) - - - diff --git a/hou-fang/roadmap/README.md b/hou-fang/roadmap/README.md deleted file mode 100644 index 46319038..00000000 --- a/hou-fang/roadmap/README.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -description: Roadmap ---- - -# 陈列室 \(历程\) 🏆 - -{% page-ref page="fei-wu-zhi-zi-chan-ming-lu.md" %} - -## 2017-2020 [算法研究](https://www.bfm-unity.com/qian-xian/research-institute-development/suan-fa-yan-jiu-yuan) - -![Bellman-Ford算法研究](../../.gitbook/assets/b49d19a6fef2385395ae687a10007929.png) - -**取得了一定进展,但是最终失败了** - -## 2020.2 - 2020.11 先行者 - -![先行者的使命](../../.gitbook/assets/bfm-unity.png) - -**建立了网站** - -## 2020.11 - 2021.3 空间站展开 - -![](../../.gitbook/assets/defi_3.png) - -**研究DeFi** - -## 2021.3 - 至今 价值黑洞 - -![价值黑洞的开发](../../.gitbook/assets/bfm-unity-2.0.png) - -**追求稳健的盈利,致力于积累区块链宇宙中的质量** - -## **2021.3.29** [**卓尔金历法**](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/ling-hang-duo-lei-da)\*\*\*\* - -![](../../.gitbook/assets/zhuo-er-jin-li-fa-lei-da-.png) - -**提出了卓尔金历法,指导定位牛熊** - -## **2021.5.23 在 BSC 链上发币** - -### **BFM Unity Token \(BFM\)** - -[https://pancakeswap.info/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec](https://pancakeswap.info/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec) - -[https://bscscan.com/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec](https://bscscan.com/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec) - diff --git a/hou-fang/roadmap/fei-wu-zhi-zi-chan-ming-lu.md b/hou-fang/roadmap/fei-wu-zhi-zi-chan-ming-lu.md deleted file mode 100644 index 7301236c..00000000 --- a/hou-fang/roadmap/fei-wu-zhi-zi-chan-ming-lu.md +++ /dev/null @@ -1,16 +0,0 @@ -# 虚拟资产编号名录 - -## \[BFM - 001\]: [BFM算法](https://www.bfm-unity.com/qian-xian/research-institute-development/suan-fa-yan-jiu-yuan) - -![Bellman-Ford算法研究](../../.gitbook/assets/b49d19a6fef2385395ae687a10007929.png) - -## \[BFM - 002\]: [卓尔金历法](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/ling-hang-duo-lei-da) - -![](../../.gitbook/assets/zhuo-er-jin-li-fa-lei-da-.png) - -## \[BFM - 003\]: BFM Token - -[https://pancakeswap.info/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec](https://pancakeswap.info/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec) - -[https://bscscan.com/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec](https://bscscan.com/token/0x40ff7612ff4d951ddfbaac3871d004d5e95c12ec) - diff --git a/hou-fang/she-ji-tu.md b/hou-fang/she-ji-tu.md deleted file mode 100644 index 8b511e79..00000000 --- a/hou-fang/she-ji-tu.md +++ /dev/null @@ -1,6 +0,0 @@ -# 设计 - -## LOGO设计 - -![](../.gitbook/assets/bfm-unity-logo-square%20%281%29.png) - diff --git a/kao-zheng-xue-xi/ji-suan-ji-kao-shi.md b/kao-zheng-xue-xi/ji-suan-ji-kao-shi.md deleted file mode 100644 index 01b3dbc5..00000000 --- a/kao-zheng-xue-xi/ji-suan-ji-kao-shi.md +++ /dev/null @@ -1,6 +0,0 @@ -# 计算机考试 - -## [NCRE](http://ncre.neea.edu.cn/) - -## [http://ncre.neea.edu.cn/html1/category/1507/899-1.htm](http://ncre.neea.edu.cn/html1/category/1507/899-1.htm) - diff --git a/kao-zheng-xue-xi/kao-shi-bao-ming.md b/kao-zheng-xue-xi/kao-shi-bao-ming.md deleted file mode 100644 index 76739140..00000000 --- a/kao-zheng-xue-xi/kao-shi-bao-ming.md +++ /dev/null @@ -1,22 +0,0 @@ -# 金融考试 - -## 证券从业 & 投顾,分析师,保代 - -[https://ks.sac.net.cn/sac/login/login\_qt.htm](https://ks.sac.net.cn/sac/login/login_qt.htm) - -考试计划:[https://www.sac.net.cn/cyry/kspt/kstz/202012/t20201207\_144906.html](https://www.sac.net.cn/cyry/kspt/kstz/202012/t20201207_144906.html) - -[投顾教程1](https://www.bilibili.com/video/BV1ab411b7W9?from=search&seid=16668710090922450360) - -## 基金从业 - -[http://baoming.amac.org.cn:10080/JJKSreg/page.htm](http://baoming.amac.org.cn:10080/JJKSreg/page.htm) - -[基础知识](https://www.bilibili.com/video/BV1ME411F7hZ)\([精点透析](https://www.bilibili.com/video/BV1FV411n7k6)\) \| [法律法规](https://www.bilibili.com/video/BV1EE411G77p)\([精点透析](https://www.bilibili.com/video/BV12B4y1c7SC)\) - -## 从业过线由 [海绵金融](https://www.haimianjinrong.com/) 提供 - -## CIIA,注册国际投资分析师 - -[https://www.sac.net.cn/cyry/kspt/kstz/201607/t20160714\_128421.html](https://www.sac.net.cn/cyry/kspt/kstz/201607/t20160714_128421.html) - diff --git a/kao-zheng-xue-xi/untitled-1.md b/kao-zheng-xue-xi/untitled-1.md deleted file mode 100644 index 787c997f..00000000 --- a/kao-zheng-xue-xi/untitled-1.md +++ /dev/null @@ -1,154 +0,0 @@ -# 公务员考试 - -## 公务员行测 - -{% embed url="https://www.bilibili.com/video/BV1gz4y1D7Kj" %} - -## 公务员申论 - -{% embed url="https://m.xue.huatu.com/nologin/video\_play/32977/" %} - -## 公务员面试 - -{% embed url="https://www.bilibili.com/video/BV1kJ411s71p" %} - -## 视频 - -{% embed url="https://www.bilibili.com/video/BV1kJ411s71p" %} - -## 1 应急应变 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.26.23.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.27.36%20%281%29.png) - -## 2 - 社会现象 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.29.53.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.31.55.png) - -## 3 - 组织调研 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.35.41.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.38.05.png) - -## 4 - 沟通协调 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.39.20.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.40.45.png) - -## 5 - 社会现象题 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.42.09.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.42.44.png) - -## 6 - 人生哲理 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.07.44.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.13.49.png) - -## 7 - 沟通协调 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.16.11.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.20.15.png) - -## 8 - 组织计划 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.27.55.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.28.05.png) - -## 9 - 情景模拟 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.29.38.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.31.19.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.33.35.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.40.01.png) - -## 11-12 漫画 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.57.44.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-6.59.08.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-7.02.54.png) - -## 13 组织计划 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-7.10.05.png) - -## 14 社会现象 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-7.14.25.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210418-xia-wu-7.22.00.png) - -## 15-16 综合能力 - -社会现象题 - 对策‌ - -调研,分析,解决‌ - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210408-xia-wu-6.05.50.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-5.54.37.png) - -## 17 新兴产业 - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUFrlr5DLDeI0quHOW%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-03-31%20%E4%B8%8B%E5%8D%883.41.38.png?alt=media&token=1bb8f136-9110-409e-b2f1-d728f8275ac6) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.00.50.png) - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUGvq5pHNWOQpXW9WM%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-17%20%E4%B8%8B%E5%8D%886.01.42.png?alt=media&token=48bcab15-89b1-4e71-83b4-14a2aec03b06) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.02.41.png) - -## 18 工作作风 - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUHdjwyspQWm2zHAfH%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-17%20%E4%B8%8B%E5%8D%886.04.52.png?alt=media&token=a1ecc6e1-3d51-4ebf-be47-4bea49e734f5) - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUHzVHeKWki3DdPc7J%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-17%20%E4%B8%8B%E5%8D%886.06.10.png?alt=media&token=a58c9402-e6bd-420a-a8c0-598c02344ddd) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.07.00.png) - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUIPmp3DJ6WQSiwveC%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-17%20%E4%B8%8B%E5%8D%886.08.11.png?alt=media&token=298de992-159d-4b73-adf3-99e9d92672e8) - -## 19 信息获取类计划组织 - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUJ-BJN2En-0n_CcKj%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-17%20%E4%B8%8B%E5%8D%886.10.48.png?alt=media&token=7ac7770d-7581-418e-97b8-384f51286d42) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.11.58.png) - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUJXQbsoU4vmPH8mbP%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-17%20%E4%B8%8B%E5%8D%886.13.08.png?alt=media&token=609e1781-37a6-48c2-9b57-5a4379d0e0d3) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210417-xia-wu-6.14.20.png) - -## 20 - 调查类 - -### 推广 - -动员学习,问题查摆,改进提升,总结表彰‌ - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUKN8nNbSqXPr2fyX-%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-17%20%E4%B8%8B%E5%8D%886.16.46.png?alt=media&token=b5cac4cf-0a3e-4436-839b-a66801022774) - -### 整改 - -调查问题,研究措施,贯彻落实,形成长效‌ - -问题清单,整改台账,任务分解, - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUG-RT_CVyd1xfWUa6%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-02%20%E4%B8%8B%E5%8D%8812.51.00.png?alt=media&token=1718ae42-c0be-4797-b78a-e6e1ea48952b) - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUFjmwRdQDuuYXFySi%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-02%20%E4%B8%8B%E5%8D%885.41.50.png?alt=media&token=973fc53d-6d0d-40cd-adf9-c2eaadba19e5) - -![](https://gblobscdn.gitbook.com/assets%2F-MYUDnCzDVdyHgE2Xs8O%2F-MYUDpJaKBNgc5xA1Lyu%2F-MYUG8SMkqYNeKXxxqoQ%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-04-02%20%E4%B8%8B%E5%8D%886.08.32.png?alt=media&token=a36dfc25-add3-4e3c-950c-ef7eb3849327) - diff --git a/kong-jian-zhan/bfm-bi-fang-meng.md b/kong-jian-zhan/bfm-bi-fang-meng.md deleted file mode 100644 index 81426540..00000000 --- a/kong-jian-zhan/bfm-bi-fang-meng.md +++ /dev/null @@ -1,22 +0,0 @@ -# BFM \| 比坊梦(建设中……) - - - -{% hint style="danger" %} -建设中,未挂载 -{% endhint %} - -BFM Unity \| 比坊梦联合体 \(行政:服务,运营,咨询\) - -BFM DA \| 比坊梦数产 \(加密金融:资产管理,数据分析,CeFi,DeFi\) - -BFM R-Ins. \| 比坊梦研究院 \(科学研究:算法交易,量化投资,量子退火\) - -BFM D-Ins. \| 比坊梦设计院 \(工程技术:方案设计,项目开发\) - -BFM Univ. \| 比坊梦大学 \(教育:培训\) - -BFM Cult. \| 比坊梦文化 \(文化:组织文化建设\) - -BFM Trad. \| 比坊梦金典 \(传统金融:证券,信贷,离岸\) - diff --git a/kong-jian-zhan/bfm-cult.-bi-fang-meng-wen-hua.md b/kong-jian-zhan/bfm-cult.-bi-fang-meng-wen-hua.md deleted file mode 100644 index 8b72f99a..00000000 --- a/kong-jian-zhan/bfm-cult.-bi-fang-meng-wen-hua.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -description: 文化:组织文化建设 ---- - -# 2-1 BFM Cult. \| 比坊梦文化 - diff --git a/kong-jian-zhan/bfm-da-bi-fang-meng-shu-chan.md b/kong-jian-zhan/bfm-da-bi-fang-meng-shu-chan.md deleted file mode 100644 index c91255ce..00000000 --- a/kong-jian-zhan/bfm-da-bi-fang-meng-shu-chan.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -description: 加密金融:资产管理,数据分析,CeFi,DeFi ---- - -# 0-1 BFM DA \| 比坊梦数产 - diff --git a/kong-jian-zhan/bfm-dins.-bi-fang-meng-gong-cheng-she-ji-yuan.md b/kong-jian-zhan/bfm-dins.-bi-fang-meng-gong-cheng-she-ji-yuan.md deleted file mode 100644 index 80616063..00000000 --- a/kong-jian-zhan/bfm-dins.-bi-fang-meng-gong-cheng-she-ji-yuan.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -description: "工程技术\b:方案设计,项目开发" ---- - -# 1-1 BFM D-Ins. \| 比坊梦工程设计院 - diff --git a/kong-jian-zhan/bfm-rins.-bi-fang-meng-ke-xue-yan-jiu-yuan.md b/kong-jian-zhan/bfm-rins.-bi-fang-meng-ke-xue-yan-jiu-yuan.md deleted file mode 100644 index 7af46f70..00000000 --- a/kong-jian-zhan/bfm-rins.-bi-fang-meng-ke-xue-yan-jiu-yuan.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -description: 科学研究:算法交易,量化投资,量子退火,公链开发 ---- - -# 1-0 BFM R-Ins. \| 比坊梦科学研究院 - -## 算法交易 - -## 量化投资 - -## 人工智能 - -## 量子退火 - -## 公链开发 - diff --git a/kong-jian-zhan/bfm-trad.-bi-fang-meng-jin-dian.md b/kong-jian-zhan/bfm-trad.-bi-fang-meng-jin-dian.md deleted file mode 100644 index 3fd83427..00000000 --- a/kong-jian-zhan/bfm-trad.-bi-fang-meng-jin-dian.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -description: 传统金融:证券,信贷,离岸 ---- - -# 2-2 BFM Trad. \| 比坊梦金典 - diff --git a/kong-jian-zhan/bfm-unity-bi-fang-meng-lian-he-ti.md b/kong-jian-zhan/bfm-unity-bi-fang-meng-lian-he-ti.md deleted file mode 100644 index 4b0ba1ff..00000000 --- a/kong-jian-zhan/bfm-unity-bi-fang-meng-lian-he-ti.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -description: 行政:服务,运营,咨询 ---- - -# 0-0 BFM Unity \| 比坊梦联合体 - diff --git a/kong-jian-zhan/bfm-univ.-bi-fang-meng-da-xue.md b/kong-jian-zhan/bfm-univ.-bi-fang-meng-da-xue.md deleted file mode 100644 index 692e4e04..00000000 --- a/kong-jian-zhan/bfm-univ.-bi-fang-meng-da-xue.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -description: 教育:培训 ---- - -# 2-0 BFM Univ. \| 比坊梦大学 - diff --git a/la-ji-hui-shou-zhan/README.md b/la-ji-hui-shou-zhan/README.md deleted file mode 100644 index 66a5c514..00000000 --- a/la-ji-hui-shou-zhan/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# 【垃圾】回收站 ♻️ - diff --git a/la-ji-hui-shou-zhan/cong-jia-shi-cang-xie-xia-de-la-ji.md b/la-ji-hui-shou-zhan/cong-jia-shi-cang-xie-xia-de-la-ji.md deleted file mode 100644 index a3dce27a..00000000 --- a/la-ji-hui-shou-zhan/cong-jia-shi-cang-xie-xia-de-la-ji.md +++ /dev/null @@ -1,16 +0,0 @@ -# 驾驶舱 - -> ### 成功,就是简单重复能力圈范围内的事。 -> -> 就算不会用Python,至少会用Excel -> 就算不会用FMZ,至少会用币优 -> 就算不会用合约,至少会用杠杆代币,和派网。 -> 就算不会前端&后端,至少会用Gitbook -> -> ### 学会了20%,就完成了80% -> -> ## [巴菲特忠告:简单胜复杂](https://xueqiu.com/5489291454/174355780) -> -> 1,投资不需要“三高“——高数,高学历,高智商 -> 2,复杂的事情简单做,简单的事情重复做 - diff --git a/la-ji-hui-shou-zhan/mvrv-bei-zhe-die.md b/la-ji-hui-shou-zhan/mvrv-bei-zhe-die.md deleted file mode 100644 index a464e366..00000000 --- a/la-ji-hui-shou-zhan/mvrv-bei-zhe-die.md +++ /dev/null @@ -1,86 +0,0 @@ -# MVRV - -#### [原始策略](https://share.weiyun.com/a0QaKX11)([介绍视频](https://www.bilibili.com/video/BV1uA411g7Sn)) - -![](../.gitbook/assets/mvrv-jian-ban-.png) - -![](../.gitbook/assets/mvrv-jian-ban-.png) - -![](../.gitbook/assets/mvrv.png) - -MVRV 由两部分组成,市值(MV)和实现市值(RV),是二者的比率。市值好理解,理解实现市值是理解这个指标的关键。 - -实现市值是指市场中比特币 UTXO (产生时)的价格的总和,大体体现了市场参与者的持币成本——交易所的交易不完全体现为 UTXO 的变动,因此这里只能是"大体体现"。 - -MVRV 可以简单地理解为目前的市场价格和成本的比率。 - -| MVRV | 1 | 3 | 4 | x | -| :--- | :--- | :--- | :--- | :--- | -| | 0 | 2 | 3 | x-1 | -| | 4 | 2 | 1 | 4-x+1 | -| | 2 | 1 | 0 | LOG\(4-x+1,2\) | -| | 0 | 1 | 2 | 2-LOG\(4-x+1,2\) | -| | 0 | 1 | 4 | POWER\(2-LOG\(4-x+1,2\)\) | -| | 0 | 0.25 | 1 | 1-y=\(POWER\(2-LOG\(4-x+1,2\),2\)/4\) | -| 仓位牛 | **1** | 0.75 | 0 | y\_BULL=1-\(POWER\(2-LOG\(4-x+1,2\),2\)/4\) | -| | | | | | -| | 1 | 2 | 4 | x | -| | 0 | 1 | 2 | LOG\(x,2\) | -| | 2 | 1 | 0 | 2-LOG\(x,2\) | -| | 4 | 1 | 0 | 4\*y=POWER\(2-LOG\(x,2\),2\) | -| 仓位1 | 1 | 0.25 | 0 | y1=POWER\(2-LOG\(x,2\),2\)/4 | -| | | | | | -| MVRV | 1 | 1.5 | 4 | x | -| | 6 | 5 | 0 | 8-2\*x | -| | 4096 | 1024 | 1 | POWER\(8-2\*x,4\) | -| 仓位2 | 1 | 0.25 | ≈0 | y2=POWER\(8-2\*x,4\)/4096 | -| | | | | | -| 仓位熊 | | | | y\_BEAR=\(3\*y1+2\*y2\)/5 | - -## BFM Unity 的 MVRV 评级:(以四分之一为准) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
时间2021. -
1.11
2021. -
1.11
-

2021.

-

1.21

-
-

2021.

-

1.27

-
评级BCCC
仓位25%02.53%4.36%
- diff --git a/la-ji-hui-shou-zhan/shen-jing-wang-luo-ce-lve.md b/la-ji-hui-shou-zhan/shen-jing-wang-luo-ce-lve.md deleted file mode 100644 index bebdf295..00000000 --- a/la-ji-hui-shou-zhan/shen-jing-wang-luo-ce-lve.md +++ /dev/null @@ -1,30 +0,0 @@ -# 神经网络策略 - -{% hint style="info" %} -\([**神经网络策略**](https://share.weiyun.com/T6NAzM5i)\([介绍](https://www.bfm-unity.com/management-cockpit-operation/shen-jing-wang-luo-ce-lve) \| [原理](https://www.bilibili.com/read/cv7001287)\) \| [**同架策略**](https://share.weiyun.com/xUw40P4l)\([介绍](https://guhhhhaa.gitbook.io/joinquant/jin-rong-li-lun-zong-jie/zi-chan-pei-zhi/tong-gen-ce-lve-yu-tong-jia-ce-lve)\) **\|** [**原始策略**](https://share.weiyun.com/a0QaKX11)**\)——已作废,仅供参考** -{% endhint %} - -```c -激活函数 - -sigmoid(x) = 1/(1 + exp(−x)) - -tanh(x) = (exp(x) - exp(−x))/(exp(x) + exp(−x)) -tanh(x) = (1 - exp(−2 * x))/(1 + exp(−2 * x)) - -tanh(x) = 2 * sigmoid(2 * x) - 1 -tanh(x / 2) = 2 * sigmoid(x) - 1 - -ReLU(x) = MAX(x,0) - -Swish(x) = x * sigmoid(x) -``` - -![神经网络建模](../.gitbook/assets/shen-jing-wang-luo-.png) - -## 8848手工打磨神经网络 - -![8848手工打磨高纯度钛合金神经网络](../.gitbook/assets/ping-mu-kuai-zhao-20210214-shang-wu-9.48.42.png) - -## 商场,是什么?战(炸)场。 - diff --git a/la-ji-hui-shou-zhan/wa-gou-gou-bi.md b/la-ji-hui-shou-zhan/wa-gou-gou-bi.md deleted file mode 100644 index 3052fc44..00000000 --- a/la-ji-hui-shou-zhan/wa-gou-gou-bi.md +++ /dev/null @@ -1,71 +0,0 @@ -# 挖狗狗币 - -{% embed url="https://www.bilibili.com/video/BV1Pz4y1D7Wb" %} - -{% hint style="danger" %} -注意,以下项目是庞氏骗局!请勿投资。 - -这个是传销,不要幻想了。 - -稍微了解币圈的人都知道,矿机芯片价格和币价是无法锚定的。 - -所以不可能用币价支付矿机价格,而且是用这么规整的整数支付。 - -所以肯定是庞氏骗局。 -{% endhint %} - -## **WoW**Ð**oge(⚠️**还没有**跑路,不过也快了)** - -{% embed url="https://wowdoge.io/?p=167731" %} - -Do you work with monitoring systems? - -No, as far as we know – monitoring is very expensive and not always proper way for marketing. We don’t want to hesitate our project and believe that it should work as much as he can. And if we will show our customers our stability they will recommend as from their side and better we will give them money that we will spent on marketing to our loyal customers versus monitoring systems. - -I need help! - -Write an email **support@wowdoge.io** we will answer all your questions! - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210410-xia-wu-3.07.19.png) - -## 充值记录 \(仅供日后报警\) - -[https://dogechain.info/tx/3aa4f25876839a5bb76f5ccc594017794987f0cb74431f037817bc203a3c540d](https://dogechain.info/tx/3aa4f25876839a5bb76f5ccc594017794987f0cb74431f037817bc203a3c540d) 110286.00000000 - - -## 提现记录 \(仅供日后报警\) - -[https://dogechain.info/tx/490241e8e3c37280ca51f83da4ef0bda3a81d12f24ea31279ebefed764ccb9ee](https://dogechain.info/tx/490241e8e3c37280ca51f83da4ef0bda3a81d12f24ea31279ebefed764ccb9ee) 5818.89582601 - -[https://dogechain.info/tx/8c92095a8da6861601df52f85b30d4bfd77d8024e5ce654919e8e93bf3faacdc](https://dogechain.info/tx/8c92095a8da6861601df52f85b30d4bfd77d8024e5ce654919e8e93bf3faacdc) 2308.95017608 - -[https://dogechain.info/tx/ed9163275bf1c29d119d38e2e0dd6fc224b84456e029ce7a8d80b4856649bc19](https://dogechain.info/tx/ed9163275bf1c29d119d38e2e0dd6fc224b84456e029ce7a8d80b4856649bc19) 942.17999915 - -[https://dogechain.info/tx/4c4900623b7c0b0e107eabd95c177a9a1515d7f89f235ee93be8d6a53a3a3679](https://dogechain.info/tx/4c4900623b7c0b0e107eabd95c177a9a1515d7f89f235ee93be8d6a53a3a3679) 20.01370369 - -## 已经向慢雾科技提交了情报 - -[https://slowmist.io/result.html?sid=90b88493-3a](https://slowmist.io/result.html?sid=90b88493-3ab513c1-7012-4b11-9690-19136ff5d0d9) - -[b513c1-7012-4b11-9690-19136ff5d0d9](https://slowmist.io/result.html?sid=90b88493-3ab513c1-7012-4b11-9690-19136ff5d0d9) - -{% hint style="danger" %} -注意,以下项目可能是庞氏骗局!请勿投资。 - -这个是传销,不要幻想了。 - -稍微了解币圈的人都知道,矿机芯片价格和币价是无法锚定的。 - -所以不可能用币价支付矿机价格,而且是用这么规整的整数支付。 - -所以肯定是庞氏骗局。 -{% endhint %} - -## Ð**ogeLand(☠️已经跑路)** - -{% embed url="https://dogeland.io/reg/D83GdEZB" %} - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210411-xia-wu-3.46.16.png) - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210411-xia-wu-3.54.36.png) - diff --git a/la-ji-hui-shou-zhan/yi-shi-xiao.md b/la-ji-hui-shou-zhan/yi-shi-xiao.md deleted file mode 100644 index a39597aa..00000000 --- a/la-ji-hui-shou-zhan/yi-shi-xiao.md +++ /dev/null @@ -1,24 +0,0 @@ -# 入群费用 - -## 入群费用 - -由于QQ在2021.4.14关闭了付费入群,为了防止群主被白嫖,设置付费入群10DOGE。 - -群主币安地址 :(币安规则,站内转账会退还手续费,所以不必担心手续费问题) - -```text -D5pFBzY5bPciwM5is1kuLk3jk2wtVntked -``` - -发送10DOGE后,私聊群主,提供DOGE链浏览器的交易链接,即可正式入群。 - -否则会在入群后5个工作日内被踢,望周知。 - -2021.4.15生效。之前加群的老用户不适用此设置。 - -收费原因:我们的域名需要在腾讯云续费,每年65元。 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210415-xia-wu-12.40.19.png) - -## - diff --git a/la-ji-hui-shou-zhan/zhi-hui-shi.md b/la-ji-hui-shou-zhan/zhi-hui-shi.md deleted file mode 100644 index fbadb5a7..00000000 --- a/la-ji-hui-shou-zhan/zhi-hui-shi.md +++ /dev/null @@ -1,20 +0,0 @@ -# 指挥室 - -* [HODL Waves](https://unchained-capital.com/hodlwaves/) - Unchained Capital -* [永续合约费率](https://www.binance.com/zh-CN/futures/funding-history/1) - 币安 - -[https://zhuanlan.zhihu.com/p/363634673](https://zhuanlan.zhihu.com/p/363634673) - [HODL Waves](https://unchained-capital.com/hodlwaves/) - -[https://zhuanlan.zhihu.com/p/66506343](https://zhuanlan.zhihu.com/p/66506343) - 基本没卵用 - -[https://zhuanlan.zhihu.com/p/359214506](https://zhuanlan.zhihu.com/p/359214506) - 资金费率 - -* Binance Pump monitor:[http://t.cn/A6Awr8IS](http://t.cn/A6Awr8IS) -* Binance Taker Trading Analysis:[http://t.cn/A6AwrHAd](http://t.cn/A6AwrHAd) - -## 游戏地图: - -{% embed url="https://guhhhhaa.gitbook.io/bfm/ruan-jian-bfm-on-python/defi-amm" %} - - - diff --git a/qian-xian/command-room-discovery/README.md b/qian-xian/command-room-discovery/README.md deleted file mode 100644 index cce0efdb..00000000 --- a/qian-xian/command-room-discovery/README.md +++ /dev/null @@ -1,285 +0,0 @@ ---- -description: Command Room (Discovery) ---- - -# LV3-指挥室 \(探索\) 👔 - -{% page-ref page="../management-cockpit-operation/" %} - -{% page-ref page="../research-institute-development/" %} - -![](../../.gitbook/assets/bfm-unity-zhi-hui-shi-.png) - -{% page-ref page="command-room-eth.md" %} - -{% page-ref page="command-room-bsc.md" %} - -{% page-ref page="zhi-hui-shi-polygonmatic.md" %} - - - -{% page-ref page="zhi-hui-shi-ipfsfil.md" %} - - - -{% page-ref page="../management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/" %} - -## 网络安全 - -[币安学院 - 安全](https://academy.binance.com/zh/articles?tags=security) - -[5种常见的加密货币诈骗与防范策略](https://academy.binance.com/zh/articles/5-common-cryptocurrency-scams-and-how-to-avoid-them) - -[8种常见的比特币骗局及其防范策略](https://academy.binance.com/zh/articles/8-common-bitcoin-scams-and-how-to-avoid-them) - -[如何识别去中心化金融\(DeFi\)中的骗局](https://academy.binance.com/zh/articles/how-to-spot-scams-in-decentralized-finance-defi) - -## 传统区块链 - -{% tabs %} -{% tab title="导航网站🧭" %} -* [**QKL123**](https://www.qkl123.com/data) **\(比特币数据\)** -* \*\*\*\*[**the Block**](https://www.theblockcrypto.com/data/) **\(数据网站\)** -* \*\*\*\*[**AssetDash**](https://assetdash.com/?all=true) **\(现实市值比较\)** -* \*\*\*\*[**Coin360**](https://coin360.com/) **\(加密市值比较\)** -* [**BlockSite**](https://www.blocksite.org/) **\(项目介绍\)** -* \*\*\*\*[**巴比特**](https://www.8btc.com/) **&** [**链闻**](https://www.chainnews.com/) **\(新闻消息\)** -* \*\*\*\*[**CoinMarketCap**](https://coinmarketcap.com/) **\(**[**CMC DeFi**](https://coinmarketcap.com/defi/)**\) \(**[**CMC Farming**](https://coinmarketcap.com/yield-farming/)**\)** -* \*\*\*\*[**CoinGecko**](https://www.coingecko.com/zh/)\*\*\*\* -* \*\*\*\*[**messari.io**](https://messari.io/)\*\*\*\* -* \*\*\*\*[**tokeninsight**](https://tokeninsight.com/zh)\*\*\*\* -* \*\*\*\*[**其他区块链数据分析网站**](https://medium.com/@chainnews/%E9%80%81%E4%BD%A0-22-%E4%B8%AA%E9%93%BE%E4%B8%8A%E6%95%B0%E6%8D%AE%E8%B5%84%E6%BA%90%E4%B8%8E%E5%8F%AF%E8%A7%86%E5%8C%96%E5%88%A9%E5%99%A8-%E6%B4%9E%E7%A9%BF%E5%8A%A0%E5%AF%86%E6%8A%95%E8%B5%84%E9%87%8D%E9%87%8D%E8%BF%B7%E9%9B%BE-b57f5b4b5727)\*\*\*\* -* \*\*\*\*[**Gas费**](https://gasnow.sparkpool.com/)\*\*\*\* -* \*\*\*\*[**Block123**](https://www.block123.com/zh-hans/) **\(导航网站\)** -{% endtab %} - -{% tab title="挖矿🔨" %} -* \*\*\*\*[**好站点 - 云算力**](https://www.hzd.com/hashrate) **** -* \*\*\*\*[**Block123 - 云算力**](https://www.block123.com/zh-hant/c/016707973922.htm?tid=78)\*\*\*\* -* \*\*\*\*[**挖矿入门教程**](https://www.hzd.com/course) - -**\(仅供参考,不构成本网站意见\)** -{% endtab %} - -{% tab title="交易所🏦" %} -## **交易所** - -* \*\*\*\*[**币安**](https://www.binancezh.co/cn/register?ref=EQ89E7WI) **(返现比例:我**10%,你10%**)** - -![](../../.gitbook/assets/xian-jia-dan-zhi-sun-dan-oco-dan-.png) - -![](../../.gitbook/assets/image%20%284%29.png) - -## [流动性挖矿](https://www.binance.com/zh-CN/swap/liquidity) - -![](../../.gitbook/assets/binance-lp.png) - -![](../../.gitbook/assets/binance-lp2.png) - -## 量化 - -* \*\*\*\*[**币优**](https://www.biyou.tech/) -* \*\*\*\*[**派网 - Pionex**](https://www.pionex.cc/zh-CN/sign/ref/NxwM4W0S)\*\*\*\*[**MVRV**](https://charts.woobull.com/bitcoin-mvrv-ratio/) **(Woobull)或** [**MVRV**](https://www.blockchain.com/charts/mvrv)**(Blockchain.com)** -* \*\*\*\*[**MVRV**](https://medium.com/@kenoshaking/bitcoin-market-value-to-realized-value-mvrv-ratio-3ebc914dbaee)**:3.7**(表示高估)和 **1**(表示低估) - -![](../../.gitbook/assets/mvrv.png) - -![](../../.gitbook/assets/mvrv-jian-ban-.png) -{% endtab %} - -{% tab title="法币交易👔" %} -## 法币交易又名:OTC\(场外交易\)或 C2C\(客户对客户交易\) - -![](../../.gitbook/assets/cefi.png) - -* [**比特派钱包**](https://bitpie.com/)(**推荐**) - -![](../../.gitbook/assets/fei-shuai-bi-jiao-.png) - -* \*\*\*\*[**币安**](https://www.binance.com/cn) **(需要交提币手续费)** - -![](../../.gitbook/assets/image%20%284%29.png) -{% endtab %} - -{% tab title="钱包💰" %} -![](../../.gitbook/assets/ping-mu-kuai-zhao-20210114-xia-wu-7.26.51.png) - -* [**TrustWallet**](https://trustwallet.com/)**(**[BIP44](https://learnblockchain.cn/2018/09/28/hdwallet/)钱包**)** -* [**比特派钱包**](https://bitpie.com/)**(**非[BIP44](https://learnblockchain.cn/2018/09/28/hdwallet/),可添加[BIP44](https://learnblockchain.cn/2018/09/28/hdwallet/),支持法币交易) -* [**BitKeep**](https://bitkeep.org/)([BIP44](https://learnblockchain.cn/2018/09/28/hdwallet/)钱包,对DeFi支持较好) -* [**TokenPocket**](https://www.tokenpocket.pro/)([BIP44](https://learnblockchain.cn/2018/09/28/hdwallet/)钱包,对DeFi支持较好) -* \*\*\*\*[**更多-钱包筛选器**](https://www.qkl123.com/ranking/wallet?filter=true)\*\*\*\* - -![](../../.gitbook/assets/ping-mu-kuai-zhao-20210114-xia-wu-7.25.29.png) -{% endtab %} - -{% tab title="技术社区🏠" %} -* [**ETHfans**](https://ethfans.org/)\*\*\*\* -{% endtab %} - -{% tab title="刻字" %} -[**如何在区块链上刻字**](https://www.jianshu.com/p/3668a66f3eba)\*\*\*\* - -\*\*\*\*[**刻字2**](https://www.babaofan.com/news/popular/53507.html)\*\*\*\* - -\*\*\*\*[**刻字3**](https://www.528btc.com/ask/158555831343012.html)\*\*\*\* -{% endtab %} - -{% tab title="发币" %} -[如何发币](https://www.chainnews.com/articles/522868612900.htm)——UNI - -[如何发币](https://sushiswapchef.medium.com/miso-minimal-initial-sushiswap-offering-a45a2da6081b)——SUSHI - -[https://vittominacori.github.io/erc20-generator/create-token/](https://vittominacori.github.io/erc20-generator/create-token/) -{% endtab %} -{% endtabs %} - -## 数据分析工具 - -* \*\*\*\*[**Dune Analytic**](https://duneanalytics.com/home) - * \*\*\*\*[**DEX - Dune Analytics**](https://duneanalytics.com/hagaetc/dex-metrics)\*\*\*\* - * \*\*\*\*[**MakerDAO - Dune Analytics**](https://duneanalytics.com/hagaetc/maker-dao---mcd)\*\*\*\* - * \*\*\*\*[**0x - Dune Analytic**](https://duneanalytics.com/0x/0x-trading-activity) -* \*\*\*\*[**Messari**](https://messari.io/)\*\*\*\* -* \*\*\*\*[**NansΞn**](https://www.nansen.ai/)\*\*\*\* - * **Token God Mode - NansΞn** - * **Wallet Profiler - NansΞn** -* \*\*\*\*[**Token Terminal**](https://www.tokenterminal.com/)\*\*\*\* -* \*\*\*\*[**DeFi Pulse**](https://defipulse.com/)\*\*\*\* -* \*\*\*\*[**Etherscan**](https://etherscan.io/)\*\*\*\* - * [**以太坊指标 - Etherscan**](https://etherscan.io/charts) - -**著名地址:** [**0xb1**](https://debank.com/profile/0xb1adceddb2941033a090dd166a462fe1c2029484)\*\*\*\* - -## 比特币指标 - -{% tabs %} -{% tab title="MVRV" %} -* [**MVRV**](https://www.blockchain.com/charts/mvrv)**(Blockchain.com)或** [**MVRV**](https://charts.woobull.com/bitcoin-mvrv-ratio/)**(Woobull)** - - \*\*\*\*[**MVRV**](https://medium.com/@kenoshaking/bitcoin-market-value-to-realized-value-mvrv-ratio-3ebc914dbaee)**:3.7**(表示高估)和 **1**(表示低估) - (以7天平均为准) - -* [**同架策略**](https://share.weiyun.com/xUw40P4l)\*\*\*\* - -{% page-ref page="../../la-ji-hui-shou-zhan/mvrv-bei-zhe-die.md" %} -{% endtab %} - -{% tab title="S2F" %} -* \*\*\*\*[**S2F目标价格**](https://www.qkl123.com/data/s2f/btc)\*\*\*\* -{% endtab %} - -{% tab title="彩虹图🌈" %} -* [彩虹图🌈](https://www.blockchaincenter.net/bitcoin-rainbow-chart/) -{% endtab %} - -{% tab title="永续合约费率" %} -* [永续合约费率](https://www.binance.com/zh-CN/futures/funding-history/1) - 币安 - -当市场趋势看涨时,资金费率为正,此时多头将向空头支付资金费率。相反,当市场看跌时,资金费率为负,此时是空头交易者向多头支付 -{% endtab %} - -{% tab title="HODL Waves" %} -* [HODL Waves](https://unchained-capital.com/hodlwaves/) - Unchained Capital -{% endtab %} - -{% tab title="🚩减半" %} -* \*\*\*\*[**比特币减半 - QKL123**](https://www.qkl123.com/data/halve/btc)\*\*\*\* -* \*\*\*\*[**比特币减半 - 币安学院**](https://academy.binance.com/zh/halving) ****[**其他数据**](https://www.qkl123.com/data)\*\*\*\* -{% endtab %} - -{% tab title="CFTC持仓报告" %} -* [原报告](https://www.cftc.gov/dea/futures/deacmesf.htm) -* [可视化报告](https://www.tradingster.com/cot/futures/fin/133741) -{% endtab %} - -{% tab title="USDT发行量" %} -* [**USDT市值TradingView**](https://www.tradingview.com/symbols/CRYPTOCAP-USDT/) **&** [**USDT发行量与比特币价格**](https://www.longhash.com/cn/livecharts/USDT-circulation-and-bitcoin-prices) **&** [**USDT市值**](https://coinmarketcap.com/currencies/tether/) - -USDT市值增长的导数,决定了比特币的涨跌 -{% endtab %} -{% endtabs %} - -### 指标组 - -{% tabs %} -{% tab title="仪表盘" %} -* [**Datamish**](https://datamish.com/)\*\*\*\* -* \*\*\*\*[**Coinfarm**](https://coinfarm.online/)\*\*\*\* -* \*\*\*\*[**Bfxrate**](https://bfxrates.com/)\*\*\*\* -* \*\*\*\*[**Tensorcharts**](https://www.tensorcharts.com/) **** -* \*\*\*\*[**B站视频**](https://www.bilibili.com/video/BV1Be411s7pj)\*\*\*\* -{% endtab %} - -{% tab title="Sharpe Ratio" %} -\*\*\*\*[**Sharpe Ratio**](https://charts.woobull.com/bitcoin-risk-adjusted-return/) -{% endtab %} - -{% tab title="活跃地址数" %} -[**比特币活跃地址数**](https://www.qkl123.com/data/active_address/btc)的平方和其价值之间存在一定对应关系,符合梅特卡夫定律。 -{% endtab %} - -{% tab title="NVT & NVTS" %} -* [**NVT**](https://charts.woobull.com/bitcoin-nvt-ratio/) **&** [**NVTS**](https://charts.woobull.com/bitcoin-nvt-signal/) **(Woobull)或** [**NVT**](https://www.blockchain.com/charts/nvt) **&** [**NVTS**](https://www.blockchain.com/charts/nvts)**(Blockchain.com)** [**NVT**](https://woobull.com/introducing-nvt-ratio-bitcoins-pe-ratio-use-it-to-detect-bubbles/#fnref2)**:90**(表示高估)和 **40**(表示低估) **如果价格小幅下跌后,NVT依然>90,说明是泡沫,应该立即离场。** [**NVTS**](https://woobull.com/nvt-signal-a-new-trading-indicator-to-pick-tops-and-bottoms/)**:150**(表示高估)和 **45**(表示低估) - -![](../../.gitbook/assets/image%20%288%29.png) -{% endtab %} - -{% tab title="RVT" %} -* [**RVT介绍**](https://medium.com/@_Checkmatey_/the-bitcoin-rvt-ratio-a-high-conviction-macro-indicator-615b68715b77)\*\*\*\* - -![](../../.gitbook/assets/image%20%289%29.png) - -* RVT \(90D\) 在顶部的翻转往往意味着市场的熊转牛,在市场在成本未提升的情况下开始活跃; 随着价格的升高,在人们的交易作用下,市场成本开始与交易量同步放大, -* RVT 持续维持在底部代表着市场的狂热,虽然难以预知顶部,但是投资者需要变得更加保守; -* 牛转熊后,交易量的萎缩往往要比市场成本更多,所以 RVT 会升高,交易量持续萎缩的情况下,投资者可以考虑更激进一些。 -* 极端行情使得市场成本下降的同时放大了交易量,RVT 有所下降,不能作为进入牛市的讯号,需稳定后再做观察。 - -![](../../.gitbook/assets/image%20%285%29.png) -{% endtab %} - -{% tab title="UTXO" %} -### UTXO \(< 1 month\) - -一月以下的 UTXO 的增加,代表着更多的 Holder 参与到市场交易中;突然的极端行情会造成该值的异常升高,这种情况下另行分析背后原因对市场状态的影响。 - -我们看到在2017年的牛市,该比例曾达到 23%,该值作为经验,应该是非常危险的信号了。实际上,可能当一月以下的 UTXO 占比超过 15% 时就是把仓位调低趋于保守的时候了(如从10% 调低至 5% );在此值长时间处于低位 10% 附近时,可以考虑以定投的方式调高仓位(如从 5% 调至 10%)。 -{% endtab %} - -{% tab title="布林带" %} -* \*\*\*\*[**TradingView**](https://www.tradingview.com/chart/ooNfs1M1/) **下跌至第二条布林线离场** - -![](../../.gitbook/assets/2324d53c92773efa8daf7e8f3f2213bd.jpg) -{% endtab %} -{% endtabs %} - -### MVRV和S2F投资策略 - -{% page-ref page="../management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/" %} - -## 纳指指标 - -[**The total market capitalization of Nasdaq 100**](https://markets.businessinsider.com/index/market-capitalization/nasdaq_100)\*\*\*\* - -{% tabs %} -{% tab title="CAPE" %} -* [周期性调节市盈率(CAPE)](https://ycharts.com/indicators/cyclically_adjusted_pe_ratio)或 [席勒市盈率](https://www.gurufocus.cn/indicator/shiller_pe)。周期性调节市盈率=实际(通货膨胀调节后)股价/10年平均美股收益([**介绍**](https://www.forbes.com/sites/danrunkevicius/2021/12/28/the-stock-market-is-the-cheapest-since-1980/?sh=5c81ea9952be))>40泡沫,<10正常,仓位\(40-x\)/30\*100 -{% endtab %} - -{% tab title="ECY" %} -* [超额收益指数(ECY)](https://www.macromicro.me/charts/27100/us-shiller-ecy)=(1/周期性调节市盈率(CAPE))-10年实际利率([**介绍**](https://www.sohu.com/a/436891292_146833))(+正数具有投资价值,-负数没有投资价值) -{% endtab %} - -{% tab title="巴菲特指标" %} -* [巴菲特指标](http://www.currentmarketvaluation.com/models/buffett-indicator.php) 或 [巴菲特指标](https://www.gurufocus.cn/indicator/buffett-market-valuation)(推荐)。以股市总市值占GNP(或GDP)的比例来衡量一国股市的估值水平,又被称作资产证券化率指标。([**介绍**](https://www.sohu.com/a/437526687_146833))一般情况,巴菲特指标位于70%至80%之间时是买入美股的好时机。如果巴菲特指标超过100%,则投资者需要关注美国股市的风险,并应该考虑持币观察。 -{% endtab %} - -{% tab title="VIX" %} - -{% endtab %} - -{% tab title="价值大师网" %} -* [**价值大师网**](https://www.gurufocus.cn/)\*\*\*\* -{% endtab %} -{% endtabs %} - diff --git a/qian-xian/command-room-discovery/command-room-bsc.md b/qian-xian/command-room-discovery/command-room-bsc.md deleted file mode 100644 index 04cfb0b5..00000000 --- a/qian-xian/command-room-discovery/command-room-bsc.md +++ /dev/null @@ -1,250 +0,0 @@ -# 指挥室 - 币安智能链 - -{% page-ref page="./" %} - -![](../../.gitbook/assets/bfm-unity-bsc.png) - -{% hint style="danger" %} -此页面不是最终版本,正在建设中…… -{% endhint %} - -{% tabs %} -{% tab title="设置钱包" %} -如果你是第一次参与 BSC,需要设置 BSC 网络。以小狐狸钱包为例,在 Google 浏览器上打开小狐狸插件,选择自定义 RPC,网络名称填写币安智能链,新的 RPC URL 填写 [https://bsc-dataseed1.binance.org/](https://bsc-dataseed1.binance.org/),链 ID 填写 56,符号填写 BNB,屏蔽管理器 URL 填写 [https://bscscan.com/](https://bscscan.com/)(具体设置可以参考这篇 [文档](https://bscscan.freshdesk.com/support/solutions/articles/67000185905-how-to-connect-metamask-to-binance-smart-chain-)) -{% endtab %} - -{% tab title="币安桥" %} -[币安桥](https://www.binance.org/cn/bridge) -{% endtab %} - -{% tab title="浏览器" %} -#### 区块链浏览器:[bscscan](https://bscscan.com/) -{% endtab %} - -{% tab title="动态数据" %} -**动态数据:**[defistation](https://www.defistation.io/) -{% endtab %} - -{% tab title="项目" %} -在 BSC 上比较出彩的项目如下: - -* 交易、建流动性、基础性挖矿:[Cake](https://pancakeswap.finance/) \( [Info](https://pancakeswap.info/) \) -* 银行赛道:XVS、For、Cream -* 机枪池:Acryptos、[AutoFarm](https://autofarm.network/)、Bunny、Beefy -* swap 赛道:Cake、Bake、Burger、Anyswap -* 稳定币赛道:bdolla -* 保险类:Helmet wstoe - -其中,Cake 类似 BNB,XVS 类似 AAVE+UNI+MKR,ACS、Auto、Bunny 类似 YFI、Harvest。 -{% endtab %} -{% endtabs %} - -> [https://www.chainnews.com/articles/798797725591.htm](https://www.chainnews.com/articles/798797725591.htm) - -{% hint style="info" %} -现在根据若尘的推荐,重点研究币安智能链,我们会把指挥室分裂出来,分裂出BSC和ETH,然后慢慢扩展我们的部署。 - -1,[YieldWatch](https://www.yieldwatch.net/) - -2,[AutoFarm](https://autofarm.network/) - -3,[PancakeSwap](https://pancakeswap.finance/) \( [Pancakeswap Info](https://pancakeswap.info/) \) - -4,[DeFiStation](https://www.defistation.io/) - -5,[belt.fi](https://belt.fi/) - -行,从这几个开始研究就行了 - -在研究明白可持续跨周期的盈利模式之前,还是使用币优和币安自带流动性挖矿。 - -我们不想研究那些昙花一现的高收益率,我们要找到可持续的,可长期运行的,稳定的盈利模式。 - -我们最好避开火币的Heco MDEX生态,我一直对火币的信用感到怀疑,因为毕竟火币分裂出的FCoin跑路了 - -belt.fi,目前综合来看最好的稳定币项目 - -autofarm.network,bsc/heco/polygon链自动复投 - -pancakebunny.finance,锁仓量最大的耕作聚合器 - -dex.guru,dex聚合器(买小币用) - -然后最近polygon链很火,所以matic回调迅猛 -{% endhint %} - -{% tabs %} -{% tab title="发币" %} -[http://bsc.tokendiy.defiplot.com/\#/](http://bsc.tokendiy.defiplot.com/#/) -{% endtab %} -{% endtabs %} - -[https://www.defistation.io/](https://www.defistation.io/) - -交易赛道 PancakeSwap - -机枪池赛道 Autofarm - -银行借贷赛道 venus - -![](../../.gitbook/assets/image%20%2819%29.png) - -* 交易、建流动性、基础性挖矿:Cake -* 银行赛道:XVS、For、Cream -* 机枪池:Acryptos、Autofarm、Bunny、Beefy -* swap 赛道:Cake、Bake、Burger、Anyswap -* 稳定币赛道:bdolla -* 保险类:Helmet wstoe - -[一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://www.chainnews.com/articles/308959402011.htm) - -[玩转火爆的币安智能链:这份入门指南请收好](https://www.chainnews.com/articles/798797725591.htm) - -**衍生品** - -**去中心化衍生品** 市场在整个 DeFi 生态行业中占据了独特的地位,其未来的规模和发展前景充满想象力,币安智能链生态图谱在衍生品方面主要有 Hedget、Mettalex 以及 Injective Protocol 三个协议。 - -![一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://img.chainnews.com/material/images/a4c5fe64eec149f150634c7b16bba138.jpg-article) - -**Hedget** - -[Hedget](https://www.hedget.com/) _(HGET)_ 是用于期权交易的去中心化协议。通过提供抵押品,用户可以在区块链上创建和交易不同的期权类型,该协议还增加了对诸如以太坊的现有区块链的第二层支持,以实现更快、更便宜、更复杂的交易。量化交易公司 **Alameda Research** 曾对 Hedget 进行 50 万美元的 [战略投资](https://www.chainnews.com/news/865175811777.htm),以换取 10 万 HGET 代币。 - -**Mettalex** - -[Mettalex](https://mettalex.com/) 由 **Fetch.ai** 提供支持的去中心化平台,用于交易加密货币和商品衍生品,目前正在准备在以太坊和币安智能链上启动主网。 - -**Injective Protocol** - -[Injective Protocol](https://injectiveprotocol.com/) 是一款基于以太坊网络,集成了可验证延迟函数 _(VDF)_ ,通过 **流逝时间证明** _(Proof of Elapsed Time)_ 以规避相同区块内的顺序冲突问题来杜绝交易作弊和不良交易的去中心化交易协议。曾在 2018 年获得 Binance Labs 孵化计划的天使投资,后又得到孵化社区 StartX 的生态支持。 - -_延伸阅读:《_[_链闻精选|读懂 DeFi 潜力赛道「去中心化衍生品」_](https://www.chainnews.com/articles/235048309955.htm)_》_ - -**基础设施** - -在 DeFi **基础设施** 的生态合作方面,币安智能链主要合作方有 Web3 区块链云基础设施平台 **ANKR** 、币安智能链区块浏览器 **BSCscan** 、智能合约云端开发工具 **ChainIDE** 、「以太坊加油站网络」 **Gas Station Network** 、以太坊智能合约生态系统 **MyWish** 、区块浏览器 **NowNodes** 、结合链外投票和链上治理的治理方案 **Snapshot** 七大协议。 - -![一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://img.chainnews.com/material/images/22b41d2ac8c1b5d5c87883857e772bc9.jpg-article) - -**预言机** - -去中心化的预言机网络作为连接区块链和 **链下世界** 的中间件,可以进一步扩展智能合约的应用场景,逐渐成为 DeFi 领域中不可或缺的一部分,目前币安智能链 DeFi 预言机生态中的合作伙伴有 **Band Protocol** 、 **ChainLink** 和 **Sphinx Protocol** 三个协议。 - -![一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://img.chainnews.com/material/images/a8bedbdc5c6b2ada938e3e024048a016.jpg-article) - -_延伸阅读:《_[_链闻精选好文丨读懂 DeFi 世界价格发现者「去中心化预言机」_](https://www.chainnews.com/articles/396855211142.htm)_》_ - -**交易 & 流动性** - -![一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://img.chainnews.com/material/images/603862d8d9d613db79ab33dceac13f1a.jpg-article) - -[**BakerySwap**](https://www.bakeryswap.org/) 是币安智能链上的 AMM 去中心化交易平台,Uniswap 下一次迭代。流动性提供商将获得 BAKE 代币奖励,从中可获得 BakerySwap 交易费用的一部分,并可作 BakerySwap 治理的一部分进行投票。 - -[**BestSwap**](https://bestswap.com/) 由 **Roark Fund** 战略投资和孵化的去中心化交易所,产品层面,Bestswap 在币安智能链上的部署目前包 含 3 个部分:基于 AMM 的去中心化交易所 Bestswap,流动性挖矿平台 Best Farm,以及去中心化治理机制 DAO。 - -[**Bounce Finance**](https://bounce.finance/) 是基于以太坊的批量拍卖工具与 Uniswap 协议不同的是,它需要设置每次拍卖的上限以及持续时间,超过上限的资金将会被弹回 _(bounce)_ 给用户。其协议治理代币 BOT,可能会加入拍卖池等功能,以及增加回购销毁模式。 - -[**bStable.finance**](https://bstable.finance/home/) 是基于币安智能链的开发的稳定币兑换协议,提供低滑点、低手续费且深度可靠的稳定币兑换服务。 - -[**BurgerSwap**](https://burgerswap.org/) 是币安社区开发的首个挖矿项目,基于 **币安智能链** ,SushiSwap 等类似项目的主要缺陷之一是,它们实际上并不关心社区和治理。由于协议创建方式不民主,对流动性提供者的奖励和获得的奖励很少,而且不会改变。BurgerSwap 希望 BURGER 适合所有人,使所有人都能使用 DeFi。 - -[**DODO**](https://dodoex.io/) 是基于 **主动做市商算法** 的下一代链上流动性解决方案,通过接入预言机,可以提供比 Uniswap 低十倍的滑点。另外 DODO 的特性包括只需要提供单一资产做流动性提供者,从而避免无常损失和持仓风险,而且支持首次资产发行以及闪电交换。 - -[**Equator.Finance**](https://equator.finance/) 是通用流动性协议,支持灵活构建自定义资金池以及任何 BEP20 资产之间的建议。 - -[**Jetfuel**](https://jetfuel.finance/) 是在币安智能链上搭建的通缩性流动性挖矿生态系统。 - -[**PancakeSwap**](https://pancakeswap.finance/) 是一个建立在币安智能链上的 BEP-20 去中心化交易平台,利用自动做市商机制提供流通性。 - -[**Rubic**](https://rubic.finance/) 是 DeFi 多链点对点平台,用户能够立即交易代币或按照其条款进行交易,分享并产生收入。 - -[**Spartan Protocol**](https://spartanprotocol.org/) 是币安智能链上首个流动性激励协议。SPARTA 资产将被用作资金池中的流动性资产,同时也可作为抵押品合成代币,这样可以确保其具有很高的流动性,并且可以实时对不安全的头寸进行安全清算。 - -[**StableXSwap**](https://www.stablex.finance/#/swap) 是由 StableX Labs 在币安智能链上构建的专注于稳定币的 AMM DEX。 - -[**Tenet**](https://www.tenet.farm/) 是 DREP Signal Labs 孵化的 DeFi 产品,专注于打造 DeFi Layer 2 设施的 AMM 连接器。 - -[**Thugs.Fi**](https://thugs.fi/) 项目的愿景是在币安智能链上创建一个功能性和趣味性的代币生态系统,该生态系统围绕着 NFT、游戏和代币技术而建立。 - -[**UniFi**](https://unifiprotocol.com/) 跨链 DeFi 基础设施,是一组非托管的,可互操作的,去中心化的跨链智能合约,旨在为下一代的 DeFi 开发提供基础设施。UniFi 提供了一座桥梁,将基于以太坊的 DeFi 产品的现有经济模型与其他区块链上不断发展的 DeFi 市场联系起来。 - -[**UniSave**](https://app.unisave.exchange/#/swap) 为 **Y3D Finance** _(Y3D)_ 社区孵化产品,是与 Uniswap 兼容的去中心化交易所协议,相比原版 Uniswap,UniSave 没有协议层面的手续费,但支持将协议中的闲置资产连接到其他 DeFi 聚合器协议中进行挖矿,提高做市收益。 - -[**Unitrade**](https://unitrade.app/) 是基于 Uniswap 的智能交易平台,为用户提供各种 Uniswap 不具备的交易工具,包括:实时订单簿、实时深度图、成交历史、K 线指标、限价委托等功能。 - -**信用 & 借贷** - -![一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://img.chainnews.com/material/images/e6a8278fc51bc8032a777cec7d65a8ef.jpg-article) - -[**7up.Finance**](https://7up.finance/#/) 是一个基于币安智能链的去中心化 Filecoin _(FIL)_ 借贷和投资平台。 - -[**CokeFinance**](https://cokefinance.com/#/) 是一个基于币安智能链的开源 AMM 借贷协议,引入做市凭证 _(LP Tokens)_ 抵押即挖矿机制。 - -[**Cream.finance**](https://cream.finance/) 是基于智能合约的开放式包容性金融系统,将推动新兴财务系统的边界,使其尽可能安全地包含尽可能多的用户和资产,其将首先在币安智能链上通过算法货币市场协议启动。 - -[**ForTube**](https://www.for.tube/home) 是原力协议推出的 DeFi 借贷平台。ForTube 基于智能合约和自动化算法技术,用户可以存币获得利息,抵押借币支付利息。ForTube 的利率由市场供需决定,资产由用户掌握,支持随存随取、随借随还。 - -[**Venus**](https://venus.io/) 是一种基于算法的货币市场系统,旨在将基于去中心化金融的借贷体系引入币安智能链,也是币安新币挖矿上线的第四个项目。 - -_延伸阅读:《_[_全景式解读加密货币借贷市场挑战、趋势及行业影响_](https://www.chainnews.com/articles/682616127727.htm)_》_ - -**收益 & 聚合器** - -![一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://img.chainnews.com/material/images/d7b0201e4fb63ca51f06fbe3329ddc62.jpg-article) - -[**Bearn.fi**](https://bearn.fi/) 是跨链产品,其核心提供收益链生成,赌场和游戏聚合、桥接、资金管理和多链治理。 - -[**BeefyFinance**](https://beefy.finance/) 和 [**Pancakebunny**](https://pancakebunny.finance/farm) 是基于币安智能链的收益聚合器。 - -[**Defi.money**](https://dfi.money/#/) _(YFII)_ 是专注于为用户提供 DeFi **聚合理财** 服务的平台。YFII 从众多 DeFi 流动性挖矿产品中,据年化收益率、安全系数、理财周期等因素,自动选择和配置最符合广大用户利益的产品。 - -[**Dego**](https://dego.finance/) 是 DeFi 世界的乐高,采用模块化设计,融入产品各种元素的组合,以形成具有特定功能的子系统,将模块结合在一起,以创建具有多种功能的新系统、多元化的投资组合,并为用户带来可观的财务回报。 - -[**dForce**](https://dforce.network/) 是基于区块链的去中心化金融 DeFi 和货币协议平台,为 DeFi 和开放式金融应用程序提供底层基础设施。 - -[**fry.world**](https://fry.world/) 是币安智能链上的收益聚合器,可通过购买 BEP-20 代币,在限定时间内获得 FRIES。 - -[**OpenOcean**](https://openocean.finance/) 是一个全聚合协议,可以通过智能算法结合机器学习,可为用户在不同的 DEX 和 CEX 上在进行价格对比后找到支持最优价格和最低滑点的路径,并进行一站式交易。 - -[**Reef.finance**](https://reef.finance/) 是一个基于波卡的多链智能收益引擎和流动性聚合器。 - -[**Xend Finance**](https://xend.finance/) 建立在币安智能链上,寻求在 DeFi 中引入「信用合作社」的观念。 - -_延伸阅读:《_[_链闻精选好文|读懂风头渐盛的 DeFi 聚合器_](https://www.chainnews.com/articles/608336653882.htm)_》_ - -**数据分析 & 可视化** - -![一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://img.chainnews.com/material/images/d0815873dc6093ab9bd6b9e246f2e299.jpg-article) - -[**BitQuery**](https://bitquery.io/) 此前叫 Bloxy,正在构建一个区块链数据引擎,通过该引擎可以轻松访问多个区块链的数据。 - -[**BSC.NEWS**](https://www.bsc.news/) 提供币安智能链相关的 DeFi 最新新闻、功能和分析类新闻报道。 - -[**CoinMarketCap**](https://coinmarketcap.com/) 是加密数字市场信息平台,包括市值、排行等全面的数据信息。散户浏览排名前列的加密货币行情和市场数据的首选。大量媒体也喜欢引用该网站关于加密货币的报价。访问量巨大,甚至可以影响到市场行情。 - -[**DApp.com**](https://www.dapp.com/) 是 DApp 分发平台,为包括以太坊、EOS、Tron、Steem、Tomochain、 IOST 、Blockstack 等多条公链中的超过 2,200 个应用提供展示分发及数据分析,其目标是构建数据驱动的区块链应用生态框架,让用户无门槛地发掘、使用所有去中心化应用。 - -[**Dapp.review**](https://dapp.review/) 是专注于区块链的应用生态平台,目前已经收录了 15 条区块链总计超过 5000 个应用。 - -[**DAppRader**](https://dappradar.com/) 向开发者和用户提供便利的应用市场数据追踪服务,包括基于以太坊、EOS 的 DApp 数据信息,和直观展示整个 DApp 生态系统的市场数据、统计数据图表和分析见解。 - -[**DefiStation**](https://www.defistation.io/) 是 DeFi 排行与分析网站,针对在币安智能链上构建和运营的去中心化金融项目,实时跟踪锁定在链上的 DeFi 总市值,深入了解去中心化金融的增长趋势和动向。该项目由 Cosmostation 开发和维护,由币安资助。 - -[**PARSIQ**](https://www.parsiq.net/) 是一个区块链监控和自动化工作平台,可以充当区块链和脱链应用程序之间的多层桥梁。PARSIQ 的功能可自动执行区块链分析和监控流程,并提供具有实时智能的可自定义工作流程。 - -**跨链** - -![一文纵览币安智能链全景图:DeFi、NFT 等 26 个细分赛道多线发展](https://img.chainnews.com/material/images/d8eb3695480190a235d63308f2f98958.jpg-article) - -[**AnySwap**](https://anyswap.exchange/dashboard) 是跨链数字资产交易协议,基于 Fusion DCRM 技术,具有自动定价和流动性系统。 - -[**Binance Bridge**](https://www.binance.org/cn/bridge) 是一项跨链桥接服务,旨在提高不同区块链之间的互操作性。从本质上讲,它允许任何人将选定的代币转换为 Wrapped 的形式代币 _(或「挂钩代币」)_ 以在 Binance Chain 和 Binance Smart Chain 上使用。 - -[**JellySwap**](https://jelly.market/) 是支持跨链交换的去中心化应用程序,允许在不同网络之间进行价值转移。 - -[**NerveNetwork**](https://nerve.network/) 是一个去中心化的数字资产服务网络,它基于 NULS 微服务框架,使用 NULSChainBox _(链工厂的底层)_ 开发搭建的区块链跨链交互协议。 - -[**PolyNetwork**](https://www.poly.network/) 是一个跨链互操作性协议,旨在连接当前已存在的各条异构区块链 _\(公有链、联盟链、私有链\)_ ,可实现异构链间的任意信息跨链 _(不仅是资产跨链)_ ,最终实现跨链信息的事务一致性。 - -[**RenVM**](https://renproject.io/) 是拜占庭错误 _(BFT)_ 网络,可实现区块链之间的通用互操作性。通过将共识与安全的多方计算 _(MPC)_ 算法相结合,RenVM 可以实例化一个去中心化、无需许可和无需信任的托管人,该托管人可以将资产锁定在一条链上,并以一对一的方式固定资产其他链上。 - diff --git a/qian-xian/command-room-discovery/command-room-eth.md b/qian-xian/command-room-discovery/command-room-eth.md deleted file mode 100644 index d46aa30d..00000000 --- a/qian-xian/command-room-discovery/command-room-eth.md +++ /dev/null @@ -1,198 +0,0 @@ -# 指挥室 - 以太坊 - -{% page-ref page="./" %} - -![](../../.gitbook/assets/bfm-unity-eth.png) - -## **DeFi** - -![](../../.gitbook/assets/defi_2.png) - -{% tabs %} -{% tab title="工具" %} -## **AMM** - -### [**项目列表-DeBank**](https://debank.com/projects)\*\*\*\* - -* [**Zapper.fi**](https://www.zapper.fi/)**(**[**DeFi Zap 使用说明**](https://www.fmz.com/bbs-topic/5371)**,小白专用,🎵**[**Atom bomb baby**](https://music.163.com/song?id=567215077&userid=273670441)**)** -* \*\*\*\*[**Zerion**](https://app.zerion.io/exchange)\*\*\*\* -* \*\*\*\*[**DeBank**](https://debank.com/swap)\*\*\*\* - - * \*\*\*\*[**Uniswap**](https://app.uniswap.org/)**(**[**Uniwap 使用说明**](https://www.chainnews.com/articles/522868612900.htm)**) 数据:**[**Uniswap Info**](https://info.uniswap.org/) **&** [**Uniswap ROI**](https://www.uniswaproi.com/)**(**[**DAI/ETH**](%20https://info.uniswap.org/pair/0xa478c2975ab1ea89e8196811f51a7b7ade33eb11) **&** [**RenBTC/ETH**](https://info.uniswap.org/token/0xeb4c2781e4eba804ce9a9803c67d0893436bb27d)**) TV版:**[**uniswap.vision**](https://uniswap.vision/) **或** [**ChartEx**](https://www.chartex.pro/) - * [**Curve**](https://www.curve.fi/) - * \*\*\*\*[**Balancer**](https://balancer.exchange/)**(**[**pools**](https://pools.balancer.exchange/)**)(**[**0.01%**](https://pools.balancer.exchange/#/pool/0x2ee268541b96b2b8129a06b006fd247b467f6118) **&** [**2.5%**](https://pools.balancer.exchange/#/pool/0x7a672f0f4f67496d7179c1626ee9adead175e719/)**)** - - **聚合器** - - * [**1Inch**](https://1inch.exchange/)**,**[**Mooniswap**](https://mooniswap.exchange/)\*\*\*\* - * \*\*\*\*[**Paraswap**](https://paraswap.io/)**,**[**Matcha**](https://matcha.xyz/)**,**[**Totle**](https://totle.exchange/)\*\*\*\* - * \*\*\*\*[**比较各个AMM**](https://medium.com/bollinger-investment-group/constant-function-market-makers-defis-zero-to-one-innovation-968f77022159) - * [**Alchemix**](https://app.alchemix.fi/)\*\*\*\* - - **PMM:**[**DodoEx**](https://app.dodoex.io/) - **其他:**[**BlackHoleSwap**](https://blackholeswap.com/swap) - -* [其他工具](https://www.bilibili.com/video/BV13D4y1o7Wh?p=1) - - - -[autofarm.network](https://autofarm.network/) - iUSDT vault - -## **聚合器** - -![](../../.gitbook/assets/defi.png) - -* 资产管理平台, [**Zapper Finance**](https://zapper.fi/)**、**[**Zerion**](https://zerion.io/)**、**[**Debank**](https://debank.com/)**、**[**TokenSets**](https://tokensets.com/) -* 交易类聚合器, [**1inch Exchange**](https://1inch.exchange/)、[Matcha](https://matcha.xyz/)、[ParaSwap](https://paraswap.io/#/)、[InstaDapp](https://defi.instadapp.io/) -* 收益类聚合器,[**YFI**](https://yearn.finance/)**、**[**YFII**](https://dfi.money/)**、**[**YFV**](https://valuedefi.io/)、[Rari Capital](https://app.rari.capital/) -* 机枪池,[**YFV-Vault**](https://valuedefi.io/value-vaults) -* FARM,[Badger](https://app.badger.finance/)**,**[**Harvest**](https://harvest.finance/)\*\*\*\* -* 稳定币聚合协议, [mStable](https://mstable.app/) -* 信息聚合,门户网站,[**DeFi Pulse**](https://defipulse.com/)、[**DeFi Prime**](https://defiprime.com/)、[CoinGecko](https://www.coingecko.com/)、[**链闻**](https://www.chainnews.com/tag_9336.htm)\*\*\*\* -* 比较收益,[pools.fyi](https://pools.fyi/)、[DeFi Rate](https://defirate.com/) -* 指数,[**DeFi Pulse Index \(DPI\)**](https://info.uniswap.org/token/0x1494ca1f11d487c2bbe4543e90080aeba4ba3c2b) **或** [**DPI \(Tokensets\)**](https://www.tokensets.com/portfolio/dpi) ****[**https://www.coingecko.com/en/coins/defipulse-index**](https://www.coingecko.com/en/coins/defipulse-index) ****[**https://www.indexcoop.com/**](https://www.indexcoop.com/)\*\*\*\*[**https://www.indexcoop.com/dpi**](https://www.indexcoop.com/dpi)\*\*\*\*[**https://www.indexcoop.com/farm**](https://www.indexcoop.com/farm)\*\*\*\* -* **理财,**[**Indexed.finance**](https://indexed.finance/)**、**[**Rari Capital**](http://rari.capital/)**、**[**PieDAO**](https://www.piedao.org/)\*\*\*\* - - \*\*\*\* - -![](../../.gitbook/assets/0_f4drzr5wsbt3fbdw.jpeg) - -## 币安智能链 - -[在币安智能链中关联MetaMask钱包](https://academy.binance.com/zh/articles/connecting-metamask-to-binance-smart-chain) - -[PancakeSwap指南](https://academy.binance.com/zh/articles/a-guide-to-pancakeswap) - -## 借贷 - -* \*\*\*\*[**Compound**](https://app.compound.finance/)\*\*\*\* -* \*\*\*\*[**Aave**](https://app.aave.com/)\*\*\*\* -* \*\*\*\*[**Cream**](https://app.cream.finance/)\*\*\*\* -* \*\*\*\*[**KeeperDAO**](https://app.keeperdao.com/)\*\*\*\* - - - **** - -* \*\*\*\*[**88mph**](https://88mph.app/)\*\*\*\* - -### 闪电贷 - -* [**Aave**](https://app.aave.com/) - -闪电贷一般需要用户通过编程实现,但目前也出现了一些工具,比如 [CollateralSwap](https://collateralswap.com/)、[DeFi Saver](https://app.defisaver.com/)、[Furucombo](https://furucombo.app/) 等,使得用户不需要编程也能使用闪电贷。 - -## **衍生品** - -* \*\*\*\*[**dYdX**](https://dydx.exchange/) **** -* [**Synthetix**](https://synthetix.io/)\*\*\*\* -* \*\*\*\*[**Hegic**](https://www.hegic.co/)——如果说 Oypn 是订单簿式的期权,Hegic 就是 AMM 版期权,正如 Idex 与 Uniswap 的区别; -* [**Barnbridge**](https://barnbridge.com/) 一个把圈内各种波动率 Token 化的协议,通过建立分级收益债券来对冲圈内各种风险。 - -**不能理解,可以看看** [**动画片**](https://www.agefans.tv/play/20200054?playid=2_1) - -[更多工具](https://www.163.com/dy/article/G0KADG9L0514832I.html) -{% endtab %} - -{% tab title="资产🚩" %} -## **ETH** - -**智能合约,DeFi入金渠道** - -## **BTC** - -* WBTC -* [**RenBridge**](https://bridge.renproject.io/)\*\*\*\* - -## [**DPI**](https://www.indexcoop.com/dpi) **—— DeFi指数** - -## \*\*\*\*[**PieDAO**](https://www.piedao.org/)\*\*\*\* - -[**BCP \(PieDAO Balanced Crypto Pie\)**](https://pools.piedao.org/#/pie/0xe4f726adc8e89c6a6017f01eada77865db22da14) **\(** 🥧 [**Oven**](https://pools.piedao.org/#/oven)**\) \(**[**介绍**](https://medium.com/piedao/announcing-balanced-crypto-pie-bcp-btc-eth-and-defi-7a2423c5d94e)**\)** - -[**YPIE**](https://pools.piedao.org/#/pie/0x17525e4f4af59fbc29551bc4ece6ab60ed49ce31) , [**DEFI++**](https://pools.piedao.org/#/pie/0x8d1ce361eb68e9e05573443c407d4a3bed23b033) - -## **USD** - -### [**yCRV**](https://docs.dfi.money/#/zh-cn/buy-tokens?id=_5-ycrv%e5%85%91%e6%8d%a2) **—— 复合债券** - -融合了利息,机枪池,流动性挖矿 - -* **USDT —— 币圈入金渠道** -* **DAI —— 去中心化稳定币** -* [Curve](https://www.curve.fi/) -* [mStable](https://mstable.app/#/save) -* [Curve mUSD-3POOL](https://www.curve.fi/musd/deposit) , [mStable API](https://mstable.app/#/earn/curve-musd-3pool) -* [https://yearn.finance/zap](https://yearn.finance/zap) 或 [https://yearn.finance/earn](https://yearn.finance/earn) - -最近资金涌入了 ESD、DSD、Basis 和 Frax 等二三四代算法型稳定币,反而一代的 AMPL 无人问津。 - -* Lien——无需 MakerDAO 150% 超额抵押,而是通过风险分级债券形式实现的基于 ETH 抵押的稳定币; - -## 美股 - -* [**Mirror.finance**](https://mirror.finance/) - -\*\*\*\*[**教程**](https://www.douban.com/group/topic/204847108/) -{% endtab %} - -{% tab title="前沿" %} -## PolkaDot - -* [**PolkaSwap**](https://polkaswap.io/)\*\*\*\* -* \*\*\*\*[**Reef**](https://reef.finance/)\*\*\*\* - -## **LINK** - -* [**YFLink**](https://yflink.io/#/) - -## **Fantom \(FTM\)\(AC站台\)** - -\*\*\*\*[**https://www.fantom.foundation/**](https://www.fantom.foundation/)\*\*\*\* - -\*\*\*\*[**https://pwawallet.fantom.network/\#/dashboard**](https://pwawallet.fantom.network/#/dashboard)\*\*\*\* - -\*\*\*\*[**https://www.fantom.foundation/blog/how-to-use-sushiswap-on-fantom/**](https://www.fantom.foundation/blog/how-to-use-sushiswap-on-fantom/) -****[**https://www.fantom.foundation/blog/how-to-use-c-r-e-a-m-on-fantom/**](https://www.fantom.foundation/blog/how-to-use-c-r-e-a-m-on-fantom/) -****[**https://www.fantom.foundation/blog/how-to-use-curve-on-fantom/**](https://www.fantom.foundation/blog/how-to-use-curve-on-fantom/)\*\*\*\* - -## **树图Conflux \(不推荐,观望\)** - -{% embed url="https://moonswap.fi/" %} -{% endtab %} - -{% tab title="指标" %} -参考数据分析网站 [Nansen](https://nansen.ai/)、[Intotheblock](https://app.intotheblock.com/insights/defi)、[TokenTerminal](https://www.tokenterminal.com/)、[Santiment](https://graphs.santiment.net/) 等创建的某些指标或模型。 -这是 [**TokenTerminal**](https://terminal.tokenterminal.com/dashboard/Dapps) ****设计的一个 P/S 指标 -[参考链接](https://www.chainnews.com/articles/649261412781.htm) -{% endtab %} - -{% tab title="发行基金" %} -**T**[**okenSets**](https://www.tokensets.com/create)(需要约$1000) - -[Balancer](https://pools.balancer.exchange/#/pool/new)(未知 -{% endtab %} -{% endtabs %} - -## Layer-2 - -![](../../.gitbook/assets/image%20%2825%29.png) - -### ZK Rollup\(零知卷叠\) - -* [Loopring](https://loopring.io/#/) -* [Loopring Swap](https://exchange.loopring.io/) - -### Optimistic Rollup\(乐观卷叠\) - -* Uniswap V3 - -## MetaMask 清除 Pending 状态方法:点头像-设置-高级-重设账户 - -## 正在研究的文章 - -[科普 \| 你现在就可以在 Layer-2 上做的 7 件事](https://www.chainnews.com/articles/721352629049.htm) - -[DeFi 投资门槛高?速览 24 个一站式 DeFi 投资平台](https://www.chainnews.com/articles/635773702973.htm) - -[五分钟读懂 Pendle AMM:交易随时间衰减资产的魔法工具](https://www.chainnews.com/articles/842836392011.htm) - diff --git a/qian-xian/command-room-discovery/zhi-hui-shi-ipfsfil.md b/qian-xian/command-room-discovery/zhi-hui-shi-ipfsfil.md deleted file mode 100644 index 460b36e1..00000000 --- a/qian-xian/command-room-discovery/zhi-hui-shi-ipfsfil.md +++ /dev/null @@ -1,18 +0,0 @@ -# 指挥室 - IPFS/FIL - -{% hint style="danger" %} -此页面正在建设中…… -{% endhint %} - -## [导航1](https://www.ipfshub.com/) \| [导航2](https://ipfs.bar/) - -![](../../.gitbook/assets/v2-e4c6e350e544fea0714a457fad3336b3_1440w.jpeg) - -![](../../.gitbook/assets/201904031530111.jpeg) - -## [IPFS应用到底有多广泛?24个应用带你领略神秘力量](https://zhuanlan.zhihu.com/p/99583718) - -## [IPFS多应用场景介绍:这26个应用你都下载过吗?](https://zhuanlan.zhihu.com/p/112503120) - -## [一图看懂所有IPFS应用场景:80+项目不仅仅是挖矿](https://www.8btc.com/media/385907) - diff --git a/qian-xian/command-room-discovery/zhi-hui-shi-polygonmatic.md b/qian-xian/command-room-discovery/zhi-hui-shi-polygonmatic.md deleted file mode 100644 index a31d4155..00000000 --- a/qian-xian/command-room-discovery/zhi-hui-shi-polygonmatic.md +++ /dev/null @@ -1,25 +0,0 @@ -# 指挥室 - Polygon\(Matic\) - -![](../../.gitbook/assets/34bca558a0944fef7f6a81540618be5f.jpg) - -{% hint style="danger" %} -不稳定,正在建设中…… - -users must first migrate their digital assets to the Polygon network through the [POS Bridge](https://wallet.matic.network/bridge) or [Zapper Bridge](https://zapper.fi/bridge). - -* [**QuickSwap**](https://quickswap.exchange/#/swap) **\|** [**QuickSwap Info**](https://info.quickswap.exchange/) **\|** [**Bitkeep - Quickswap**](https://bitkeep.org/defi.html) **交易对排名** -* [**DeBank - Polygon**](https://debank.com/projects?chain=matic) **项目排名** -* \*\*\*\*[**polygon.Balancer**](https://polygon.balancer.fi/)\*\*\*\* -* \*\*\*\*[**polygon.Curve**](https://polygon.curve.fi/)\*\*\*\* - -[Layer 2使用教程系列一:教你使用几大Layer 2应用 - 区块链](https://www.theblockbeats.com/news/21604) - -[Layer 2使用教程系列二:如何使用Matic Network完成资产跨链 ](https://www.bishijie.com/shendu/172332.html) -{% endhint %} - -![](../../.gitbook/assets/0ca565acfc14af2a6672005f6248036c.jpg) - -![](../../.gitbook/assets/5acf84f4608fc236fe1e5504ab1ccc52.jpg) - -![](../../.gitbook/assets/a8a2348c1acfbf6f9b4c2d782a206dba.jpg) - diff --git a/qian-xian/lv0-zhu-jian-qiao-yin-dao.md b/qian-xian/lv0-zhu-jian-qiao-yin-dao.md deleted file mode 100644 index df7f3eec..00000000 --- a/qian-xian/lv0-zhu-jian-qiao-yin-dao.md +++ /dev/null @@ -1,150 +0,0 @@ ---- -description: Main Bridge (Guidance) ---- - -# LV0-主舰桥 \(引导\) 🇺🇳 - -> ## **比坊梦 —— 区块链 · 金融 · 元宇宙** -> -> **BF​M Unity —— Blockchain · Finance · Metaverse** - -![](../.gitbook/assets/ok6w_kokdtoqqqldbiopanx28uhva7l7rcrxv1ckxgu.jpeg) - -{% hint style="info" %} -NOTE: **This project is in beta. Use at your own risk.** - -[**怀念旧版**](https://guhhhhaa.gitbook.io/bfm-unity-doc-v1/) **+ 曾用域名:**[**https://guhhhhaa.gitbook.io/bfm**](https://guhhhhaa.gitbook.io/bfm) - -### [赞助](https://guhhhhaa.gitbook.io/bfm/juan-zeng-da-shang) \| [加群](https://guhhhhaa.gitbook.io/bfm/ru-he-jia-ru-wo-men-de-tao-lun-qun-zu) \| [看板](https://trello.com/b/z4aDgNAL/todolist) - -### [**系统核心代码**](https://guhhhhaa.gitbook.io/bfm/ruan-jian-bfm-on-python) \| [**投资方法论**](https://guhhhhaa.gitbook.io/joinquant/jin-rong-li-lun-zong-jie) **\|** [**设计Assets**](https://share.weiyun.com/l21pilUf) -{% endhint %} - -![](../.gitbook/assets/bfm-unity-2.0%20%281%29.png) - -## 交易员必进\([卓尔金历法](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da)\) - -{% page-ref page="management-cockpit-operation/" %} - -{% page-ref page="management-cockpit-operation/zi-chan-pei-zhi/" %} - -## 银行客户必进 - -{% page-ref page="lv2-yin-hang/" %} - -## 探险家必进 - -{% page-ref page="command-room-discovery/" %} - -## 开发者必进 - -{% page-ref page="research-institute-development/" %} - -## 老客户怀旧 - -{% page-ref page="../hou-fang/roadmap/" %} - -{% page-ref page="../li-shi/ru-he-jia-ru-wo-men-de-tao-lun-qun-zu/qun-gong-gao-bei-fen.md" %} - -## 慈善家必进 - -{% page-ref page="../hou-fang/juan-zeng-da-shang.md" %} - -## ₿TC 投资路径 - -![](../.gitbook/assets/defi_3.png) - - - -## **ΞTH** 生态 - -![](../.gitbook/assets/ef558f261bce694919b0240c57cf96e8.jpg) - -## 世界金融体系 - -![](https://gblobscdn.gitbook.com/assets%2F-M39hAhDwZfzJY4Aou3y%2F-MS_tTSvZKlvXeOtD3RP%2F-MS_x7kDam1NfXrnkUMP%2F%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202021-02-03%20%E4%B8%8A%E5%8D%8811.33.58.png?alt=media&token=ff3b182b-101b-4f9a-b9b7-fa0e7b45233e) - -## 我们的经合关系 - -![](../.gitbook/assets/bfm-unity-zhan-lve-he-zuo-huo-ban-%20%282%29.png) - -[全球最大的50家银行在区块链领域的布局](https://cloud.tencent.com/developer/article/1356837) - -![](../.gitbook/assets/bfm-unity-you-shang-.png) - -### ~~~~[~~我们的友商2~~](https://www.bilibili.com/video/BV1YW411d7ZY)~~~~ - -## 愿景及使命 - -我喜欢坐在 [**SCP-2950**](http://scp-wiki-cn.wikidot.com/scp-2950) 上,看 [**GOC**](http://scp-wiki-cn.wikidot.com/goc-hub-page) 的公告。 - -([**愿景及使命1**](https://www.bilibili.com/bangumi/play/ss28381/) **\|** [**愿景及使命2**](https://www.dilidili3.com/play/7107-1-1/) **\|** [**愿景及使命3**](https://www.dm233.cc/anime/20200054.html) **\|** [**愿景及使命4**](https://www.bilibili.com/bangumi/play/ss4098/)) - -意识存储器:Bilibili,嘀哩嘀哩,233动漫网 - -## ‌核心价值观 - -### 1.0 - -> ## [寻找网络终端遗传因子](https://www.dilidili3.com/play/7107-1-1/) - -### 2.0 - -> 算法交易 · 量化投资 -> -> #### BFM Unity -> -> 服务 · 信用 · 价值 - -### 3.0 - -> 品牌升级, -> -> 由 服务·信用·价值 -> -> #### 升级为 **金融·科技·智慧** -> -> #### 金融:服务·信用·价值 -> -> #### 科技:算法交易·量化投资·区块链·量子退火 -> -> #### 智慧:数学·经济学·计算机科学\(人工智能\) -> -> 品牌颜色: 金融:橙黄色 -> -> 科技:蓝色 -> -> 智慧:黑色或白色 - -### 4.0 - -> ## **比坊梦 —— 区块链 · 金融 · 元宇宙** -> -> **BF​M Unity —— Blockchain · Finance · Metaverse** - -## 底部栏‌ - -设计统一色号:[**\#**4A90E2](https://www.color-hex.com/color/4a90e2) [\#FCA735](https://www.color-hex.com/color/fca735) - -![](../.gitbook/assets/bfm-unity-logo-square.png) - -![](../.gitbook/assets/bfm-unity-bi-fang-meng-logo.png) - -![](../.gitbook/assets/bfm-unity-logo%20%281%29.png) - -#### ​[BFM Unity](https://www.bfm-unity.com/) \| [Blockchain\(₿itcoin\)-Financial-Management Unity](https://www.bfm-unity.com/) \| [Bellman-Ford-Moore Unity](https://www.bfm-unity.com/) \| - -#### \*\*\*\*[**比坊梦联合体**](https://www.bfm-unity.com/) **\|** [**币丰枚联合体**](https://www.bfm-unity.com/) **\|** [**百分秒联合体**](https://www.bfm-unity.com/) - -#### 2020.3.23 - 至今 \| [_**管理员入口**_](https://app.gitbook.com/@guhhhhaa/s/bfm/) **\|** [**Github 文档地址**](https://github.com/guhhhhaa/bfm-gitbook) **\|** [**Github 代码地址**](https://github.com/guhhhhaa/bfm-group-file) **\|** [**B站主页**](https://space.bilibili.com/11708778) - -## 域名使用 [腾讯云](https://console.cloud.tencent.com/domain) 购买及续费 - -![](../.gitbook/assets/ping-mu-kuai-zhao-20210411-xia-wu-7.59.52.png) - -## 本项目使用 GNU General Public License v3.0 - -{% page-ref page="../feng-kong-yu-he-gui/gpl-v3.md" %} - -**© 2021.** [**BFM-Unity.com.**](https://www.bfm-unity.com/) [**BFM Unity**](https://www.bfm-unity.com/)**.** [**比坊梦联合体**](https://www.bfm-unity.com/)**. All Rights Reserved.** - diff --git a/qian-xian/lv2-yin-hang/README.md b/qian-xian/lv2-yin-hang/README.md deleted file mode 100644 index b161c1fa..00000000 --- a/qian-xian/lv2-yin-hang/README.md +++ /dev/null @@ -1,20 +0,0 @@ -# LV2-影银行 \(枢纽\) 🏦 - -![](../../.gitbook/assets/yin-hang-pai-bian-.png) - -![](../../.gitbook/assets/yin-hang-deng-xiang-.png) - -{% page-ref page="ge-ren-ye-wu/" %} - -{% page-ref page="untitled.md" %} - -{% page-ref page="chuang-shi-ye-wu.md" %} - -{% page-ref page="zi-ying-tou-zi.md" %} - - - -![](../../.gitbook/assets/yin-hang-gao-shi-.png) - - - diff --git a/qian-xian/lv2-yin-hang/chuang-shi-ye-wu.md b/qian-xian/lv2-yin-hang/chuang-shi-ye-wu.md deleted file mode 100644 index f72e7649..00000000 --- a/qian-xian/lv2-yin-hang/chuang-shi-ye-wu.md +++ /dev/null @@ -1,71 +0,0 @@ -# 创世业务 - -![](../../.gitbook/assets/yin-hang-pai-bian-.png) - -![](../../.gitbook/assets/yin-hang-gao-shi-.png) - -{% hint style="danger" %} -正在建设中…… -{% endhint %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
发币业务发链业务永久刻字存储业务永久网站
TokenDIY-ETH - 跨链 -

刻字1<b></b>

-

<b></b>刻字2<b></b>

-

<b></b>刻字3<b></b>

-
STORJ - Neocities -
TokenDIY-BSC - 公链IPFS(FIL)
Kaleido.io - 侧链
联盟链
私有链
- - - diff --git a/qian-xian/lv2-yin-hang/ge-ren-ye-wu/README.md b/qian-xian/lv2-yin-hang/ge-ren-ye-wu/README.md deleted file mode 100644 index d1dc80ba..00000000 --- a/qian-xian/lv2-yin-hang/ge-ren-ye-wu/README.md +++ /dev/null @@ -1,27 +0,0 @@ -# 个人业务 - -![](../../../.gitbook/assets/yin-hang-pai-bian-.png) - -![](../../../.gitbook/assets/yin-hang-deng-xiang-.png) - -{% hint style="danger" %} -正在建设中…… -{% endhint %} - -| **账户服务** | **贷款业务** | **储蓄存款** | **信用卡** | **外汇业务** | **投资理财** | **私人银行** | **金融市场** | -| :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | -| \*\*\*\*[**BIP44协议**](https://learnblockchain.cn/2018/09/28/hdwallet/)\*\*\*\* | \*\*\*\*[**Aave**](https://app.aave.com/)\*\*\*\* | \*\*\*\*[**Aave**](https://app.aave.com/)\*\*\*\* | \*\*\*\*[**使用指南**](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zhe-die)\*\*\*\* | \*\*\*\*[**币安法币交易**](https://www.bfm-unity.com/qian-xian/command-room-discovery#chuan-tong-qu-kuai-lian)\*\*\*\* | \*\*\*\*[**热销理财产品**](https://www.bfm-unity.com/qian-xian/command-room-discovery/command-room-eth#defi)\*\*\*\* | [**私钥云保管**](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/si-yao-yun-bao-guan)\*\*\*\* | \*\*\*\*[**市场**](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/ling-hang-duo-lei-da)\*\*\*\* | -| [**私钥云保管**](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/si-yao-yun-bao-guan)\*\*\*\* | \*\*\*\*[**Compound**](https://app.compound.finance/)\*\*\*\* | \*\*\*\*[**Compound**](https://app.compound.finance/)\*\*\*\* | \*\*\*\* | \*\*\*\*[**比特派法币交易**](https://www.bfm-unity.com/qian-xian/command-room-discovery#chuan-tong-qu-kuai-lian)\*\*\*\* | \*\*\*\*[**热销DeFi基金**](https://www.bfm-unity.com/qian-xian/command-room-discovery/command-room-eth#defi)\*\*\*\* | [**Debank**](https://debank.com/swap)\*\*\*\* | \*\*\*\*[**币优**](https://www.biyou.tech/)\*\*\*\* | -| \*\*\*\*[**TrustWallet**](https://trustwallet.com/)\*\*\*\* | \*\*\*\*[**Cream**](https://app.cream.finance/)\*\*\*\* | \*\*\*\*[**Cream**](https://app.cream.finance/)\*\*\*\* | \*\*\*\* | \*\*\*\* | **BTC锚定物** | [**Zapper.fi**](https://zapper.fi/)\*\*\*\* | \*\*\*\*[**派网**](https://www.pionex.cc/zh-CN/sign/ref/NxwM4W0S)\*\*\*\* | -| [**比特派钱包**](https://bitpie.com/)\*\*\*\* | \*\*\*\*[**KeeperDAO**](https://app.keeperdao.com/)\*\*\*\* | \*\*\*\*[**KeeperDAO**](https://app.keeperdao.com/)\*\*\*\* | \*\*\*\* | \*\*\*\* | **ETH锚定物** | [**Zerion**](https://app.zerion.io/exchange)\*\*\*\* | \*\*\*\* | -| \*\*\*\*[**BitKeep**](https://bitkeep.org/)\*\*\*\* | \*\*\*\*[**88mph**](https://88mph.app/)\*\*\*\* | \*\*\*\*[**88mph**](https://88mph.app/)\*\*\*\* | \*\*\*\* | \*\*\*\* | | | | -| \*\*\*\*[**TokenPocket**](https://www.tokenpocket.pro/)\*\*\*\* | | | | | | | | - -| 算法交易 | 量化投资 | 智能投顾 | 期货业务 | | | -| :--- | :--- | :--- | :--- | :--- | :--- | -| 高频交易 | 投资组合 | [牛熊判断](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/ling-hang-duo-lei-da) | 期货 | | | -| 做市交易 | 数据分析 | [商业智能](https://www.bfm-unity.com/qian-xian/research-institute-development/xiao-bai-xue-cheng/power-bi-jiao-cheng) | 合约 | | | -| 套利交易 | 决策辅助 | [智能调仓](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/ling-hang-duo-lei-da) | 期权 | | | -| 下单管理 | 资产配置 | | [**Synthetix**](https://synthetix.io/) | | | -| | | | [**dYdX**](https://dydx.exchange/) | | | - diff --git a/qian-xian/lv2-yin-hang/ge-ren-ye-wu/untitled-1.md b/qian-xian/lv2-yin-hang/ge-ren-ye-wu/untitled-1.md deleted file mode 100644 index 825288f1..00000000 --- a/qian-xian/lv2-yin-hang/ge-ren-ye-wu/untitled-1.md +++ /dev/null @@ -1,100 +0,0 @@ -# 比坊梦基金会——资产管理 - -@全体成员 比坊梦基金会提供资产管理服务。 - -## 1,我能做什么: - -帮您做资产管理。 - -## 2,我怎么做: - -把你的钱放在我的币安账号上,只投BTC/ETH和USDT/DAI 流动性挖矿 - -## 3,怎么担保: - -没有担保,一切靠我的个人信誉。 - -#### 和其他人不同的是,我会在基金停运或破产清算后,统一打款。 - -为了保留长期价值,基金停运或基金破产清算后,统一以BTC,ETH或DOGE结算。所以请提供1+3个地址,1个申购赎回USDT地址,3个冷的破产清算的BTC/ETH/DOGE地址。至于打什么币种,看你的资产规模,大额BTC,小额DOGE - -## 4,怎么分成: - -收费包括: - -**管理费**:总金额的年5%\(盈利收取,每四周计提,按当月\(每月以每四周计\)是否盈利判断,计入基金净值\)(每年按365天计算,每四周提取按10%/365\*7\*4计算) -+**收益激励:**正收益的10%\(盈利收取,每四周计提,按当月\(每月以每四周计\)基金净值是否增加判断,计入基金净值\) -+**申购费** -+**赎回费** - 申购费和赎回费在结构上和广发纳斯达克指数100A相同,在金额上是同期广发纳斯达克指数100A的2倍。 - 申购费和赎回费计入基金剩余财产,归基金持有人所有。 -+**BNB收益**,流动性挖矿挖出的BNB都归我作为手续费抵补,反正你也不差那点。 - -群主会将大部分收益重新投入基金,和你们是平等的,只会在份额数量上加入群主的份额数量而已,唯一不同的是,群主不对自己的份额收费。 - -## 5,多少钱起投: - -只接受USDT,你要是投BTC我不敢收,因为谁也没法跑赢BTC。 - -申购是USDT申购,赎回是USDT赎回,只支持币安转账支付。 - -用EXCEL表格记录,单次申购金额不少于20000 USDT,单笔赎回金额不少于2000 USDT。 - -金额精确到小数点后2位,份额精确到小数点后8位。 - -以记录到EXCEL表格上的数据为准。 - -## 6,策略里有没有做空: - -有做空,最大杠杆为1倍,使用BTCDOWN杠杆代币实现,不喜欢做空可以不投。 - -## 7,什么策略: - -策略是公开的,就是客观的卓尔金历法,加上一点主观判断,不过主观判断很少。 - -## 8,申购和赎回费怎么收取: - -参考广发纳斯达克指数A,是广发纳斯达克100指数A的两倍。期限和费率都参考广发纳斯达克指数A,不过不能保证,因为我可能睡懒觉。 - -基金认购期有费率优惠,管理费可以降到1%,不过收益分成还是10%。如果是申购期,管理费就是5%了,按照份额计算。 - -金额申购,份额赎回。管理费按份额计算,分成按照金额计算。 - -### 8.1,如何计算份额: - -最开始,募集期\(认购期\)2000USDT一份,募集期不参与BTC/ETH,收到钱全部投入USDT/DAI - -募集期结束之后,每周周日用总金额/份数计算基金净值,用申购金额除以基金净值得到基金份数。 - -## 9,你会用你自己的币安账号吗? : - -不会,我自己的币安账号是1207866211,而资产管理账号会使用这个3146741560,都是qq邮箱。 - -## 10,你怎么记录谁申购赎回了多少: - -申购是USDT申购,赎回是USDT赎回,只支持币安转账支付。 - -用EXCEL表格记录,单次申购不少于20000USDT,单笔赎回不少于2000USDT。金额精确到小数点后2位 。 - -## 11,年化,夏普,回撤这些数据? - -最大回撤可能达到50%,最大收益可能达到6400% - -## 12,基金开户需要提供几个地址?: - -### 12.1,申购赎回地址(你的币安地址,或者交易热钱包) - -### 12.2,基金停运或破产清算后,统一打款地址(必须是你的保留50年以上长期固定地址,如Trust Wallet地址)。 - -为了保留长期价值,基金停运或基金破产清算后,统一以BTC,ETH或DOGE结算。所以请提供1+3个地址,1个申购赎回USDT地址,3个冷的破产清算的BTC/ETH/DOGE地址。 - - - -| BTC/ETH | DeFi | BTC/ETH/DeFi | NFT | Metaverse/NFT | -| :--- | :--- | :--- | :--- | :--- | -| 币安流动性挖矿 | [DeFi++](https://app.zerion.io/invest/asset/DEFI%2B%2B-0x8d1ce361eb68e9e05573443c407d4a3bed23b033) | [BCP](https://app.zerion.io/invest/asset/BCP-0xe4f726adc8e89c6a6017f01eada77865db22da14) | [NFTX](https://app.zerion.io/invest/asset/NFTX-0x87d73e916d7057945c9bcd8cdd94e42a6f47f776) | [MVI](https://app.zerion.io/invest/asset/MVI-0x72e364f2abdc788b7e918bc238b21f109cd634d7) | -| [Uniswap WBTC/ETH Pool](https://app.zerion.io/invest/asset/UNI-V2-0xbb2b8038a1640196fbe3e38816f3e67cba72d940) | [DPI](https://app.zerion.io/invest/asset/DPI-0x1494ca1f11d487c2bbe4543e90080aeba4ba3c2b) | | [$PLAY](https://app.zerion.io/invest/asset/PLAY-0x33e18a092a93ff21ad04746c7da12e35d34dc7c4) | | -| | [YPIE](https://app.zerion.io/invest/asset/YPIE-0x17525e4f4af59fbc29551bc4ece6ab60ed49ce31) | | | | - - - diff --git a/qian-xian/lv2-yin-hang/untitled.md b/qian-xian/lv2-yin-hang/untitled.md deleted file mode 100644 index e31dbedd..00000000 --- a/qian-xian/lv2-yin-hang/untitled.md +++ /dev/null @@ -1,68 +0,0 @@ -# 企业业务 - -![](../../.gitbook/assets/yin-hang-pai-bian-.png) - -![](../../.gitbook/assets/yin-hang-deng-xiang-.png) - -{% hint style="danger" %} -正在建设中…… -{% endhint %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
投资银行离岸业务资产托管养老金金融公司理财融资租赁同业金融小企业金融企业服务
PieDAO跨链多重签名钱包 - 暂无去中心化基金抵押贷公链 - 联盟链私有链
-

DeFi Pulse

-

Index

-
资产映射私钥云保管<b></b>闪电贷
资产桥接BIP44协议<b></b>
- diff --git a/qian-xian/lv2-yin-hang/zi-ying-tou-zi.md b/qian-xian/lv2-yin-hang/zi-ying-tou-zi.md deleted file mode 100644 index 4e93742a..00000000 --- a/qian-xian/lv2-yin-hang/zi-ying-tou-zi.md +++ /dev/null @@ -1,34 +0,0 @@ -# 自营业务 - -![](../../.gitbook/assets/yin-hang-pai-bian-.png) - -![](../../.gitbook/assets/yin-hang-gao-shi-.png) - -{% hint style="danger" %} -正在建设中…… -{% endhint %} - -| 自建基金 | 机枪池 | 自建银行 | 自建货币 | -| :--- | :--- | :--- | :--- | -| [Balancer](https://balancer.fi/) | [yearn.finance](https://yearn.finance/) | [PoolDAI](https://zeframlou.github.io/pooldai/) | [TokenDIY-ETH](http://tokendiy.defiplot.com/#/) | -| [TokenSets](https://www.tokensets.com/) | [vesper.finance](https://vesper.finance/) | | [TokenDIY-BSC](http://bsc.tokendiy.defiplot.com/#/) | -| [cook.finance](https://www.cook.finance/) | [harvest.finance](https://harvest.finance/) | | | -| [dhedge.org](https://www.dhedge.org/) 🚩 | [valuedefi.io](https://valuedefi.io/) | | | -| [enzyme.finance](https://enzyme.finance/) | [defisaver](https://app.defisaver.com/) | | | -| [deepgo.io](https://deepgo.io/) | [rari.capital](https://rari.capital/) | | | -| | [DaoVentures](https://beta.daoventures.co/invest) | | | -| | [PeakDeFi](https://peakdefi.com/) | | | -| | [StakeDAO](https://stakedao.org/) | | | -| | [apy.finance](https://apy.finance/) | | | -| | \*\*\*\*[**dforce.network**](https://markets.dforce.network/)\*\*\*\* | | | -| | [mushrooms.finance](https://mushrooms.finance/) | | | -| | [yaxis.io](https://www.yaxis.io/) | | | -| | [YFII](https://dfi.money/#/) | | | -| | [stonedefi.io](https://www.stonedefi.io/) | | | -| | [nordfinance.io](https://app.nordfinance.io/) | | | -| | \*\*\*\*[**yield**](https://www.yield.app/)\*\*\*\* | | | - -> [https://www.chainnews.com/articles/635773702973.htm](https://www.chainnews.com/articles/635773702973.htm) - - - diff --git a/qian-xian/lv5-yuan-lao-yuan-liang-zi/README.md b/qian-xian/lv5-yuan-lao-yuan-liang-zi/README.md deleted file mode 100644 index 099a1ff6..00000000 --- a/qian-xian/lv5-yuan-lao-yuan-liang-zi/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# LV5-研究院 \(量子\) ☢️ - diff --git a/qian-xian/lv5-yuan-lao-yuan-liang-zi/yao-hei-liang-zi-tui-huo-fen-yuan.md b/qian-xian/lv5-yuan-lao-yuan-liang-zi/yao-hei-liang-zi-tui-huo-fen-yuan.md deleted file mode 100644 index dc231e26..00000000 --- a/qian-xian/lv5-yuan-lao-yuan-liang-zi/yao-hei-liang-zi-tui-huo-fen-yuan.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -description: BFM Unity - Quantum Annealing Institute ---- - -# 曜黑 · 量子退火研究院 - -## 比坊梦联合体 - 量子退火研究院 \| BFM Unity - Quantum Annealing Institute - -![](../../.gitbook/assets/bfm-unity-logo-square%20%282%29.png) - -![](../../.gitbook/assets/bfm-unity-logo-square-cn.png) - -{% page-ref page="../../he-xin/ruan-jian-bfm-on-python/chuang-xin-wei-lai-fa-zhan.md" %} - -[http://www.quantumforquants.org/](http://www.quantumforquants.org/) - -[https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9186612](https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9186612) - -[https://1qbit.com/whitepaper/arbitrage/](https://1qbit.com/whitepaper/arbitrage/) - -[https://www.meiss.com/columbia/en/teaching/1999/fall/B6015/download/lecture05/lec5.pdf](https://www.meiss.com/columbia/en/teaching/1999/fall/B6015/download/lecture05/lec5.pdf) - diff --git a/qian-xian/lv6-xing-mo-fang-fen-lei/README.md b/qian-xian/lv6-xing-mo-fang-fen-lei/README.md deleted file mode 100644 index 67c293fc..00000000 --- a/qian-xian/lv6-xing-mo-fang-fen-lei/README.md +++ /dev/null @@ -1,76 +0,0 @@ -# LV6-星魔方 \(分类\) 🎲 - -{% hint style="info" %} -## 问题描述 - -![](../../.gitbook/assets/a4%20%281%29.png) - -## [卓尔金历法](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da) - -我们之前所说的[卓尔金历法](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da),解决的是二维空间中的分类问题, - -使用的方法是逻辑回归LR,使用的激活函数是sigmoid函数 - -二维空间,指的是 MVRV的60日均线,S2F月预测价格/价格的60日均线, 这两个变量,经过规整化,90%概率分布于(-1,1)后,构成的空间, - -喂进去的训练数据是,经过数学处理,90%概率分布于(-1,2)的,基于(60天后的涨跌幅分布)的训练数据。 - -模型的预计输出结果是,(-1,2)的仓位控制策略模型, - -这个模型被称为:[卓尔金历法](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da),或,二向箔。 - -问题已经被Excel解决,但是不具有扩展性。 - -## [宇宙魔方](https://www.bfm-unity.com/qian-xian/yu-zhou-mo-fang-hui-gui-fen-xi) - -我们现在这个问题属于三维空间中的,分类问题, - -使用的方法是逻辑回归LR,使用的激活函数是sigmoid函数 - -三维空间,指的是 MVRV的60日均线,S2F月预测价格/价格的60日均线,NVT的60日均线, 这三个变量,经过规整化,90%概率分布于(-1,1)后,构成的空间, - -喂进去的训练数据是,经过数学处理,90%概率分布于(-1,2)的,基于(60天后的涨跌幅分布)的训练数据。 - -模型的预计输出结果是,(-1,2)的仓位控制策略模型, - -这个模型被称为:[宇宙魔方](https://www.bfm-unity.com/qian-xian/yu-zhou-mo-fang-hui-gui-fen-xi)(Tesseract) - -问题的模型已经建立了,解决起来就只是时间问题了。 - -## 使用工具 - -[Anaconda](https://www.anaconda.com/) \(Jupyter Notebook,Jupyter Lab,Numpy,Pandas,SciPy,TensorFlow,Keras\)还有matplotlib,差点忘了 - -[**TensorFlow**](https://www.tensorflow.org/) **\|** [**TensorBoard**](https://www.tensorflow.org/tensorboard?hl=zh-cn) **\|** [**TensorBoard.dev**](https://tensorboard.dev/) **\|** [**Google Colab**](https://colab.research.google.com/notebooks/intro.ipynb)\*\*\*\* - -[**https://playground.tensorflow.org/**](https://playground.tensorflow.org/)\*\*\*\* - -\*\*\*\*[**https://nbviewer.jupyter.org/**](https://nbviewer.jupyter.org/)\*\*\*\* - -### 数据来源 - -[MVRV](https://www.qkl123.com/data/mvrv/btc) \| [S2F](https://www.qkl123.com/data/s2f/btc) \| [NVT](https://www.qkl123.com/data/nvt/btc) -{% endhint %} - -![](../../.gitbook/assets/a4_3.png) - - - - - -![](../../.gitbook/assets/a3.png) - -## 课程学习 - -* [【美国微软大神的数据分析课】Pandas vs Excel](https://www.bilibili.com/video/BV1rt411y7PY) 🚩 -* [python3带你玩转excel--工作党福利--(评论区附有课件和代码)](https://www.bilibili.com/video/BV1W7411G7wP)🚩 -* [如何系统地学习Python 中 matplotlib, numpy, scipy, pandas?](https://www.zhihu.com/question/37180159/answer/304720890)🚩 -* \*\*\*\*[**机器学习之数据的偏态分布和数据的标准化**](https://blog.csdn.net/m0_37870649/article/details/80638179)**🚩** -* [人工智能实践:Tensorflow笔记](https://www.icourse163.org/course/PKU-1002536002?tid=1452937471)🚩 - -## 已经实现部分代码并开源 - -{% embed url="https://github.com/guhhhhaa/TensorAct-of-Stars" %} - -{% embed url="https://nbviewer.jupyter.org/github/guhhhhaa/TensorAct-of-Stars/blob/main/TensorAct1.0.ipynb" %} - diff --git a/qian-xian/lv6-xing-mo-fang-fen-lei/ren-gong-zhi-neng-de-pen-jing-xiang.md b/qian-xian/lv6-xing-mo-fang-fen-lei/ren-gong-zhi-neng-de-pen-jing-xiang.md deleted file mode 100644 index 78645b8e..00000000 --- a/qian-xian/lv6-xing-mo-fang-fen-lei/ren-gong-zhi-neng-de-pen-jing-xiang.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -description: 人工智能的盆景箱 ---- - -# 人工智能-实验 - diff --git a/qian-xian/lv6-xing-mo-fang-fen-lei/shi-yan-shi-zhan-shi-gui.md b/qian-xian/lv6-xing-mo-fang-fen-lei/shi-yan-shi-zhan-shi-gui.md deleted file mode 100644 index e70b9195..00000000 --- a/qian-xian/lv6-xing-mo-fang-fen-lei/shi-yan-shi-zhan-shi-gui.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -description: 实验室展示柜 ---- - -# 数据分析-精炼 - -## 问题描述 - -![](../../.gitbook/assets/a4%20%281%29.png) - -![](../../.gitbook/assets/a4_3.png) - -![](../../.gitbook/assets/a3.png) - -## [卓尔金历法](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da) - -我们之前所说的[卓尔金历法](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da),解决的是二维空间中的分类问题, - -使用的方法是逻辑回归LR,使用的激活函数是sigmoid函数 - -二维空间,指的是 MVRV的60日均线,S2F月预测价格/价格的60日均线, 这两个变量,经过规整化,90%概率分布于(-1,1)后,构成的空间, - -喂进去的训练数据是,经过数学处理,90%概率分布于(-1,2)的,基于(60天后的涨跌幅分布)的训练数据。 - -模型的预计输出结果是,(-1,2)的仓位控制策略模型, - -这个模型被称为:[卓尔金历法](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da),或,二向箔。 - -问题已经被Excel解决,但是不具有扩展性。 - -## [宇宙魔方](https://www.bfm-unity.com/qian-xian/yu-zhou-mo-fang-hui-gui-fen-xi) - -我们现在这个问题属于三维空间中的,分类问题, - -使用的方法是逻辑回归LR,使用的激活函数是sigmoid函数 - -三维空间,指的是 MVRV的60日均线,S2F月预测价格/价格的60日均线,NVT的60日均线,这三个变量,经过规整化,90%概率分布于(-1,1)后,构成的空间, - -喂进去的训练数据是,经过数学处理,90%概率分布于(-1,2)的,基于(60天后的涨跌幅分布)的训练数据。 - -模型的预计输出结果是,(-1,2)的仓位控制策略模型, - -这个模型被称为:[宇宙魔方](https://www.bfm-unity.com/qian-xian/yu-zhou-mo-fang-hui-gui-fen-xi)(Tesseract) - -问题的模型已经建立了,解决起来就只是时间问题了。 - -## 使用工具 - -[Anaconda](https://www.anaconda.com/) \(Jupyter Notebook,Jupyter Lab,Numpy,Pandas,SciPy,TensorFlow,Keras\)还有matplotlib,差点忘了 - -[**TensorFlow**](https://www.tensorflow.org/) **\|** [**TensorBoard**](https://www.tensorflow.org/tensorboard?hl=zh-cn) **\|** [**TensorBoard.dev**](https://tensorboard.dev/) **\|** [**Google Colab**](https://colab.research.google.com/notebooks/intro.ipynb)\*\*\*\* - -[**https://playground.tensorflow.org/**](https://playground.tensorflow.org/)\*\*\*\* - -\*\*\*\*[**https://nbviewer.jupyter.org/**](https://nbviewer.jupyter.org/)\*\*\*\* - -### 数据来源 - -[MVRV](https://www.qkl123.com/data/mvrv/btc) \| [S2F](https://www.qkl123.com/data/s2f/btc) \| [NVT](https://www.qkl123.com/data/nvt/btc) - -## 课程学习 - -* [【美国微软大神的数据分析课】Pandas vs Excel](https://www.bilibili.com/video/BV1rt411y7PY) 🚩 -* [python3带你玩转excel--工作党福利--(评论区附有课件和代码)](https://www.bilibili.com/video/BV1W7411G7wP)🚩 -* [如何系统地学习Python 中 matplotlib, numpy, scipy, pandas?](https://www.zhihu.com/question/37180159/answer/304720890)🚩 -* \*\*\*\*[**机器学习之数据的偏态分布和数据的标准化**](https://blog.csdn.net/m0_37870649/article/details/80638179)**🚩** -* [人工智能实践:Tensorflow笔记](https://www.icourse163.org/course/PKU-1002536002?tid=1452937471)🚩 - -## 已经实现部分代码并开源 - -{% embed url="https://github.com/guhhhhaa/TensorAct-of-Stars" %} - -{% embed url="https://nbviewer.jupyter.org/github/guhhhhaa/TensorAct-of-Stars/blob/main/TensorAct1.0.ipynb" %} - diff --git a/qian-xian/lv6-xing-mo-fang-fen-lei/yu-zhou-mo-fang-hui-gui-fen-xi.md b/qian-xian/lv6-xing-mo-fang-fen-lei/yu-zhou-mo-fang-hui-gui-fen-xi.md deleted file mode 100644 index 079d95da..00000000 --- a/qian-xian/lv6-xing-mo-fang-fen-lei/yu-zhou-mo-fang-hui-gui-fen-xi.md +++ /dev/null @@ -1,470 +0,0 @@ ---- -description: 混乱的实验室:Te-s-r-act,是 TensorAct,还是 Tesseract ? ---- - -# 数据分析-实验 - -## Te-s-r-act,是 TensorAct,还是Tesseract ? - -{% page-ref page="../management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-5-shen-jing-wang-luo.md" %} - -{% hint style="info" %} -## 问题描述 - -![](../../.gitbook/assets/a4%20%281%29.png) - -## - -## 使用工具 - -[Anaconda](https://www.anaconda.com/) \(Jupyter Notebook,Jupyter Lab,Numpy,Pandas,SciPy,TensorFlow,Keras\)还有matplotlib,差点忘了 - -[**TensorFlow**](https://www.tensorflow.org/) **\|** [**TensorBoard**](https://www.tensorflow.org/tensorboard?hl=zh-cn) **\|** [**TensorBoard.dev**](https://tensorboard.dev/) **\|** [**Google Colab**](https://colab.research.google.com/notebooks/intro.ipynb)\*\*\*\* - -[**https://playground.tensorflow.org/**](https://playground.tensorflow.org/)\*\*\*\* - -\*\*\*\*[**https://nbviewer.jupyter.org/**](https://nbviewer.jupyter.org/)\*\*\*\* - -### 数据来源 - -[MVRV](https://www.qkl123.com/data/mvrv/btc) \| [S2F](https://www.qkl123.com/data/s2f/btc) \| [NVT](https://www.qkl123.com/data/nvt/btc) -{% endhint %} - -![](../../.gitbook/assets/a4_3.png) - -[22 款神经网络的设计和可视化工具](https://www.huaweicloud.com/articles/d90130bfd852a55e505155e381ebfab1.html) - -[Mac版Excel如何添加数据分析功能?](https://answers.microsoft.com/zh-hans/msoffice/forum/all/mac%E7%89%88excel%E5%A6%82%E4%BD%95%E6%B7%BB/4f9c7fcf-ba8a-4f1a-8f00-bc35a43cb480) - -[机器学习-回归问题\(Regression\)](https://zhuanlan.zhihu.com/p/127972563) - -[标准化、归一化、正规化](https://zhuanlan.zhihu.com/p/73080065) - -[一文读懂机器学习分类算法(附图文详解)](https://zhuanlan.zhihu.com/p/82114104) - -[Q&A: 机器学习与金融行业](http://www.fintechgl.com/articles/59) - -## 开发环境 - -![](../../.gitbook/assets/ping-mu-kuai-zhao-20210709-shang-wu-7.54.06.png) - -[https://www.anaconda.com/](https://www.anaconda.com/) - -[https://www.anaconda.com/pycharm](https://www.anaconda.com/pycharm) - -![](../../.gitbook/assets/qq20210625-2.jpg) - -**pandas**是一个数据处理的包,本身提供了许多读取文件的函数,像read\_csv(读取csv文件),read\_excel(读取excel文件)等,只需一行代码就能实现文件的读取。 - -## 规整化算法 - -第一步:去指数转线性,y = LN\(x/x的几何平均数\), -第二步:Logistic 模式 ,y = 1/\(1+e^\(-x\)\) -第三步:z-score 标准化,y=\(x-μ\)/σ - -只要经过这三步处理,不管之前是怎样分布的数据,都会转化为标准正态分布。 - -## 研发进度 - -### 2021.7.9 - -安装了Anaconda,借助Anaconda 安装了 -Jupyter Notebook,Jupyter Lab,Numpy,Pandas,SciPy,TensorFlow,Keras -还有matplotlib,差点忘了 - -课程?[在看了在看了](https://www.bilibili.com/video/BV1rz4y117p1)。 - -```python -from tensorflow import keras -import numpy as np -import pandas as pd -import matplotlib.pyplot as plt -``` - -找到了 [TensorFlow学习笔记](https://www.zhihu.com/column/c_1377756991213998081) ,发现逻辑回归分类问题应该用**交叉熵损失函数,**而不是**均方误差MSE损失函数** - -\*\*\*\*[交叉熵](https://baike.baidu.com/item/%E4%BA%A4%E5%8F%89%E7%86%B5/8983241) \| ****[损失函数](https://baike.baidu.com/item/%E6%8D%9F%E5%A4%B1%E5%87%BD%E6%95%B0/1783236) \| [归一化指数函数](https://baike.baidu.com/item/%E5%BD%92%E4%B8%80%E5%8C%96%E6%8C%87%E6%95%B0%E5%87%BD%E6%95%B0)\(Softmax函数\) - -[matplotlib-tutorial](https://www.runoob.com/w3cnote/matplotlib-tutorial.html) 学会复制粘贴了,这是一种进步 - -[python-tutorial](https://www.runoob.com/python/python-tutorial.html) 找到了python基础教程,重新回去学python - -不学了,要吐了 - -再想想 - -找到了一本书:利用Python进行数据分析:[![](https://gblobscdn.gitbook.com/spaces%2F-LF_s_ql-GHXb31QEE8_%2Favatar.png?alt=media)README](https://seancheney.gitbook.io/python-for-data-analysis-2nd/) - -找到了英文版 - -[https://github.com/wesm/pydata-book](https://github.com/wesm/pydata-book) - -找到了中文版 - -[https://github.com/BrambleXu/pydata-notebook](https://github.com/BrambleXu/pydata-notebook) - -* [Chapter 4: NumPy Basics: Arrays and Vectorized Computation(NumPy基础:数组和向量化计算)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/tree/master/Chapter-04/) - * [4.1 The NumPy ndarray: A Multidimensional Array Object(ndarray: 多维数组对象\)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-04/4.1%20The%20NumPy%20ndarray%EF%BC%88%E5%A4%9A%E7%BB%B4%E6%95%B0%E7%BB%84%E5%AF%B9%E8%B1%A1%EF%BC%89.ipynb) - * [4.2 Universal Functions: Fast Element-Wise Array Functions(通用函数:快速点对点数组函数)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-04/4.2%20Universal%20Functions%20%28%E9%80%9A%E7%94%A8%E5%87%BD%E6%95%B0%29.ipynb) - * [4.3 Array-Oriented Programming with Arrays(数组导向编程)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-04/4.3%20Array-Oriented%20Programming%20with%20Arrays%EF%BC%88%E6%95%B0%E7%BB%84%E5%AF%BC%E5%90%91%E7%BC%96%E7%A8%8B%EF%BC%89.ipynb) -* [Chapter 5: Getting Started with pandas(开始使用pandas)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/tree/master/Chapter-05/) - * [5.1 Introduction to pandas Data Structures(pandas的数据结构)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-05/5.1%20Introduction%20to%20pandas%20Data%20Structures%EF%BC%88pandas%E7%9A%84%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%EF%BC%89.ipynb) - * [5.2 Essential Functionality(主要功能)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-05/5.2%20Essential%20Functionality%EF%BC%88%E4%B8%BB%E8%A6%81%E5%8A%9F%E8%83%BD%EF%BC%89.ipynb) - * [5.3 Summarizing and Computing Descriptive Statistics(汇总和描述性统计)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-05/5.3%20Summarizing%20and%20Computing%20Descriptive%20Statistics%EF%BC%88%E6%80%BB%E7%BB%93%E5%92%8C%E6%8F%8F%E8%BF%B0%E6%80%A7%E7%BB%9F%E8%AE%A1%EF%BC%89.ipynb) -* [Chapter 7: Data Cleaning and Preparation(数据清洗和准备)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/tree/master/Chapter-07/) - * [7.1 Handling Missing Data(处理缺失数据)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-07/7.1%20Handling%20Missing%20Data%EF%BC%88%E5%A4%84%E7%90%86%E7%BC%BA%E5%A4%B1%E6%95%B0%E6%8D%AE%EF%BC%89.ipynb) - * [7.2 Data Transformation(数据变换)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-07/7.2%20Data%20Transformation%EF%BC%88%E6%95%B0%E6%8D%AE%E5%8F%98%E6%8D%A2%EF%BC%89.ipynb) - * [7.3 String Manipulation(字符串处理)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-07/7.3%20String%20Manipulation%EF%BC%88%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%A4%84%E7%90%86%EF%BC%89.ipynb) -* [Chapter 11: Time Series(时间序列)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/tree/master/Chapter-11/) - * [11.1 Date and Time Data Types and Tools(日期和时间数据类型及其工具)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-11/11.1%20Date%20and%20Time%20Data%20Types%20and%20Tools%EF%BC%88%E6%97%A5%E6%9C%9F%E5%92%8C%E6%97%B6%E9%97%B4%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E5%8F%8A%E5%85%B6%E5%B7%A5%E5%85%B7%EF%BC%89.ipynb) - * [11.2 Time Series Basics(时间序列基础)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-11/11.2%20Time%20Series%20Basics%EF%BC%88%E6%97%B6%E9%97%B4%E5%BA%8F%E5%88%97%E5%9F%BA%E7%A1%80%EF%BC%89.ipynb) - * [11.3 Date Ranges, Frequencies, and Shifting(日期范围,频度,和位移)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-11/11.3%20Date%20Ranges%2C%20Frequencies%2C%20and%20Shifting%EF%BC%88%E6%97%A5%E6%9C%9F%E8%8C%83%E5%9B%B4%EF%BC%8C%E9%A2%91%E5%BA%A6%EF%BC%8C%E5%92%8C%E4%BD%8D%E7%A7%BB%EF%BC%89.ipynb) -* [Chapter 12: Advanced pandas(高级pandas用法)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/tree/master/Chapter-12/) - * [12.1 Categorical Data(类别数据)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-12/12.1%20Categorical%20Data%EF%BC%88%E7%B1%BB%E5%88%AB%E6%95%B0%E6%8D%AE%EF%BC%89.ipynb) -* [Chapter 14: Data Analysis Examples(数据分析实例)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/tree/master/Chapter-14/) - * [14.1 USA.gov Data from Bitly(USA.gov数据集)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-14/14.1%20USA.gov%20Data%20from%20Bitly%EF%BC%88USA.gov%E6%95%B0%E6%8D%AE%E9%9B%86%EF%BC%89.ipynb) - * [14.2 MovieLens 1M Dataset(MovieLens 1M数据集)](http://nbviewer.jupyter.org/github/LearnXu/pydata-notebook/blob/master/Chapter-14/14.2%20MovieLens%201M%20Dataset%EF%BC%88MovieLens%201M%E6%95%B0%E6%8D%AE%E9%9B%86%EF%BC%89.ipynb) - * [14.3 US Baby Names 1880–2010(1880年至2010年美国婴儿姓名](http://nbviewer.jupyter.org/github/BrambleXu/pydata-notebook/blob/master/Chapter-14/14.3%20US%20Baby%20Names%201880%E2%80%932010%EF%BC%881880%E5%B9%B4%E8%87%B32010%E5%B9%B4%E7%BE%8E%E5%9B%BD%E5%A9%B4%E5%84%BF%E5%A7%93%E5%90%8D%EF%BC%89.ipynb)\*\*\*\* - -**pandas**是一个数据处理的包,本身提供了许多读取文件的函数,像read\_csv(读取csv文件),read\_excel(读取excel文件)等,只需一行代码就能实现文件的读取。 - -### 2021.7.10 - -[python pandas read\_html快读读取中国商情网的A股,港股以及新三板股票](https://www.bilibili.com/video/BV1aQ4y1A7fh) - -[pandas.read\_csv 详细介绍](https://www.gairuo.com/p/pandas-read-csv) - -[pandas.read\_excel 详细介绍](https://www.gairuo.com/p/pandas-read-excel) - -### 教程 - -[30分钟带你入门数据分析工具 Pandas](https://oicebot.github.io/2018/09/05/30-mins-into-pandas-for-data-science.html) - -[十分钟入门 Pandas](https://www.pypandas.cn/docs/getting_started/10min.html) 🚩 - -### 读取写入数据 - -* CSV - * [写入 CSV 文件 \(opens new window\)](https://pandas.pydata.org/pandas-docs/stable/user_guide/io.html#io-store-in-csv)。 - -```text -In [143]: df.to_csv('foo.csv') -``` - -* * 读取 CSV 文件数据: - -```text -In [144]: pd.read_csv('foo.csv') -``` - -* Excel - * 详见 [Excel \(opens new window\)](https://pandas.pydata.org/pandas-docs/stable/user_guide/io.html#io-excel)文档。 - * 写入 Excel 文件: - -```text -In [147]: df.to_excel('foo.xlsx', sheet_name='Sheet1') -``` - -* * 读取 Excel 文件: - -```text -In [148]: pd.read_excel('foo.xlsx', 'Sheet1', index_col=None, na_values=['NA']) -``` - - - -### Pandas 数据结构 - -#### 1. Series - -Series 是一种一维数组,和 NumPy 里的数组很相似。事实上,Series 基本上就是基于 NumPy 的数组对象来的。和 NumPy 的数组不同,Series 能为数据自定义标签,也就是索引(index),然后通过索引来访问数组中的数据。 - -```text -import numpy as np -import pandas as pd -``` - -创建一个 Series 的基本语法如下: - -```text -my_series = pd.Series(data, index) -``` - -#### 2. DataFrames - -Pandas 的 DataFrame(数据表)是一种 2 维数据结构,数据以表格的形式存储,分成若干行和列。通过 DataFrame,你能很方便地处理数据。常见的操作比如选取、替换行或列的数据,还能重组数据表、修改索引、多重筛选等。 - -构建一个 DataFrame 对象的基本语法如下: - -```text -pd.DataFrame(data,index) -``` - -```text -df = pd.DataFrame(data,index) -``` - -### 可视化 - -详见[可视化 \(opens new window\)](https://pandas.pydata.org/pandas-docs/stable/user_guide/visualization.html#visualization)文档。 - -```text -In [135]: ts = pd.Series(np.random.randn(1000), - .....: index=pd.date_range('1/1/2000', periods=1000)) - .....: - -In [136]: ts = ts.cumsum() - -In [137]: ts.plot() -Out[137]: -``` - -![可视化](https://static.pypandas.cn/public/static/images/series_plot_basic.png) - -DataFrame 的 [plot\(\) \(opens new window\)](https://pandas.pydata.org/pandas-docs/stable/user_guide/visualization.html#visualization)方法可以快速绘制所有带标签的列: - -```text -In [138]: df = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, - .....: columns=['A', 'B', 'C', 'D']) - .....: - -In [139]: df = df.cumsum() - -In [140]: plt.figure() -Out[140]:
- -In [141]: df.plot() -Out[141]: - -In [142]: plt.legend(loc='best') -Out[142]: -``` - -![可视化2](https://static.pypandas.cn/public/static/images/frame_plot_basic.png) - -## [【美国微软大神的数据分析课】Pandas vs Excel](https://www.bilibili.com/video/BV1rt411y7PY) 🚩 - -## [python3带你玩转excel--工作党福利--(评论区附有课件和代码)](https://www.bilibili.com/video/BV1W7411G7wP)🚩 - -## [Excel动态仪表盘制作流程,非常详细【完结】](https://www.bilibili.com/video/BV1ov41147UG)🚩 - -## [python实现统计学包Scipy所有语法](https://www.bilibili.com/read/cv12026943) 🚩 - -## [python 正态分布\_python绘制正态分布及三大抽样分布的概率密度图像](https://blog.csdn.net/weixin_39725403/article/details/111293843) - -## [太玄的工具库0X04 NumPy SciPy](https://www.bilibili.com/read/cv115510) 🚩 - -## [【2021新版】Python入门编程100例,用小例子提升实战技能!](https://www.bilibili.com/video/BV1of4y1a7pz) - -## [python3带你玩转excel--工作党福利--(评论区附有课件和代码)](https://www.bilibili.com/video/BV1W7411G7wP) - -| | | | -| :--- | :--- | :--- | -| numpy | np.array \# ndarray | NumPy 提供了很多[统计函数](https://www.runoob.com/numpy/numpy-statistical-functions.html),用于从数组中查找最小元素,最大元素,百分位标准差和方差等。 | -| scipy | | scipy.stats | -| pandas | Series,DataFrame | excel,csv | -| matplotlib | | | -| tensorflow | | keras | -| | | | -| IPython | | | -| Spyder | | | -| Jupyter Notebook/Lab | | | -| PyCharm | | | - -[SciPy - Stats\_学习Scipy\|WIKI教程](https://iowiki.com/scipy/scipy_stats.html) - -[Scipy统计函数- Scipy教程™ - 易百教程](https://www.yiibai.com/scipy/scipy_stats.html) 🚩 - -[NumPy Ndarray 对象\| 菜鸟教程](https://www.runoob.com/numpy/numpy-ndarray-object.html) - -[Scipy统计函数- Scipy教程教学\| 程式教程网- 亿聚网](https://www.1ju.org/scipy/scipy-stats) - -## [1.5 ScSciPy Lecture Notes 中文版 🚩](https://wizardforcel.gitbooks.io/scipy-lecture-notes/content/4.html) - -* [scipy:高级科学计算\| SciPy Lecture Notes 中文版 🚩](https://wizardforcel.gitbooks.io/scipy-lecture-notes/content/4.html) - -## 1.5 Scipy:高级科学计算 - -作者:Adrien Chauve, Andre Espaze, Emmanuelle Gouillart, Gaël Varoquaux, Ralf Gommers - -**Scipy** - -`scipy`包包含许多专注于科学计算中的常见问题的工具箱。它的子模块对应于不同的应用,比如插值、积分、优化、图像处理、统计和特殊功能等。 - -`scipy`可以与其他标准科学计算包相对比,比如GSL \(C和C++的GNU科学计算包\), 或者Matlab的工具箱。`scipy`是Python中科学程序的核心程序包;这意味着有效的操作`numpy`数组,因此,numpy和scipy可以一起工作。 - -在实现一个程序前,有必要确认一下需要的数据处理时候已经在scipy中实现。作为非专业程序员,科学家通常倾向于**重新发明轮子**,这产生了小玩具、不优化、很难分享以及不可以维护的代码。相反,scipy的程序是优化并且测试过的,因此应该尽可能使用。 - -**警告** 这个教程根本不是数值计算的介绍。因为列举scipy的不同子模块和功能将会是非常枯燥的,相反我们将聚焦于列出一些例子,给出如何用scipy进行科学计算的大概思路。 - -scipy是由针对特定任务的子模块组成的: - -| | | -| :--- | :--- | -| [`scipy.cluster`](http://docs.scipy.org/doc/scipy/reference/cluster.html#scipy.cluster) | 向量计算 / Kmeans | -| [`scipy.constants`](http://docs.scipy.org/doc/scipy/reference/constants.html#scipy.constants) | 物理和数学常量 | -| [`scipy.fftpack`](http://docs.scipy.org/doc/scipy/reference/fftpack.html#scipy.fftpack) | 傅里叶变换 | -| [`scipy.integrate`](http://docs.scipy.org/doc/scipy/reference/integrate.html#scipy.integrate) | 积分程序 | -| [`scipy.interpolate`](http://docs.scipy.org/doc/scipy/reference/interpolate.html#scipy.interpolate) | 插值 | -| [`scipy.io`](http://docs.scipy.org/doc/scipy/reference/io.html#scipy.io) | 数据输入和输出 | -| [`scipy.linalg`](http://docs.scipy.org/doc/scipy/reference/linalg.html#scipy.linalg) | 线性代数程序 | -| [`scipy.ndimage`](http://docs.scipy.org/doc/scipy/reference/ndimage.html#scipy.ndimage) | n-维图像包 | -| [`scipy.odr`](http://docs.scipy.org/doc/scipy/reference/odr.html#scipy.odr) | 正交距离回归 | -| [`scipy.optimize`](http://docs.scipy.org/doc/scipy/reference/optimize.html#scipy.optimize) | 优化 | -| [`scipy.signal`](http://docs.scipy.org/doc/scipy/reference/signal.html#scipy.signal) | 信号处理 | -| [`scipy.sparse`](http://docs.scipy.org/doc/scipy/reference/sparse.html#scipy.sparse) | 稀疏矩阵 | -| [`scipy.spatial`](http://docs.scipy.org/doc/scipy/reference/spatial.html#scipy.spatial) | 空间数据结构和算法 | -| [`scipy.special`](http://docs.scipy.org/doc/scipy/reference/special.html#scipy.special) | 一些特殊数学函数 | -| [`scipy.stats`](http://docs.scipy.org/doc/scipy/reference/stats.html#scipy.stats) | 统计 | - -他们全都依赖于[numpy](http://docs.scipy.org/doc/numpy/reference/index.html#numpy), 但是大多数是彼此独立的。导入Numpy和Scipy的标准方式: - -In \[1\]: - -```text -import numpy as np -from scipy import stats # 其他的子模块类似 -``` - -`scipy`的主要命名空间通常包含的函数其实是numpy(试一下`scipy.cos`其实是`np.cos`\) 。这些函数的暴露只是因为历史原因;通常没有必要在你的代码中使用`import scipy`。 - -![](../../.gitbook/assets/a3.png) - -## [如何系统地学习Python 中 matplotlib, numpy, scipy, pandas?](https://www.zhihu.com/question/37180159/answer/304720890) - -{% hint style="info" %} -* [【美国微软大神的数据分析课】Pandas vs Excel](https://www.bilibili.com/video/BV1rt411y7PY) 🚩 -* [python3带你玩转excel--工作党福利--(评论区附有课件和代码)](https://www.bilibili.com/video/BV1W7411G7wP)🚩 -* [如何系统地学习Python 中 matplotlib, numpy, scipy, pandas?](https://www.zhihu.com/question/37180159/answer/304720890)🚩 -* \*\*\*\*[**机器学习之数据的偏态分布和数据的标准化**](https://blog.csdn.net/m0_37870649/article/details/80638179)**🚩** -* [人工智能实践:Tensorflow笔记](https://www.icourse163.org/course/PKU-1002536002?tid=1452937471)🚩 -{% endhint %} - -## 2021.7.13 - -### columns 列 - -### 连接 pandas.concat\(\) - -pandas.concat\(\)通常用来连接DataFrame对象。 -[pandas中concat\(\)的用法](https://zhuanlan.zhihu.com/p/69224745) - -#### .reset\_index\(drop=True\) - -### 索引 pandas \(loc、iloc、ix\) - -[pandas \(loc、iloc、ix\)的区别](https://www.cnblogs.com/keye/p/7825280.html) -**loc:**通过行标签索引数据 -**iloc:**通过行号索引行数据 -**ix:**通过行标签或行号索引数据(基于loc和iloc的混合) - -### 删除 pandas.drop\(columns=\_\_\_\_\_\) - -### 插入 pandas.insert\(1,columns=\_\_\_\_\_,value=\_\_\_\_\_\) - -### 改名 pandas.rename\(字典\) - -### line 行 - -### 追加.append - -#### .reset\_index\(drop=True\) - -### .at - -### 删除行.index - - - -### .concat\(\),.iloc\(\),.drop\(\),.insert\(\),.rename\(\),.append\(\),.reset\_index\(\),.at\(\),.index\(\) - -[原创 PANDAS 数据合并与重塑(concat篇)](https://blog.csdn.net/stevenkwong/article/details/52528616) - -[原创 PANDAS 数据合并与重塑(join/merge篇)](https://blog.csdn.net/stevenkwong/article/details/52540605) - -[原创 pandas笔记 基础/groupby/concat/merge/join](https://blog.csdn.net/sinat_27400761/article/details/79647448) - -[原创 Series 创建、索引、删除、数学运算 归纳总结](https://blog.csdn.net/Krinys/article/details/105668376) - - - -[数据分析之Pandas(四)DataFrame运算](https://blog.csdn.net/qq_42642945/article/details/88636151) - -[pandas笔记(7)DataFrame数学运算](https://blog.csdn.net/weixin_44830542/article/details/108248919) - -## 三维散点图 - -[Python绘制三维散点图](https://blog.csdn.net/qq_29066329/article/details/89916973) - -[matplotlib绘制三维散点图](https://blog.csdn.net/qq_41149269/article/details/81774026) - -## 二维散点图(高级) - -[厉害了,Matplotlib还能这样画散点图!](https://cloud.tencent.com/developer/article/1708487) - -## 简单图形绘制 - -[Python Pandas 图形绘制(一):折线图,柱状图](https://blog.csdn.net/qq_42067550/article/details/106366432) - -[matplotlib绘制直方图、条形图和饼图](https://blog.csdn.net/hohaizx/article/details/79101322) - - - -[68–95–99.7原则](https://zh.wikipedia.org/wiki/68%E2%80%9395%E2%80%9399.7%E5%8E%9F%E5%89%87) - -[Python求均值,方差,标准差](https://blog.csdn.net/qq_38826019/article/details/82875407) - - - -[pandas数据合并之一文弄懂pd.concat()](https://zhuanlan.zhihu.com/p/132593960) - -[pandas-DataFrame列移动](https://blog.csdn.net/sinat_41701878/article/details/80945861) - -[Python-pandas的fillna\(\)方法-填充空值](https://blog.csdn.net/qq_17753903/article/details/89892631) - - - -[Pandas中把dataframe和np.array的相互转换](https://blog.csdn.net/weixin_39223665/article/details/79935467) - -[将Pandas中的DataFrame转换成Numpy中数组](https://blog.csdn.net/weixin_42263508/article/details/90487483) - -[pandas将字段中的字符类型转化为时间类型,并设置为索引](https://blog.csdn.net/onemorepoint/article/details/86174624) - -[pandas设置index索引的标签名](https://blog.csdn.net/RogerFedereYY/article/details/109121721) - - - -[高效的5个pandas函数,你都用过吗?](https://zhuanlan.zhihu.com/p/258699675) - -## [Pandas 窗口函数](https://geek-docs.com/pandas/pandas-tutorials/pandas-window-function.html) - -[PythonPandas-根据给定的窗口并从某个值开始计算某一列的和。](https://cloud.tencent.com/developer/ask/189430) - -[如何更快计算Dataframe里某一列中,上下两值的差值](https://blog.csdn.net/C10997/article/details/109526567) - -[pandas应用——滚动计算、筛选、判断空值、列移动、行列删除](https://blog.csdn.net/lamusique/article/details/95099965) - - - -[python数据处理——同一行或同一列的错位相减法](https://blog.csdn.net/m0_37876745/article/details/85163883) - -[【python】pandas库常用函数之shift详解](https://blog.csdn.net/brucewong0516/article/details/80157639) - - - -[pandas选择单元格,选择行列](https://www.cnblogs.com/guxh/p/8627251.html) 🚩 - -[数据可视化—使用matplotlib绘制常用类型图表](https://zhuanlan.zhihu.com/p/357477796) - -[matplotlib画3D图形时设置z轴尺寸](https://blog.csdn.net/qq_41009742/article/details/106292396) - - - -[np.log 和math.log的底数是什么,默认都是e](https://www.cnblogs.com/cgmcoding/p/13640281.html) - -## 已经实现部分代码并开源 - -{% embed url="https://github.com/guhhhhaa/TensorAct-of-Stars" %} - -{% embed url="https://nbviewer.jupyter.org/github/guhhhhaa/TensorAct-of-Stars/blob/main/TensorAct1.0.ipynb" %} - diff --git a/qian-xian/management-cockpit-operation/README.md b/qian-xian/management-cockpit-operation/README.md deleted file mode 100644 index fc51bb5c..00000000 --- a/qian-xian/management-cockpit-operation/README.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -description: Management Cockpit (Operation) ---- - -# LV1-驾驶舱 \(运行\) 🚜 - -> 驾驶舱专注于已经成为共识和基础设施的的投资组合项目的运行。 -> -> 在这里,我们极力简化操作流程,以适合最小可运行投资系统,方便用户进行高效操作。 - -{% page-ref page="../command-room-discovery/" %} - -![驾驶舱(运行)](../../.gitbook/assets/src-http___i-3.yiwan.com_2019_6_25_6ff39329-443c-45c6-b034-9940ee759162.jpg_width-1820-and-height-1024-and-refer-http___i-3.yiwan.jpeg) - -## 基本驾驶模块 - -* [**币安**](https://www.binancezh.co/cn/register?ref=EQ89E7WI)**\(此链接返现比例: 我10%, 你10%**\)\([**流动性挖矿**](https://www.binance.com/zh-CN/swap/liquidity)**)** -* \*\*\*\*[**派网 - Pionex**](https://www.pionex.cc/zh-CN/sign/ref/NxwM4W0S)\*\*\*\* -* [**币优**](https://www.biyou.tech/),[**Trust Wallet**](https://trustwallet.com/),[**Blockchain.com**](https://www.blockchain.com/wallet)\*\*\*\* - -{% page-ref page="si-yao-yun-bao-guan.md" %} - -## 资产配置 - -{% page-ref page="zi-chan-pei-zhi/" %} - -## 核心显示界面 - -{% hint style="info" %} -* \*\*\*\*[**卓尔金历法 🕙**](https://www.bfm-unity.com/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da) - - [卓尔金+哈布飞船5.02](https://share.weiyun.com/7rzN1OXD) - **** - -* [**MVRV**](https://www.blockchain.com/charts/mvrv)[(](https://www.jianshu.com/p/f6992e6c6ea6)[Python获取MVRV](https://coinmetrics.io/newdata/split/btc_CapMVRVCur.txt),[参考链接](https://www.jianshu.com/p/f6992e6c6ea6)) \| [**S2F**](https://www.qkl123.com/data/s2f/btc) ****\| [**HODL Waves**](https://unchained-capital.com/hodlwaves/) **\|** [减半时间](https://www.qkl123.com/data/halve/btc) \| [CFTC持仓报告](https://www.tradingster.com/cot/futures/fin/133741) \| [彩虹图🌈](https://www.blockchaincenter.net/bitcoin-rainbow-chart/) -* [**CAPE**](https://www.gurufocus.cn/indicator/shiller_pe) **\|** [**巴菲特指标**](https://www.gurufocus.cn/indicator/buffett-market-valuation) **** -* [Sharpe Ratio](https://charts.woobull.com/bitcoin-risk-adjusted-return/) \| [市值比较](https://assetdash.com/?all=true) -* [跟踪美联储操作](https://robo.datayes.com/v2/landing/monitor_detail?slotId=243342) -* CPI>3%通胀,>5%严重通胀 -{% endhint %} - -## **DeFi 操作面板** - -{% hint style="success" %} -* \*\*\*\*[**DeBank**](https://debank.com/swap) **\(**[**协议列表**](https://debank.com/projects)**\)** -* [**Zapper.fi**](https://www.zapper.fi/) -* \*\*\*\*[**Zerion**](https://app.zerion.io/exchange) **** -* **🦄️** [**Uniswap**](https://app.uniswap.org/) **\|** [**Uniswap Info**](https://info.uniswap.org/)\*\*\*\* -* \*\*\*\*[**QuickSwap**](https://quickswap.exchange/#/swap) **\|** [**QuickSwap Info**](https://info.quickswap.exchange/) ****🆕 -* \*\*\*\*[**yCRV**](https://docs.dfi.money/#/zh-cn/buy-tokens?id=_5-ycrv%e5%85%91%e6%8d%a2)\*\*\*\* -* \*\*\*\*[**DPI**](https://www.indexcoop.com/dpi) -* \*\*\*\*[**BCP \(PieDAO Balanced Crypto Pie\)**](https://pools.piedao.org/#/pie/0xe4f726adc8e89c6a6017f01eada77865db22da14) **\(** 🥧 [**Oven**](https://pools.piedao.org/#/oven) **\) \(**[**介绍**](https://medium.com/piedao/announcing-balanced-crypto-pie-bcp-btc-eth-and-defi-7a2423c5d94e)**\)** -* [**YPIE**](https://pools.piedao.org/#/pie/0x17525e4f4af59fbc29551bc4ece6ab60ed49ce31) ****, ****[**DEFI++**](https://pools.piedao.org/#/pie/0x8d1ce361eb68e9e05573443c407d4a3bed23b033)\*\*\*\* -* [**MVI**](https://app.zerion.io/invest/asset/MVI-0x72e364f2abdc788b7e918bc238b21f109cd634d7) ****, ****[**$PLAY**](https://app.zerion.io/invest/asset/PLAY-0x33e18a092a93ff21ad04746c7da12e35d34dc7c4) **,** [**NFTX**](https://app.zerion.io/invest/asset/NFTX-0x87d73e916d7057945c9bcd8cdd94e42a6f47f776) **** -* \*\*\*\*[**Gas费**](https://gasnow.sparkpool.com/)\*\*\*\* - - - [**估值**](https://terminal.tokenterminal.com/dashboard/Dapps)**(**[**参考链接**](https://www.chainnews.com/articles/649261412781.htm)**)** -{% endhint %} - -## Layer-2 Polygon\(Matic\)操作面板 - -{% hint style="danger" %} -不稳定,正在建设中…… - -users must first migrate their digital assets to the Polygon network through the [POS Bridge](https://wallet.matic.network/bridge) or [Zapper Bridge](https://zapper.fi/bridge). - -* [**QuickSwap**](https://quickswap.exchange/#/swap) **\|** [**QuickSwap Info**](https://info.quickswap.exchange/) **\|** [**Bitkeep - Quickswap**](https://bitkeep.org/defi.html) **交易对排名** -* \*\*\*\*[**DeBank - Polygon**](https://debank.com/projects?chain=matic) **支持查看项目排名** -* \*\*\*\*[**polygon.Balancer**](https://polygon.balancer.fi/)\*\*\*\* -* \*\*\*\*[**polygon.Curve**](https://polygon.curve.fi/)\*\*\*\* - -[Layer 2使用教程系列一:教你使用几大Layer 2应用 - 区块链](https://www.theblockbeats.com/news/21604) - -[Layer 2使用教程系列二:如何使用Matic Network完成资产跨链 ](https://www.bishijie.com/shendu/172332.html) -{% endhint %} - -## 基金股票 - -{% page-ref page="../../chuan-tong-jin-rong/ji-jin-tou-zi/" %} - -{% page-ref page="../../chuan-tong-jin-rong/gu-piao-xin-xi-gong-ju/xuan-gu.md" %} - -## 薅羊毛 - -{% page-ref page="../../chuan-tong-jin-rong/ke-zhuan-zhai-da-xin.md" %} - -{% page-ref page="../../chuan-tong-jin-rong/guo-zhai-ni-hui-gou.md" %} - -## 融资加杠杆 - -{% page-ref page="../../chuan-tong-jin-rong/zhe-die.md" %} - -## 离岸金融 - -{% page-ref page="../../chuan-tong-jin-rong/gang-mei-gu-kai-hu.md" %} - diff --git a/qian-xian/management-cockpit-operation/shen-me-yang-de-ren-kuo-he-tou-zi-bi-te-bi.md b/qian-xian/management-cockpit-operation/shen-me-yang-de-ren-kuo-he-tou-zi-bi-te-bi.md deleted file mode 100644 index 043478c4..00000000 --- a/qian-xian/management-cockpit-operation/shen-me-yang-de-ren-kuo-he-tou-zi-bi-te-bi.md +++ /dev/null @@ -1,2 +0,0 @@ -# 什么样的人适合投资比特币? - diff --git a/qian-xian/management-cockpit-operation/shu-xue-li-qi.md b/qian-xian/management-cockpit-operation/shu-xue-li-qi.md deleted file mode 100644 index 06dab2ee..00000000 --- a/qian-xian/management-cockpit-operation/shu-xue-li-qi.md +++ /dev/null @@ -1,161 +0,0 @@ -# 数学利器 - -## 1,无监督学习的归一化操作伪代码—— - -适用于任何**无顺序状态数据**(**不管数据分布如何**),应用sigmod函数之前的**归一化操作**: - -```python -定义 a_1, b_1 -定义 f_1(), f_2() - -f_2() = LN(f_1()/a_1) - /b_1 - * 4 -# 因为sigmod函数x取(-4,4)时,y在约(0,1), 所以这里最后*4 -# 你也可以*5,大概覆盖增长区间就行 - -a_1 = 几何平均数(f_1()) -# 几何平均数:GEOMEAN - -b_1 = 算数平均数(极大值(LN(f_1()/a_1),N) - -极小值(LN(f_1()/a_1),N) - ) -# 算数平均数:AVERAGE -``` - -### 找极值点 - -**二阶导数**大于0,图象为凹; - -**二阶导数**小于0,图象为凸; - -**二阶导数**等于0,不凹不凸。 - -当一阶导数等于0,而二阶导数大于0时,为极小值点。 - -当一阶导数等于0,而二阶导数小于0时,为极大值点; - -当一阶导数和二阶导数都等于0时,为驻点。 - -在导数为0的点的两侧若函数单调性一致,则此点不是极值点 - -极值点因子 = 此处的二阶导数/ABS\(此处的一阶导数\) - -```c -极值点因子 = 此处的二阶导数/ABS(此处的一阶导数) - -// 找极值点因子偏离0最大的离群点(即一阶导数绝对值最小,二阶导数绝对值最大) -// 跟随二阶导数的符号 -// 大于0时,为极小值点;小于0时,为极大值点。 -``` - -### 统计振幅 - -取极值点因子最大的10个点和最小的10个点 - -```python -定义 a_1, b_1 -定义 f_1(), f_2() - -f_2() = LN(f_1()/a_1) - /b_1 - * 4 -# 因为sigmod函数x取(-4,4)时,y在约(0,1), 所以这里最后*4 -# 你也可以*5,大概覆盖增长区间就行 - -a_1 = 几何平均数(f_1()) -# 几何平均数:GEOMEAN - -b_1 = 算数平均数(极大值(LN(f_1()/a_1),N) - -极小值(LN(f_1()/a_1),N) - ) -# 算数平均数:AVERAGE -``` - -## 2,判断牛熊,用于决策的,施密特触发器伪代码: - -IF函数 [**其他函数**](https://zhuanlan.zhihu.com/p/51366759) IFS函数 Choose函数 -[**多条件逻辑函数**](https://zhuanlan.zhihu.com/p/38326242):AND、OR、IF - -```python -定义 x_0, y_0 # 基期输入,基期状态 -定义 x_1, y_1 # 现期输入,现期状态 -定义并赋值 x_L = ? -定义并赋值 x_H = ? -定义函数 y_1 = 施密特触发器(x_1,y_0) # 现期状态=施密特触发器(现期输入,基期状态) ------------------------- -上升的施密特触发器(x_1,y_0, x_L,x_H) { -if x_1>x_H, return 1 # 如果,现期输入>高输入阈值,状态置1 -else if x_1x_H, return 0 # 如果,现期输入>高输入阈值,状态置1 -else if x_1x_H-w && x_1>x_L+w, return y_0/(sigmod((x_0-x_H)/w*4))*(sigmod((x_1-x_H)/w*4)) #如果输入进入下降通道且不在上升通道内,状态更新
 -else if x_1x_H-w && x_1>x_L+w, return y_0/(sigmod(-(x_0-x_H)/w*4))*(sigmod(-(x_1-x_H)/w*4)) #如果输入进入下降通道且不在上升通道内,状态更新
 -else if x_1 My clock is paper financial time 我的**时钟**显示账面的**金融时间** -> -> ——[《C》- 岩崎琢](https://music.163.com/#/song?id=22713696) - -> 歌者启动了**大眼睛**的进程。 -> -> —— 《三体》- 刘慈欣 - -{% page-ref page="../" %} - -{% page-ref page="../../../lv6-xing-mo-fang-fen-lei/yu-zhou-mo-fang-hui-gui-fen-xi.md" %} - -{% hint style="info" %} -Disclaimer: **Any information found on this page is not to be considered as financial advice. You should do your own research before making any decisions.** -{% endhint %} - -{% hint style="success" %} -## 最新版下载链接🔗 [卓尔金+哈布飞船5.02](https://share.weiyun.com/7rzN1OXD) - -### [表格怎么](https://www.bilibili.com/video/BV1HU4y1a7Ve)[使用?](https://www.bilibili.com/video/BV1HU4y1a7Ve) ⬅️ 不会用的小白看这个 - -### 含有重要数据分析报告下载链接🔗 [卓尔金-智能飞船](https://share.weiyun.com/NrrPpvCw) -{% endhint %} - -{% hint style="success" %} -### [宣传视频1](https://www.bilibili.com/video/BV1K64y1S7FS) \| [宣传视频2](https://www.bilibili.com/video/BV16X4y1g7tH/) \| [代言视频1](https://www.bilibili.com/video/BV13x411R7Lf) \| [代言视频2](https://www.bilibili.com/video/BV12b411p7Hi) -{% endhint %} - -{% page-ref page="zhuo-er-jin-li-fa-de-sheng-ji-1-ni-he-han-shu.md" %} - -{% page-ref page="zhuo-er-jin-li-fa-de-sheng-ji-2-wu-cha-fen-xi.md" %} - -{% page-ref page="zhuo-er-jin-sheng-ji-3-tu-ling-wan-bei.md" %} - -{% page-ref page="zhuo-er-jin-sheng-ji-4-dong-tai-tu-biao.md" %} - -{% page-ref page="zhuo-er-jin-sheng-ji-5-shen-jing-wang-luo.md" %} - -{% hint style="info" %} -## 版本记录 - -### 经典版 1.0 - -[卓尔金历法](https://share.weiyun.com/dhfGbd7l) \| [卓尔金-探索者号飞船](https://share.weiyun.com/NAsqLyq8) - -### 升级版 2.0 —— 范围更大,考虑情况更多 - -[卓尔金历法](https://share.weiyun.com/dhfGbd7l) \| [卓尔金-探索者号飞船](https://share.weiyun.com/NAsqLyq8) - -### 智能版 3.0 —— 智能函数拟合,更精确,更易调节 - -[卓尔金-智能原子钟](https://share.weiyun.com/y9kahvvr) \| [卓尔金-智能飞船](https://share.weiyun.com/NrrPpvCw) - -### 尊享版 4.0 —— 优化了UI,增加了误差分析功能 - -[卓尔金飞船](https://share.weiyun.com/5vy0sGcS) - -### 哈布历 4.9 —— 增加了哈布历法 - -[卓尔金+哈布飞船](https://share.weiyun.com/O2bZwwMx) - -### 哈布历 5.0 —— 微调更新,优化了部分公式,修复了链接型的BUG,优化了UI,添加了LOGO - -[卓尔金+哈布飞船\(1\)](https://share.weiyun.com/kqakKw4y) - -### 哈布历 5.01 —— 增加了与目录间的链接 - -[卓尔金+哈布飞船5.01](https://share.weiyun.com/miHqj1Ri) - -### 哈布历 5.02 —— - -重组了卓尔金历法实验室,以适应更复杂的自动化分析,未来只需要输入参数,不需要像以前那样做实验了; -增加了卓尔金历法实验室与记录仪和卓尔金历法中参数的的连接,使卓尔金历法更智能; -增加了卓尔金历法实验室对神经网络中心点的控制,对延展参数的控制正在研究中。 - -[卓尔金+哈布飞船5.02](https://share.weiyun.com/7rzN1OXD) -{% endhint %} - -![](../../../../.gitbook/assets/zhuo-er-jin-li-fa-da-zhou-qi-.png) - -#### [http://www.chidaolian.com/article-45496-1](http://www.chidaolian.com/article-45496-1) - -#### 熊市:下跌到顶点的1/5 - -#### 震荡市:振荡上涨2倍 - -#### 牛市:减半后,上涨32倍-64倍 - -熊市做空时。可以买杠杆代币BTCDOWN,并计算好杠杆率。 -震荡行情,网格是用币优做的,BTC/USDT -牛市做多时。可以用币安的流动性挖矿,做BTC/ETH。 - -具体软件如下: - -{% page-ref page="../../" %} - -## [归一化操作](https://www.bfm-unity.com/management-cockpit-operation/shu-xue-li-qi) - -数据归一到(-1,1) - -```python -LN(MVRV/1.80)/0.91 # 对MVRV的处理 - -LN((S2F月预测价格/价格)/1.44)/1.68 # 对S2F的处理 -``` - -## 图表说明 - -![](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210329-xia-wu-9.13.03.png) - -**蓝色曲线——横X轴——MVRV——**[**数据来源**](https://www.blockchain.com/charts/mvrv)\*\*\*\* - -**橙色曲线——纵Y轴——S2F月预测价格/价格——**[**数据来源**](https://www.qkl123.com/data/s2f/btc)\*\*\*\* - -## 回测研究 - -![](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210402-xia-wu-8.50.46.png) - -![](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210402-xia-wu-8.50.59.png) - -![](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210403-shang-wu-7.12.11.png) - -## 归纳推理 - -![卓尔金历法](../../../../.gitbook/assets/zhuo-er-jin-li-fa-ling-hang-duo-.png) - -![图中数字指的是推荐仓位](../../../../.gitbook/assets/zhuo-er-jin-li-fa-lei-da-.png) - -## **历法**说明 - -**顺着三角形顺时针运行,** - -**红色是牛市,绿色是熊市,蓝色是震荡市。** - -**从蓝色到红色,减半开始,此时需要加杠杆,满仓多。** - -**顺时针运行 ,落到第一个黑色框,就是牛市顶峰,熊市开始,可以做空。** - -**顺时针运行 ,落到第二个黑色框,就是熊市底部,可以入场开网格。** - -**就像一个时钟一样,很方便。** - -## 模拟神经网络查找表 - -![超高清](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210416-xia-wu-1.16.07.png) - -## 确定仓位 - -* [史上最牛查找函数组合Index+Match](https://www.sohu.com/a/334505538_825825) -* [EXCEL取小数点后一位](https://zhidao.baidu.com/question/27632380.html) - -```python -=INDEX( - 神经网络!C26:W46, - MATCH( - ROUND(卓尔金历法GPS定位系统!D9,1), - 神经网络!B26:B46, - 0), - MATCH( - ROUND(卓尔金历法GPS定位系统!D7,1), - 神经网络!C25:W25, - 0) - ) -``` - -## **与美林时钟的关系** - - - -![](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210403-shang-wu-10.44.27.png) - -两个随机变量,才能校准、判断一个周期。 - -一个随机变量,是无法校准、判断周期的,所以用MACD,BOLL都是没用的。 - -一个随机变量,单独用MVRV,或者单独用S2F,噪声扰动太大,所以不能单独用,必须二者结合判断。 - -在比特币,这两个随机变量是MVRV,S2F。 - -在现实世界,这两个随机变量是GDP,CPI,或者货币,信用。 - -## 逻辑解释 - -不要让自己的人性干扰判断,比如说我那个卓尔金历法, - -如果你是普通人,按照感性思考,是无法理解价格的指数增长的,所以我用数学的LN\(\)来放弃感性思考。我放弃让自己来思考指数增长,而把指数增长的部分都取LN\(\)来滤除。一个指数增长的数列取LN\(\)之后就变成了线性增长,这样我只需要思考简单的线性增长就行。我通过一系列数学映射,简化了判断。 - -而且我放弃了思考价格和时间之间的关系,把绝对价格换成相对价格,把衡量绝对时间换成衡量状态,这样一切就都是相对的状态,而不是绝对的价格和时间。 - -用相对的思维来思考相对的牛熊,这样就容易多了。但是用绝对的思维思考相对的牛熊,就会很难。 - -相对的思维就是把一切都变成状态机,思考状态之间的切换,比如说我就把问题简化成了一个只有\(-1,0,1\)这三种状态的状态机。把所有的变量都归一到这三种状态中,然后再思考它们的关系,这样就很容易发现周期规律。 - -但是一个连续的状态,如何转化成离散的判断呢?如何防止噪声干扰?如何防止频繁买卖?答案很简单,我们电子专业有一个叫\(施密特触发器\)的元器件,我们利用它的逻辑就可以了。简单地说,它的逻辑,就是达到阈值就切换,没达到阈值就维持原状态。这样就可以避免噪声干扰,实现AD转换了。 - -在某些人\(比如我\)的眼里,比特币就是宏观电子,就是宏观的状态机,就是由三种状态,两个随机变量构成的。 就像藏传佛教,宇宙就是由唵啊吽三种状态构成的。 我相信比特币就是宏观的电子,宏观的状态机。 - -## 局限性 - -你可以研究过去的几次周期,来拟合这个三角形。 - -不过既然我给出了研究结果,你再研究一遍,也差不了多少,所以只要会使用就行了。 - -未来的话,每次达到新的阶段,都需要重新拟合一遍,来适应市场。 - -而且,如果最坏的情况,就是这个模型失效了,我们也可能会重新修改模型的框架规则。 - -但是在一个周期内还是不需要修改的,在3个周期,也就是10-12年之内,这个模型会很稳定。10-12年之内,这个模型会很稳定。数据不需要太大的修改。 - -我们很懒。不需要加班996改这个。 - -币圈人都知道,我们在一个没有尽头的电梯里,周围是无尽虚空。 - -我能在黑暗中寻找一丝光亮,我已经尽力了。还是那句话,这里很危险。信则灵,不信则不灵。 - -我建议你先看一下《三体》,里面有一个假说,射手和农场主假设,这是很可怕的。 - -![](../../../../.gitbook/assets/98c03b7c3c216d56bb61d0199dff9239.jpg) - -但是,我们会因为害怕就放弃寻找规则吗? - -如果有人能找到规则,至少比面对无尽虚空更强一点, 至少我找到了一定的规则,很宏大的规则。以3-4年的减半为周期的规则。我希望它能运行的长一点。 - -我只是选择了几个数据,你认为我是射手和农场主假说那样的情况,也好。 - -不过,减半行情是比特币自身的性质,这是不受市场上的人类行为的控制的。 - -所以根据减半规则,推导出的比特币周期是可以站住脚的。 - -还是那句话,你面对的是无尽虚空,而我是那个拿着火把的玛雅祭司。 - -你说我提出的卓尔金历法不是科学,我也承认,但是,在美洲的原始部落里,这是最可信的了。 - -信不信由你,信则灵,不信则不灵。 - -虽然玛雅文明最后灭亡了,但是历史是轮回的,玛雅文明至少创造了历史。 - -历史是不可重复性实验,而科学是可重复性实验。 - -所以,科学无法审判历史;所以,科学无法审判玛雅文明的卓尔金历法。 - -这是哲学问题,不是科学问题。 - -我们操控的是宏观电子,玩的是不可重复性实验。面对的是无尽虚空。 - -我们面对的问题是很危险的,但是我撕开了一个口子。 - -就算我们是玛雅人,也要在石头上用黑曜石刻下卓尔金历法。 - -特别是“活人献祭”的金融领域,所谓的科学很可能只是“射手与农场主”假说。 - -但是我们也不能因噎废食,也要敢于发现规律,创造规律。 - -金融是什么?金融就是活人献祭。 - -科学是什么?科学就是历法,根据历法,什么时候举行活人献祭。 - -其实我们和玛雅文明没区别,我们只是把历法刻在区块链上,而玛雅文明刻在石头上。 - -但是,我们和玛雅文明面对的都是可怕的无尽虚空,没有必要五十步笑百步。 - -我就是你们的大祭司,你爱信不信,有时候真的,由不得你不信。 - -## 相对论视角 - -卓尔金历法是MVRV和S2F的月均线合并起来的二维图。 - -这里没有时间,也没有价格。因为时间和价格我都不考虑了,我只考虑相对位置。 - -对于比特币来说,绝对的现实世界时间和美元价格都不重要,因为比特币有自己的时间(时间戳,区块),自己的价格(聪)。所以它相对美元的价格是由它自己的性质决定的。我只考虑它自己的性质,摒弃了外界条件的干扰。 - -比特币是一个内部统一的结构,它是靠自己决定它自己价值的,外部的时间和外部的美元对它都不会造成本质的影响。 所以,你不能考虑时间,只能考虑它自己内部的相对状态。这个内部状态就是MVRV,和S2F。我用“相除“提纯了S2F,让它变成了一个没有货币单位的相对值。 - -用相对值来衡量比特币整个经济系统所处的状态,这样就合理了,也能解释其为什么相对美元的价格周期了——因为它的内部状态发生了变化。 所以我们只要分析MVRV和S2F反映的内部状态,就可以判断所处的周期位置。自然就能预测接下来的行情。 - -但这个行情,是和下周或者下个月没关系的,因为,比特币的时间是靠“区块高度”衡量的,不是靠(天)(周)(月)衡量的。 - -所以你在时间价格图上各种画线来预测,是没有卵用的。因为技术指标参考的时间是现实时间,不是(区块高度),所以,既然时间轴都错了,再分析也没有意义,这就是技术指标在比特币上无用的原因。 - -区块高度和现实时间不是一一对应的,它可以伸长,也可以收缩,全看矿工挖的进度。 是矿工和算力决定了比特币的时间(区块高度),而不是现实时间。 - -所以,既然技术指标参考的价格是美元价格,参考的时间是现实时间,那么技术指标在分析比特币上卵用没有。 - -比特币的时间是相对时间,产生的价值是相对价值,所以比特币具有“相对论”性质,而技术指标大多是“经典力学”思维,所以技术指标完全彻底地在比特币上失效,无用! - -所以我们分析比特币周期也必须使用相对指标,比如说MV/RV,比如说S2F预测价格/价格。 - -这样才能使用比特币的“相对论”性质,摆脱现实时间和美元定价体系的“经典力学坐标系”的干扰! - -我们必须使用相对论思维来研究比特币。 - -因为比特币的时间不是现实时间,是区块高度,价值也不是相对美元的价格,是MVRV和S2F决定的强弱体系! - -我们必须脱离(现实时间,美元)这个坐标系,进入(区块高度,相对价值)这个坐标系! - -否则,我们无法分析比特币。 - -既然区块链已经离开了地球,为什么还要使用地球的时间和地球的坐标系? - -反正判断周期和时间和价格都没有关系。 - -比特币有自己的价值体系,有自己的时钟系统。 所以外界时间影响不到它的运行。 这就是为什么比特币可以逃过摩尔定律的原因。 - -所以,我们用现实的美元和现实的时间是干扰不了比特币的……比特币自己有一套自己的经济体系(聪,交易手续费,挖矿成本,减半机制)和时间体系(区块高度,时间戳)。 - -所以,现实的经济动荡,和比特币是完全脱轨的。 - -所以,基于现实世界消息面,判断多空,是完全没有用的。 两个连基本法则都脱轨的经济系统,怎么会有干扰?笑话。 - -## 讨论 - -能回测出来的东西都不是秘密,不是秘密的东西就是共识,而共识才是最值钱的 - -回测出的东西=共识+噪声+过拟合。你要做的就是分离提纯出共识,去除噪声和过拟合 - -我的卓尔金历法由于过于粗糙,过于傻逼, 所以提纯出的理论大部分都是共识。 - -不要小看共识,就算你认为不是秘密,不会有超额收益, 但是违背共识,也会付出沉重的代价。 - -**不知道秘密,顶多没有超额收益。 但是不知道共识,可是连平均收益都没有。** - -**我认为市场共识占了收益的80%,而秘密和内幕消息只占了收益的20%** - -观点,构成了命题的假设和框架。一切命题都是建立在假设上的。然后才是数据分析。 假设很重要,比数据分析更重要 - -我这个模型已经足够naive了,一般越naive越不容易过拟合 - -表达观点,强化共识的原因,只是为了防止陷入囚徒困境。 - -宏观电子是没有量子态的。 一旦宏观了,量子态就很弱了 - -## 自我,超我,机器智能 - -人在金融市场拼的是什么?就是拼的自己价值观不会受到金融市场的毁灭和侵蚀。 如果你把你的价值观,委托给相对估值法,委托给电脑机器,那么,你的思维就永远不会受到金融市场的波动的侵蚀,而是一直保持理客中的状态。 - -做金融这行就是要有自信,要相信你就是比别人优秀,然后你就真的会比别人优秀。 - -有些人做着做着就被市场侵蚀掉,放弃自尊心,放弃自信心,这是不对的。 - -只要你把判断委托给机器,你的意识,你的思维模型就永远不会受到市场的侵蚀。 - -那样你就会解放出来,去搭建去升级你创造出的机器智能。 - -我就是这么做的。 - -一定要有超然物外的思维。 - -如果你不能超然物外,你就依然是那个自己下棋的柯洁,你不依靠机器的智慧,就永远达不到阿法狗的层次。 - -总结来说,就是 - -1,思维模型不要被市场侵蚀,要学会让机器(Excel)顶在前面,代替自己的计算和判断。 - -2,一定要有自信心,要坚持,要执着。要让自己的超我思维模型和机器智能相结合,让这个系统越来越强大。 - -3,一定要有超然物外的思维,要让自己的超我脱离这个局,让超我做一个局外人去下判断,而自我只是那个负责执行的人。 重要的是,把转瞬即逝的超我的判断,注入机器智能中,固定下来。 - -你的自我可以去接触市场,可以有喜怒哀乐,可以被市场侵蚀掉,因为你的自我是负责执行的。 - -但是你的超我一定要独立出来,超我是转瞬即逝的,如果超我坚持不住判断,一定要及时地把超我注入到机器智能之中。这样你的超我就会一直指导自我的判断了。 - -你要做的是, 1,保留超我的洞察力, 2,保留自我的执行力, 3,由于超我维持的时间很短,要及时把超我注入到机器中固定下来。 4,不要让自我参与判断,而且不要随便放弃你的超我,即使是被固定到机器中的超我,也不能放弃,要把超我不断地发展下去。 - -## 占卜与赌博 - -占卜与赌博,是整个世界最核心的东西 - -占卜,也叫预测,也叫分析 - -赌博,也叫博弈,也叫决策 - -当你用数据分析指导决策的时候,实际上你就是在先占卜和后赌博。 - -| 占卜 | 赌博 | -| :--- | :--- | -| 预测 | 博弈 | -| 分析 | 决策 | -| 唯心主义 | 唯物主义 | -| 结合理论 | 联系实际 | -| 思想 | 执行 | -| 党 | 枪 | -| 政治 | 金融 | -| 科技 | 工程 | -| 教育 | 就业 | -| 文化 | 革命 | -| 艺术 | 宗教 | -| 学习 | 考试 | -| 体检 | 治疗 | -| 超我 | 自我,本我 | -| 顶层设计 | 底层逻辑 | -| 发展战略 | 宏观调控 | -| 上层建筑 | 基础设施 | - -综上所述,整个世界都是由占卜和赌博构成的 - -占卜和赌博,才是世界的本质,宇宙的本源,万物的发源 - -```python -我已经放弃写科幻小说了,我现在在写现实。 -Guhhhhaa 22:35:45 -用金钱和代码写作,而不是用文字。 -Guhhhhaa 22:36:56 -更准确地说,是算法交易和量化投资,还有人工智能和区块链。 -Guhhhhaa 22:37:59 -你知道的,用文字写作可能不会有太大的影响力,但是用金钱和代码写作,似乎好一点。 -Guhhhhaa 22:38:20 -我似乎在构造属于我的金融系统。 -Guhhhhaa 22:38:42 -这可比单纯写故事有意思多了。 -低熵流浪者 22:43:17 -你读过资本论吗 -低熵流浪者 22:44:03 -国富论呢 -低熵流浪者 22:44:17 -曼昆经济学原理呢 -Guhhhhaa 22:45:00 -我有证券从业资格证和基金从业资格证 -低熵流浪者 22:45:31 -哦,你是专业人士啊 -Guhhhhaa 22:45:52 -但是经济学我不懂,我只懂金融学 -Guhhhhaa 22:46:14 -简单说,就是占卜和赌博嘛。 -Guhhhhaa 22:50:28 -如果用金融的眼光自上而下地看,这个世界其实很简单的。 -Guhhhhaa 22:51:14 -就是有时候有点神叨。 -Guhhhhaa 22:53:24 -因为金融这东西本质上是唯心主义的,而且不可逆,不可重复,不可移植,有的时候,有些东西甚至不能公开。 - -不像科学,工程,技术,大部分都是可逆,可重复,可移植,可公开的。 -Guhhhhaa 22:55:09 -我跟你讲有个SCP,叫SCP2950,只是一把椅子。 -这个SCP,就是有一定的金融的性质。 -Guhhhhaa 22:57:18 -你在那个群待了那么久,应该知道我们在研究啥了吧,我们主要是研究比特币的。比特币在很久以前很科幻,现在依然很科幻。 -Guhhhhaa 22:58:27 -如果你深入进去的话,到现在,应该也能赚不少钱吧。 -低熵流浪者 22:58:41 -二进制郁金香罢了 -低熵流浪者 22:59:12 -或许还不如郁金香,起码郁金香是实实在在能摸到的 -Guhhhhaa 23:01:35 -你看过科幻电影《BLAME!》没有。你看过就会知道,世界末日,未来都市,所有人都在找一种网络终端遗传因子,为了解决机器人失控的问题。 - -你知道那个网络终端遗传因子是什么吗?就是比特币。 -低熵流浪者 23:05:10 -我劝你不要拿文艺作品来理解现实 -Guhhhhaa 23:05:27 -你知道现在科技公司都和比特币深度绑定了吗,就比如说USDT,背后,是美国大型互联网公司的公司债券。 -低熵流浪者 23:05:47 -你需要读点专业的经济社科的东西 -Guhhhhaa 23:07:08 -你说的是美联储货币政策宏观经济,还是马克维兹均值方差,还是PE,PB,ROE,还是期权定价呢。 -Guhhhhaa 23:08:43 -你以为,我不懂比特币的估值吗, - -比特币相对估值三大指标,MVRV,S2F,NVT了解一下。 -低熵流浪者 23:10:08 -那么你知道我之前说的郁金香是什么意思吗 -Guhhhhaa 23:11:10 -这个词,还不能用来形容比特币。 -低熵流浪者 23:11:12 -你知道阶级,剩余价值理论,资本剥削,理性经济人假设,纳什均衡吗 -Guhhhhaa 23:11:41 -知道。但是,赌博的时候基本用不上。 -低熵流浪者 23:12:41 -既然你数学好,那么在数学上赌博是多么的不靠谱你也应该知道吧 -Guhhhhaa 23:13:35 -既然你觉得那些玩意有用, - -那你觉得,真空中的球形鸡,能指导土木工程吗? -低熵流浪者 23:14:32 -所以你承认自己就是个抛弃理性思维,盲目地笃信自己能赌赢的赌徒咯? -低熵流浪者 23:15:24 -那我觉得比特币太复杂了,建议直接去澳门赌场梭哈 -Guhhhhaa 23:15:52 -那可不一样。 -Guhhhhaa 23:16:39 -你觉得吃饭和吃屎能混为一谈吗? -Guhhhhaa 23:17:42 -赌比特币,是吃饭,而赌场,是吃屎。前者有概率上的营养,后者没有。 -低熵流浪者 23:18:09 -什么叫概率上的营养 -Guhhhhaa 23:18:35 -就是,期望为正的赌博。 -Guhhhhaa 23:19:01 -赌场里,期望可都是负的。 -低熵流浪者 23:19:08 -赌博不存在期望为正 -Guhhhhaa 23:19:08 -所以说,不一样。 -低熵流浪者 23:19:44 -你这等于说一个活着的死人 -低熵流浪者 23:19:50 -逻辑矛盾 -Guhhhhaa 23:20:33 -世界并不是非黑即白的,大部分都是灰色的。 -低熵流浪者 23:21:22 -所以你指着灰色的赌博说它一定是白色的? -Guhhhhaa 23:21:41 -浅灰色。 -Guhhhhaa 23:22:31 -只要配比合适,毒药也能变成良药。 -低熵流浪者 23:23:10 -你有空应该跟那些梭哈比特币被割韭菜的人讲讲你的理论 -Guhhhhaa 23:23:42 -那我们谈谈科幻吧。 -Guhhhhaa 23:24:06 -既然你这样反感比特币。我们就不谈了。 -低熵流浪者 23:24:18 -我没有反感比特币 -低熵流浪者 23:24:28 -我只是在客观地描述它的性质 -Guhhhhaa 23:26:17 -那你可以选择纳斯达克指数,不过,纳斯达克指数现在也有很大泡沫。 -低熵流浪者 23:27:04 -如果你觉得我的客观描述在你眼中就是对比特币的反感,或者说我没有像你一样是一个抛弃理性思维笃信自己一定能赢的赌徒,就是反感比特币的话 -Guhhhhaa 23:27:04 -纳斯达克指数,就是大部分人看到的,表面的世界,有苹果,微软,谷歌,等等。 -低熵流浪者 23:27:29 -那你就继续去信吧,我没有理由去干涉你的宗教信仰 -Guhhhhaa 23:27:37 -那你为什么不去赌纳斯达克指数呢? -低熵流浪者 23:28:17 -我不是赌徒 -低熵流浪者 23:28:34 -我没有坚信自己一定会赢的强大的赌徒心理 -低熵流浪者 23:28:52 -我屈从于数学和理性 -Guhhhhaa 23:29:10 -毕竟,这世界上的核心资产,就那么几个,沪深,纳指,标普,比特币,黄金,美债。没了。 - -你要是不赌的话,法币=厕纸,肯定会通货膨胀的。 -Guhhhhaa 23:29:36 -还有房地产。不要笑。 -Guhhhhaa 23:29:58 -真的,现在这个时代,不赌点什么,说不过去吧。 -低熵流浪者 23:30:37 -所以你知道这都是赌博,也知道自己的赌徒心理是非理性的,但还是要赌,原因就是你觉得不赌会更糟糕? -Guhhhhaa 23:32:39 -当然。你知道我们不赌,所有人都不赌,都退出,掀桌了,世界会怎么样吗。 -如果没有人赌博,那么大家都得睡大街,而且没有工作。 -Guhhhhaa 23:33:14 -金融危机,1999年,08年,15年,19年 -Guhhhhaa 23:33:31 -懂吧,不赌,很可怕的。 -低熵流浪者 23:34:24 -恰恰相反:这些可怕的后果都是赌博带来的 -Guhhhhaa 23:34:56 -你们上级的上级,上级的上级,都在做两件事,占卜和赌博, - -他们管这个叫顶层设计,发展战略,宏观调控。 -Guhhhhaa 23:36:35 -如果他们赌输了,一个公司就可能倒闭,一个行业可能会衰亡,甚至一个国家会解体。 -Guhhhhaa 23:37:16 -你不觉得,这个世界上,总得有人去占卜,去赌博么。 -低熵流浪者 23:38:35 -我不喜欢赌博 -Guhhhhaa 23:41:19 -就像苏联,就是因为赌石油赌输了,才解体的。 -Guhhhhaa 23:42:58 -赌博,和占卜,才是世界的本质。 - -唯物主义,输给,唯心主义。 - -A,B,C,D,+,-,0,1,0.25,决定了整个世界。 -低熵流浪者 23:44:24 -你对唯物主义和唯心主义这两个术语含义并不理解,你误用了这两个词 -低熵流浪者 23:44:54 -有兴趣的话可以去读一下西方哲学史了解它们的真正含义 -Guhhhhaa 23:45:48 -这就是,最大的游戏,最大的赌博。全世界都是赌场。 -货币,商品,黄金,石油,沪深,标普,纳指,美债,房地产,比特币,一切都是筹码。 -这个游戏,你不参与,也得参与。 -你不做下棋的人,就只能做棋子? -低熵流浪者 23:46:51 -你这么喜欢赌那就去赌吧,我也没权力管你 -低熵流浪者 23:47:04 -希望你能够赌赢 -低熵流浪者 23:47:37 -以及,在你赌赢的时候不要忘了你的赢是建立在相应的一个人甚至一群人的赌输之上的 -低熵流浪者 23:48:16 -从来就没有什么期望为正和浅灰色 -Guhhhhaa 23:48:50 -没必要把我想的那么黑暗。 - -我追求的是世界和平, - -要不然我的头像早就换了。 -低熵流浪者 23:49:25 -真追求世界和平你就不应该去赌博 -低熵流浪者 23:49:32 -更不会喜欢赌博 -Guhhhhaa 23:49:42 -特图,他是我的偶像,我要达到他的境界,赌到世界和平。 -Guhhhhaa 23:50:23 -赌博,再不堪,也比战争和政治好一点。 -低熵流浪者 23:51:32 -战争本就是赌博 -Guhhhhaa 23:51:58 -这就是金融,总得有人去做这个事。 - -总得有人做决策,承担责任,划定方向。也就是,赌博。 -Guhhhhaa 23:52:37 -我只赌有必要的,有把握的。 -Guhhhhaa 23:53:14 -这是我和那些赌狗不同的。 -他们赌的是没必要的,也没把握的。 -Guhhhhaa 23:53:35 -所以我比他们好一点,我是浅灰色的。 -Guhhhhaa 23:54:16 -你们其实都在和我合作,不管你们愿不愿意。 -``` - -## 指数,对数,几何平均数,根号市值 - -只要你能用指数,对数,还有几何平均数,你就可以驾驭比特币。 - -但是如果你使用累加,累减,算术平均数,那么,你就不能驾驭比特币。 - -## 鲸鱼洄游 - -我们是被潮水裹挟着前进,但是我们不能看不清方向。 - - 比特币不是神,它只是一个鲸鱼,它的方向我们可以大概预测出来。 - -毕竟它只是一个动物,有类似动物的洄游行为。 - - 不要太瞧得起比特币了,它也不过如此。 - -#### [座头鲸沿直线洄游奥秘:或观星望日定方位](https://www.chinadaily.com.cn/hqgj/2011-04/22/content_12373180.htm) - -#### 背景图片:[https://photo.16pic.com/00/07/97/16pic\_797125\_b.jpg](https://photo.16pic.com/00/07/97/16pic_797125_b.jpg) - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-li-fa-de-sheng-ji-1-ni-he-han-shu.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-li-fa-de-sheng-ji-1-ni-he-han-shu.md deleted file mode 100644 index 9df4c3f5..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-li-fa-de-sheng-ji-1-ni-he-han-shu.md +++ /dev/null @@ -1,46 +0,0 @@ -# 卓尔金升级1——拟合函数 - -{% hint style="success" %} -### 智能版 3.0 —— 智能函数拟合,更精确,更易调节 - -[卓尔金-智能原子钟](https://share.weiyun.com/y9kahvvr) \| [卓尔金-智能飞船](https://share.weiyun.com/NrrPpvCw) - -紧跟时代步伐,引领行业变革。 -{% endhint %} - -## 智能神经网络查找表 - -```python -=$E$4 + ($AI$4-$E$4) * 1/(1+EXP(-($D$4*(F3-$C$2)))) - -=$D$5 - ($D$5-$D$35) * 1/(1+EXP(-($D$4*(-C6+$B$3)))) - -=(E$4+$D5)/2 - -=MAX((F$4+$D5)/2,E4) - -=MIN((E$4+$D6)/2,D5) - -=IFS( - ($C6-$B$3)<-(F$3-$C$2), MIN((F$4+$D6)/2,E5), - ($C6-$B$3)>-(F$3-$C$2), MAX((F$4+$D6)/2,E5), - TRUE, (F$4+$D6)/2 -) -``` - -```c -激活函数 - -sigmoid(x) = 1/(1 + exp(−x)) - -tanh(x) = (exp(x) - exp(−x))/(exp(x) + exp(−x)) -tanh(x) = (1 - exp(−2 * x))/(1 + exp(−2 * x)) - -tanh(x) = 2 * sigmoid(2 * x) - 1 -tanh(x / 2) = 2 * sigmoid(x) - 1 - -ReLU(x) = MAX(x,0) - -Swish(x) = x * sigmoid(x) -``` - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-li-fa-de-sheng-ji-2-wu-cha-fen-xi.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-li-fa-de-sheng-ji-2-wu-cha-fen-xi.md deleted file mode 100644 index 3a3159f9..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-li-fa-de-sheng-ji-2-wu-cha-fen-xi.md +++ /dev/null @@ -1,17 +0,0 @@ -# 卓尔金升级2——误差分析 - -{% hint style="success" %} -### 尊享版 4.0 —— 优化了UI,增加了误差分析功能 🚩 - -[卓尔金飞船](https://share.weiyun.com/5vy0sGcS) - -科技赋能金融,提供极致简单体验。 -比坊梦,打造全新区块链交易操作系统。 -{% endhint %} - -[最小二乘法](https://baike.baidu.com/item/%E6%9C%80%E5%B0%8F%E4%BA%8C%E4%B9%98%E6%B3%95/2522346) - -[梯度下降](https://baike.baidu.com/item/%E6%A2%AF%E5%BA%A6%E4%B8%8B%E9%99%8D/4864937?fr=aladdin) - -[点到线段距离](https://www.cnblogs.com/flyinggod/p/9359534.html) - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-3-tu-ling-wan-bei.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-3-tu-ling-wan-bei.md deleted file mode 100644 index 7a06ab3d..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-3-tu-ling-wan-bei.md +++ /dev/null @@ -1,10 +0,0 @@ -# 卓尔金升级3——图灵完备 - -LAMBDA - -LET - -自 20 世纪 80 年代发布以来,Excel 为每天使用它的数百万人提供了决策依据。它也是世界上使用最广泛的编程语言。Excel 公式的编写者比世界上所有 C、C++、C\#、Java 和 Python 程序员的总和还要多一个数量级。但是我们通常不将 Excel 视作一种全面的编程语言,因为它有两大缺点:其一是公式语言只支持数字、字符串和布尔值等标量值,其二是不支持定义新函数。 - -而在 2019 年,Excel 的数据类型超越了文本和数字,允许单元格包含一级记录。接着,在去年 12 月微软宣布了 LAMBDA 功能,解决了第二个缺陷。LAMBDA 允许用户使用 Excel 的公式语言定义新的函数。通过 LAMBDA,理论上可以用 Excel 的公式语言写任何计算,从而满足了图灵完备。LAMBDA 目前提供给了 Beta 测试用户。 - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-4-dong-tai-tu-biao.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-4-dong-tai-tu-biao.md deleted file mode 100644 index acdfb380..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-4-dong-tai-tu-biao.md +++ /dev/null @@ -1,68 +0,0 @@ -# 卓尔金升级4——动态图表 - -{% embed url="https://zhuanlan.zhihu.com/p/151045480" %} - -### **E00.动态图表原理** - -因为Excel没有时间轴,无法描述运动轨迹,只能表达图表的最终形态。简单来说动态图表就是作图数据源发生了变化。 -![](https://pic2.zhimg.com/80/v2-a5723086798244b536b4641945003255_1440w.jpg) - -在Excel中常见的动态图表元素组合有:**选择器+抽数引擎+图表=动态图表** - -![](https://pic1.zhimg.com/80/v2-6b40ad234812f516f11d2935ba518480_1440w.jpg) - -①选择器常见有**Excel控件**,**下拉菜单**,**单选框**、**复选框**、**调节数值器**、**切片器**、**日程表**等; - -②常见的抽数引擎有:**透视表**、**常见的链接**、引用函数如:**vlookup**,**offset**,**index与match**等 - -以下,我们根据选择器的不同,盘点各类动态图表: - -### **E01.**RANDBETWEEN**函数** - -我们可以看到构成RANDBETWEEN动态图表有三要素:**①数据源+②选择器→③动态图表** - -### **02.下拉序列** - -下拉序列动态图表有4要素:**①数据源+②选择器+③作图数据源→④动态图表** - -还有隐藏的抽数引擎,栗子在作图数据源提取时,用了Vlookup。 - -### **03透视表+切片器** - -切片器动态图表有4要素:**①数据源+②选择器+③作图数据源→④动态图表** - -抽数引擎:**透视表** - -选择器:**②切片器** - -### **E04.透视表+日程表** - -日程表动态图表有4要素:**①数据源+②选择器+③作图数据源→④动态图表** - -抽数引擎:**透视表** - -选择器:**②日程表** - -### **E05.控件-组合框** - -控件-组合框动态图表有5要素:**①数据源+②选择器+②链接单元格+③作图数据源→④动态图表** - -> 与上面不同的是,控件的动态图表在②选择器上,多了一个链接单元格。 -> 个人理解,因为控件是漂浮在单元格之上的对象,不方便利用控件进行运算,于是就有了链接单元格。把控件的不懂选择翻译成链接单元格显示。 - -### **E06.复选框** - -控件-复选框动态图表有5要素:**①数据源+②多个选择器+②多个链接单元格+③作图数据源→④动态图表** - -复选框:多个选框控制多个单元格。 - -### **E07.单选框** - -控件-单选框动态图表有5要素:**①数据源+②多个选择器+②1个链接单元格+③作图数据源→④动态图表** - -### E08.动态三维地图 - -版本要求:2016及以上,2013版本可以安装power map插件还能拯救。 - -话不多说,马上看看动态三维效果图↓ - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-5-shen-jing-wang-luo.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-5-shen-jing-wang-luo.md deleted file mode 100644 index e372b3ef..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/ling-hang-duo-lei-da/zhuo-er-jin-sheng-ji-5-shen-jing-wang-luo.md +++ /dev/null @@ -1,77 +0,0 @@ ---- -description: Tesseract ---- - -# 卓尔金升级5——分类网络 - -{% hint style="info" %} -### 使用工具 - -[**TensorFlow**](https://www.tensorflow.org/) **\|** [**TensorBoard**](https://www.tensorflow.org/tensorboard?hl=zh-cn) **\|** [**TensorBoard.dev**](https://tensorboard.dev/) **\|** [**Google Colab**](https://colab.research.google.com/notebooks/intro.ipynb)\*\*\*\* - -[**https://playground.tensorflow.org/**](https://playground.tensorflow.org/)\*\*\*\* - -### 数据来源 - -[MVRV](https://www.qkl123.com/data/mvrv/btc) \| [S2F](https://www.qkl123.com/data/s2f/btc) \| [NVT](https://www.qkl123.com/data/nvt/btc) -{% endhint %} - -[TensorFlow](https://www.tensorflow.org/) \| [TensorBoard](https://www.tensorflow.org/tensorboard?hl=zh-cn) - -[https://playground.tensorflow.org/](https://playground.tensorflow.org/) - -[22 款神经网络的设计和可视化工具](https://www.huaweicloud.com/articles/d90130bfd852a55e505155e381ebfab1.html) - -[Mac版Excel如何添加数据分析功能?](https://answers.microsoft.com/zh-hans/msoffice/forum/all/mac%E7%89%88excel%E5%A6%82%E4%BD%95%E6%B7%BB/4f9c7fcf-ba8a-4f1a-8f00-bc35a43cb480) - -[机器学习-回归问题\(Regression\)](https://zhuanlan.zhihu.com/p/127972563) - -[标准化、归一化、正规化](https://zhuanlan.zhihu.com/p/73080065) - -[一文读懂机器学习分类算法(附图文详解)](https://zhuanlan.zhihu.com/p/82114104) - -[Q&A: 机器学习与金融行业](http://www.fintechgl.com/articles/59) - -![](../../../../.gitbook/assets/a4%20%281%29.png) - -## 卓尔金历法 - -我们之前所说的卓尔金历法,解决的是二维空间中的分类问题, - -使用的方法是逻辑回归LR,使用的激活函数是sigmoid函数 - -二维空间,指的是 MVRV,S2F月预测价格/价格, 这两个变量,经过规整化,90%概率分布于(-1,1)后,构成的空间, - -喂进去的训练数据是,经过数学处理,90%概率分布于(-1,2)的,基于(50天后的涨跌幅分布)的训练数据。 - -模型的预计输出结果是,(-1,2)的仓位控制策略模型, - -这个模型被称为:卓尔金历法,或,二向箔。 - -问题已经被Excel解决,但是不具有扩展性。 - -## 宇宙魔方 - -我们现在这个问题属于三维空间中的,分类问题, - -使用的方法是逻辑回归LR,使用的激活函数是sigmoid函数 - -三维空间,指的是 MVRV,S2F月预测价格/价格,NVT的90日均线, 这三个变量,经过规整化,90%概率分布于(-1,1)后,构成的空间, - -喂进去的训练数据是,经过数学处理,90%概率分布于(-1,2)的,基于(50天后的涨跌幅分布)的训练数据。 - -模型的预计输出结果是,(-1,2)的仓位控制策略模型, - -这个模型被称为:宇宙魔方(Tesseract) - -问题的模型已经建立了,解决起来就只是时间问题了。 -考虑使用[TensorFlow](https://www.tensorflow.org/) \| [TensorBoard](https://www.tensorflow.org/tensorboard?hl=zh-cn)解决此问题。 - -## 规整化算法 - -第一步:去指数转线性,y = LN\(x/x的几何平均数\), -第二步:Logistic 模式 ,y = 1/\(1+e^\(-x\)\) -第三步:z-score 标准化,y=\(x-μ\)/σ - -只要经过这三步处理,不管之前是怎样分布的数据,都会转化为标准正态分布。 - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/README.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/README.md deleted file mode 100644 index 632a995b..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/README.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -description: the Haab Calendar ---- - -# 战术资产配置——哈布历⌚️ - -![](../../../../.gitbook/assets/qq20210625-3.jpg) - -{% hint style="info" %} -[卓尔金+哈布飞船](https://share.weiyun.com/O2bZwwMx) - -[卓尔金+哈布飞船\(1\)](https://share.weiyun.com/kqakKw4y) -{% endhint %} - -> **给岁月以文明,而不是给文明以岁月。** -> -> ——《三体》- 刘慈欣 - -{% hint style="info" %} -Disclaimer: **Any information found on this page is not to be considered as financial advice. You should do your own research before making any decisions.** -{% endhint %} - -{% hint style="success" %} -哈布历法是战术资产配置,用来配置微观的流动性挖矿1:1交易对的比例。 - -目前仅支持三个币种。更多币种的策略正在研究中…… - -## 哈布历法的结构: - -### 哈布历法包括两点 - -#### 哈布历法1层次: - -如何寻找最小变动仓位的调仓路径,来寻找三个货币的最优调仓路径。(变动比例最小) - -#### 哈布历法2层次: - -如何找到最优的比例,塞进币安流动性挖矿里面。 -{% endhint %} - -![](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210520-xia-wu-5.40.07.png) - -## 哈布历介绍 - -画一个三角形,边代表币种。 - -三角形边的长度代表币种的比例。 - -那么,一个顶点就是两个边相交,也就是两个币种相交, - -也就是说,三角形一个顶点代表一个交易对。 - -那么现在所求的就是,在三角形上,以顶点为圆心画三个圆,让他们相切。 - -圆的半径乘2就是各个流动性挖矿交易对的比例。 - -每个边所对的角, 比如“边a”所对的“角A”,实际上“边a”所对的“角A”,“顶点A”的意思是“边b”和“边c”的交点,也就是交易对B&C 这就是A=B&C的意思。 注意,这里边代表币种,顶点代表交易对。 - -因为我们已知的是币种之间的比例,求交易对的比例。 - -所以只能让边代表币种,边的长度代表币种的比例。 交易对的比例通过画三个相切圆来求得。 - -边代表币种,顶点和相切圆代表流动性挖矿交易对。 - -![](../../../../.gitbook/assets/image%20%2824%29.png) - -![](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210520-xia-wu-5.42.35.png) - -![](../../../../.gitbook/assets/ping-mu-kuai-zhao-20210520-xia-wu-8.29.59.png) - -## 延伸阅读 - -[在币圈进行动态平衡的细节化思考](https://guhhhhaa.gitbook.io/joinquant/joinquant/zai-bi-quan-jin-hang-dong-tai-ping-heng-de-xi-jie-hua-si-kao) - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/ha-bu-li-fa-gou-xiang-1.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/ha-bu-li-fa-gou-xiang-1.md deleted file mode 100644 index 0d11ce89..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/ha-bu-li-fa-gou-xiang-1.md +++ /dev/null @@ -1,52 +0,0 @@ -# 哈布历法2层次 - -1,货币顶点是有权重的,权重表示以美元计价的仓位价值。 - -2,定义顶点的余数表示币种除流动性挖矿之外的剩余仓位。 - -顶点的余数除以顶点的度,被分配给每一个边,被称为边的固有值。其余被称为边的贡献。 - -每一个相邻顶点的贡献相等。 - -边的长度=顶点1的固有值+顶点1的贡献+顶点2的固有值+顶点2的贡献。 - -其中,对于每个边,顶点1的贡献=顶点2的贡献。 - -顶点的余数大于等于0,顶点的贡献大于等于0, - -每个边的长度等于流动性挖矿的美元计价价值, - -3,现在要求 - -1,最大化顶点的贡献之和, 2,在满足1的条件下,最小化 顶点的固有值之和, 3,在满足1和2的条件下,最大化 边的长度的几何平均数。 - -求各个边的长度。 - -这个规划算法? - -[https://zhuanlan.zhihu.com/p/61531510](https://zhuanlan.zhihu.com/p/61531510) - -EXCEL的规划求解模块是一款以可选加载项的方式随微软Office软件一同发行的求解《运筹学》问题的专业软件的免费版本,内置单纯型法、对偶单纯型法、分支定界算法、广义既约梯度算法和演化算法,能够用于求解线性规划、整数规划和非线性规划问题,操作简单,求解迅速。 - -## - -准备升级哈布历法,抽象三个层次,1,穿越星门, 2,三星系统, 3,单星系统。 - -单星系统将结合使用同架策略。 - -三星系统将同时使用哈布历法的第一阶段和第二阶段。 - -## - -下一步应用主要的研究方向是,应用矩阵,比如线性代数,齐次坐标系,等等。 - -从图的邻接矩阵开始研究。 - -首先要研究元素,向量,二维矩阵,三维矩阵和高维矩阵(张量) - -但是现在用不到那些,现在只是研究图的二维邻接矩阵,只不过矩阵的阶数是N阶的。 - -现在把顶点定义为交易对,把边定义为货币。 - -其实这样是错的,应该把顶点定义为货币,把边定义为交易对。 - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/ha-bu-li-fa-yan-jiu.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/ha-bu-li-fa-yan-jiu.md deleted file mode 100644 index e12db5be..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/ha-bu-li-fa-yan-jiu.md +++ /dev/null @@ -1,41 +0,0 @@ -# 哈布历法1层次 - - - -{% hint style="info" %} -[卓尔金+哈布飞船](https://share.weiyun.com/O2bZwwMx) - -[卓尔金+哈布飞船\(1\)](https://share.weiyun.com/kqakKw4y) -{% endhint %} - - - -所有可能的点都落在x\_1+x\_2+…+x\_n=1这个n维空间中的超平面上。 - -每次只能移动x\_i,x\_j两个维度上的变量,且保持其他变量不变。 - -求\(x\_1\_0,x\_2\_0,…,x\_n\_0\)到\(x\_1\_m,x\_2\_m,…,x\_n\_m\)之间的最短路径。 - -首先可以得到m=n-1 - -就是只能在n-1步骤之内解决此问题 - -另外由于每次只移动两个变量。所以每次都可以看作是一条直线和一个超平面的交点。 - -而且,每移动一次,这个超平面就被降维一次,直到最后被降维成0,就移动结束了。 - -![](../../../../.gitbook/assets/hb1.png) - -Guhhhhaa:也许银河系只是根据一个高维空间内的最短路径产生的螺旋结构。 -若尘:哈哈,某种意义上讲你说的不错,根据相对论,万有引力下的物体总是沿着闵科夫斯基空间中的最短路径运动 - -![](../../../../.gitbook/assets/hb2.png) - -![](../../../../.gitbook/assets/hb3.png) - -![](../../../../.gitbook/assets/hb4.png) - -![](../../../../.gitbook/assets/st1.png) - -![](../../../../.gitbook/assets/st2.png) - diff --git a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/yi-fei-qi.md b/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/yi-fei-qi.md deleted file mode 100644 index 970480c3..00000000 --- a/qian-xian/management-cockpit-operation/zi-chan-pei-zhi/zhan-shu-zi-chan-pei-zhi/yi-fei-qi.md +++ /dev/null @@ -1,50 +0,0 @@ -# 已废弃 - -{% hint style="danger" %} -由于分割多边形后内接圆不共点,因此废弃此策略。 -{% endhint %} - -![](../../../../.gitbook/assets/image%20%2826%29.png) - -如图所示,根据哈布历法的第二层次。 - - - -如果有三个货币,就会产生 - -3个一级交易对, - - - -如果有四个货币,就会产生 - -2个二级交易对, 2个一级交易对。 - - - -如果有五个货币,就会产生 - -1个三级交易对, 2个二级交易对, 2个一级交易对。 - - - -如果有6个货币,就会产生 - -1个四级交易对, 3个二级交易对, 2个一级交易对。 - -或者 - -3个三级交易对, 3个一级交易对。 - - - -这就是所谓的三生万物。 - -```text -3 - 3,3*1 -4 - 6,2*2 + 2*1 -5 - 9,1*3 + 2*2 + 2*1 -6 - 12,1*4 + 3*2 + 2*1 or 3*3 + 3*1 -N - (N-2)*3, 1*(N-2)+(N-3)*2 + 2*1或者更加复杂的情况。 -``` - diff --git a/qian-xian/research-institute-development/README.md b/qian-xian/research-institute-development/README.md deleted file mode 100644 index fe2966bf..00000000 --- a/qian-xian/research-institute-development/README.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -description: Research Institute (Development) ---- - -# LV4-研究院 \(架构\) 🔬 - -## 👩‍🔬 👨‍🔬 ➡️ 三角套利研究院 ⚠️ ☢️ ☠️ 🔥 💥 🧪 🔬 💻——黑洞计划 - -![](../../.gitbook/assets/bfm-unity-hei-dong-tan-suo-.png) - -{% hint style="info" %} -我们在尝试部署[**BellmanFord算法**](https://www.bfm-unity.com/what-is-bfm-al)在[**币安**](https://www.binance.com/cn)上或者Uniswap上,进行单交易所内部多币种的多角套利。 - -如果在[**币安**](https://www.binance.com/cn)上运行,需要对接交易所API。使用[**python**](https://www.python.org/downloads/),ccxt,asyncio,通过异步并发协程的方式运行[Bellman-Ford算法](https://www.bfm-unity.com/what-is-bfm-al),以寻找套利路径。 - -我们发现了一个可以参考的项目:Peregrine,它可以**打印**出一个套利路径,但是没有**执行**下单的程序。 - -我们需要参考Peregrine的代码,自己编写并添加这个**执行**下单的程序。 -{% endhint %} - -![](../../.gitbook/assets/bfm-unity-zhan-lve-mu-biao-kai-fa-xing-bei-.png) - -{% hint style="info" %} -[**BellmanFord算法**](https://www.bfm-unity.com/what-is-bfm-al) **+** [**参考文献**](https://www.bfm-unity.com/what-is-bfm-al/bfm-al-ckwx) **+** [**三角套利核心代码**](https://www.bfm-unity.com/ruan-jian-bfm-on-python) **+** [**陵墓**](https://www.bfm-unity.com/what-is-bfm-al/lo-st) **+** [**量子退火和FPGA**](https://guhhhhaa.gitbook.io/bfm-unity-doc-v1/bfm-suan-fa-de-wei-lai-fa-zhan-wei-wan-cheng)\*\*\*\* - -千千的搬砖之王策略 \| [**视频**](https://mp.weixin.qq.com/s/MsXdWAGJR0Kl9BPIUPxQgA) **\|** [**代码**](https://guhhhhaa.gitbook.io/bfm-unity-doc-v1/ruan-jian-bfm-on-python/qian-qian-de-liang-hua-shi-jie-hou-ban-dai-ma) -****BellmanFord三角套利策略,是千千搬砖之王策略的算法升级版 - -千千的其它视频:[**上篇**](https://mp.weixin.qq.com/s/lVqcoBvtmyLaohz7DLtIoA) **\|** [**下篇**](https://mp.weixin.qq.com/s/6qL4redQ3lFiNvZOowpBaA) **\|** [**部署**](https://mp.weixin.qq.com/s/6bKVOqcYppqta3zRdMtvWA) **\|** [**回测**](https://mp.weixin.qq.com/s/Ju4XFDHTq7wk2wokArmKGw) **\|** [**三角套利策略介绍**](https://mp.weixin.qq.com/s/G5t7TyIyrH40Kl55feTDIw)\*\*\*\* - -[**宝塔面板**](https://www.bt.cn/)**(**[**安装教程**](https://www.bt.cn/bbs/thread-19376-1-1.html)**) \|** [**阿里云**](https://www.aliyun.com/) **\|** [**腾讯云**](https://cloud.tencent.com/) - -**相关知乎问题:** - -* [Bellman-Ford算法是如何用于三角套利的?](https://www.zhihu.com/question/360354203) -* [如何利用云计算(如AWS,阿里云,腾讯云)部署FPGA实例,用于BellmanFord三角套利?](https://www.zhihu.com/question/448419550) - -我已经[**联系币安**](https://www.binance.com/zh-CN/my/user-support/feedback/entry)让他们自己研发三角套利策略了,不知道以[**币安**](https://www.binance.com/cn)的研发实力,会不会搞出一个功能,让散户人人都可以参与三角套利,这样散户只需要投资就行了,不需要研究技术。 -{% endhint %} - -![](../../.gitbook/assets/b49d19a6fef2385395ae687a10007929.png) - -## **导游** - -{% page-ref page="dao-you.md" %} - -## **总架构** - -{% page-ref page="xiao-bai-xue-cheng/" %} - -{% page-ref page="suan-fa-yan-jiu-yuan.md" %} - -{% page-ref page="api-jie-kou-yan-jiu-yuan/" %} - -{% page-ref page="yi-bu-bing-fa-xie-cheng-1/" %} - -{% page-ref page="kai-yuan-xiang-mu-yan-jiu-yuan/" %} - -## - diff --git a/qian-xian/research-institute-development/api-jie-kou-yan-jiu-yuan/README.md b/qian-xian/research-institute-development/api-jie-kou-yan-jiu-yuan/README.md deleted file mode 100644 index cf371584..00000000 --- a/qian-xian/research-institute-development/api-jie-kou-yan-jiu-yuan/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# 正黄 · API接口技术分院👩‍🚀👨‍🚀 - diff --git a/qian-xian/research-institute-development/api-jie-kou-yan-jiu-yuan/bi-an-duo-bi-zhong-zi-dong-hua-ce-lve-api-cao-zuo-zhi-nan.md b/qian-xian/research-institute-development/api-jie-kou-yan-jiu-yuan/bi-an-duo-bi-zhong-zi-dong-hua-ce-lve-api-cao-zuo-zhi-nan.md deleted file mode 100644 index 709bf78e..00000000 --- a/qian-xian/research-institute-development/api-jie-kou-yan-jiu-yuan/bi-an-duo-bi-zhong-zi-dong-hua-ce-lve-api-cao-zuo-zhi-nan.md +++ /dev/null @@ -1,416 +0,0 @@ -# 币安API实验室🚩 - -币安API文档 - -[https://www.binance.com](https://www.binance.com/) - -[https://binance-docs.github.io/apidocs/spot/cn/](https://binance-docs.github.io/apidocs/spot/cn/) -[![](https://github.com/fluidicon.png)sammchardy/python-binance-chain](https://github.com/sammchardy/python-binance-chain/) -[![](https://github.com/fluidicon.png)binance-exchange/binance-official-api-docs](https://github.com/binance-exchange/binance-official-api-docs) - -## [币安多币种自动化策略API操作指南](https://zhuanlan.zhihu.com/p/55109087) - -币安虽然成立时间不长,但由于技术出色,API稳定高效,请求频率限制也宽松,上币很多,交易活跃,已经是现货交易的首选平台。币安目前仅以BTC定价的币种就超过了150种,还在不断增加中,这使得获取很多币种行情和K线变的困难。本文将主要介绍如何在FMZ量化平台上操作多币种策略,甚至操作所有币种都没问题,主要面向有一定基础的用户。 - -## **1.获取行情** - -假如要同时操作150个币种,使用REST协议获取行情显然不合适,一遍轮询下来会浪费很多时间,websocket也无法同时订阅如此多的币种。币安意识到多品种策略获取行情的问题,提供了聚合行情接口,但直接使用这个REST接口(/api/v1/ticker/24hr)需要注意,它的权重是40,意思是一次访问相当于普通访问的40次,即使5、6秒访问这个接口一次,也有可能超出限制。 - -因此我们需要访问这个接口的websocket版,但要注意由于数据量巨大,数据只是固定1s推送一次有行情变化的数据,对于一些几分钟也没交易的冷门币种,可能很长时间也没推送,固定的推送时间对于高频策略也不合适,但对于一般的多币种策略是足够的。具体代码如下: - -```cpp -function main() { - var client = Dial("wss://stream.binance.com:9443/ws/!ticker@arr"); - while (true){ - var data = client.read(); - var msg = JSON.parse(data); - updateTicker(msg);//updateTicker函数处理行情和交易,接下来介绍 - } -} -``` - -## **2.交易前的准备** - -币安对交易的限制很多,最小交易价值,最小交易量,价格精度,交易量精度。这些都需要提前做好准备。 - -定义的全局变量: - -```cpp -var totalbtc = 0;//总价值,不一定是btc -var baseCoin = ['BTC', 'ETH', 'BNB', 'USDT'][baseCoin_select];//基础货币选择baseCoin_select是下拉框的一个参数 -var exceptList = Except_list_string.split(',');//排除的币种,Except_list_string是策略参数 -//K线周期选择PERIOD_M1,PERIOD_M5是FMZ默认的全局变量 -var period = [PERIOD_M1, PERIOD_M5, PERIOD_M15, PERIOD_M30, PERIOD_H1, PERIOD_H1, PERIOD_D1][period_select] -var periodSecond = [60, 300, 900, 1800, 3600, 3600*24][period_select]//各周期对应的秒数 -var lastPeriodTime = 0;//最近周期时间,用于更新K线 -var updateProfitTime = 0//最近更新收益时间,用于更新收益 -var buyList = []//买单列表 -var sellList = []//卖单列表 -var accountInfo = {};//用于储存交易相关的数据列表 -``` - -接下来主要是完善accountInfo的内容,所有与交易对相关的内容都储存到其中。 - -```cpp -if (!_G('accountInfo')){//如果accountInfo没有储存在数据库里,重新获取数据 - var exchangeInfo = JSON.parse(HttpQuery('https://api.binance.com/api/v1/exchangeInfo'));//获取交易相关数据 - var ticker = JSON.parse(HttpQuery('https://api.binance.com/api/v1/ticker/24hr'));//先用rest协议获取一次全量ticekr - var tradeSymbol = exchangeInfo.symbols.filter(function(x){return x.quoteAsset == baseCoin});//筛选需要的交易对 - accountInfo[baseCoin] = {free:0, frozen:0, last:1, value:0};//基础货币的信息 - for (var i=0; i= 0){ - continue;//过滤掉踢出的币种 - } - for (var j=0; j periodSecond){ - for (var symbol in accountInfo){ - if(symbol != baseCoin){ - //如果某交易对的K线差太多,就重新获取一次,可能是交易不活跃,ticker没推送 - if(parseFloat(msgTime)/1000 - accountInfo[symbol].records[accountInfo[symbol].records.length-1].Time/1000 > 1.5*periodSecond){ - var currency = symbol + '_' + baseCoin; - exchange.IO("currency", currency) - var records = exchange.GetRecords(period) - if(records){ - accountInfo[symbol].records = exchange.GetRecords(period) - } - Log(symbol, 'K线有缺失,重新获取') - }else{ - //推送一根新K线 - accountInfo[symbol].records.push({"Time":parseInt(lastPeriodTime + periodSecond)*1000, "Open":accountInfo[symbol].last, "High":accountInfo[symbol].last, - "Low":accountInfo[symbol].last, "Close":accountInfo[symbol].last, "Volume":0}) - } - } - } - lastPeriodTime = lastPeriodTime + periodSecond - Log(parseFloat(msgTime)/1000, '添加K线') - }else{ - //如果在当前K线周期内,更新当前K线 - for (var symbol in accountInfo){ - if(symbol != baseCoin){ - var length = accountInfo[symbol].records.length - accountInfo[symbol].records[length-1].Close = accountInfo[symbol].last - accountInfo[symbol].records[length-1].Volume += accountInfo[symbol].volume - if(accountInfo[symbol].last > accountInfo[symbol].records[length-1].High){ - accountInfo[symbol].records[length-1].High = accountInfo[symbol].last - } - else if(accountInfo[symbol].last < accountInfo[symbol].records[length-1].Low){ - accountInfo[symbol].records[length-1].Low = accountInfo[symbol].last - } - } - } - } -} -``` - -## **4.交易相关函数** - -```c -//取消当前交易对订单 -function CancelPendingOrders() { - var orders = _C(exchange.GetOrders); - for (var j = 0; j < orders.length; j++) { - exchange.CancelOrder(orders[j].Id, orders[j]); - } -} -//取消所有交易对订单 -function cancellAll(){ - try{ - var openOrders = exchange.IO('api', 'GET', '/api/v3/openOrders'); - for (var i=0; i accountInfo[symbol].minQty && buyPrice*buyAmount > accountInfo[symbol].minNotional){ - if (accountInfo[baseCoin].free < buyPrice*buyAmount){return;}//有足够的基础货币购买 - var id = exchange.Buy(buyPrice, buyAmount, currency);//最终下单 - if(id){ - accountInfo[symbol].buyprice = buyPrice; - accountInfo[symbol].state = 1; - } - } - } - //如果买单过多,需要休眠,币安1s最多下10单 - if(buyList.length > 5){ - Sleep(200) - } - } -} -//下卖单原理与买单相似 -function toSell(){ - if (sellList.length == 0){ - return; - } - for (var i=0; i accountInfo[symbol].minQty && sellPrice*sellAmount > accountInfo[symbol].minNotional){ - var id = exchange.Sell(sellPrice, sellAmount, currency); - if(id){ - accountInfo[symbol].state = 1; - accountInfo[symbol].sellPrice = sellPrice; - } - } - if(sellList.length > 5){ - Sleep(200) - } - } -} -``` - -## **5.交易的逻辑** - -交易很简单,只要把买卖的币种推送到buyList和sellList中就可以了 - -```cpp -function checkTrade(){ - buyList = [] - sellList = [] - for(var symbol in accountInfo){ - if(symbol == baseCoin){ - continue - } - var length = accountInfo[symbol].records.length - //简单均线,只做一个简单的演示例子,不要实盘使用,自己交易咯及放在这里就可以了 - var fast = TA.MA(accountInfo[symbol].records, FastPeriod)[length-1] - var slow = TA.MA(accountInfo[symbol].records, SlowPeriod)[length-1] - if(accountInfo[symbol].value > 2*accountInfo[symbol].minNotional && fast < 0.99*slow){ - sellList.push(symbol) - } - //HoldAmount策略参数 - if(accountInfo[symbol].value < 0.9*HoldAmount && fast > 1.01*slow){ - buyList.push(symbol) - } - } -} -``` - -## **6.更新机器人界面状态和ticker** - -这么多交易币种如何展示也是个问题,幸好FMZ量化平台提供了完善的表格功能,还可以按照数字大小排序,简单直观方便。每次websocket推送ticker时更新,由于是事件驱动,交易和各类更新的逻辑也放在这里。 - -```cpp -function updateStatus(msgTime){ - //具体要展示的数据信息可以自己定义 - var table = {type: 'table', title: '持仓信息', - cols: ['币种', 'Bid', 'Ask','Last', '最低价','最高价','涨幅','成交量','买入价','卖出价', '冻结','可用','现值'], - rows: []}; - for (var symbol in accountInfo){ - if(symbol == baseCoin){ - var infoList = [symbol,0, 0, 1,0, 0, 0,0, 0, 0, 0, _N(accountInfo[symbol].frozen,4),_N(accountInfo[symbol].free,4), _N(accountInfo[symbol].value,5)]; - }else{ - var infoList = [symbol,accountInfo[symbol].bid, accountInfo[symbol].ask, accountInfo[symbol].last, - accountInfo[symbol].lowPrice, accountInfo[symbol].highPrice, accountInfo[symbol].priceChangePercent, - _N(accountInfo[symbol].volume,2), accountInfo[symbol].buyPrice, accountInfo[symbol].sellPrice, - _N(accountInfo[symbol].frozen,4),_N(accountInfo[symbol].free,4), _N(accountInfo[symbol].value,5)]; - } - table.rows.push(infoList); - } - var logString = _D() + ' 净值为:' + _N(totalbtc,6) + (typeof(msgTime) == 'number' ? (', 最新行情时间: ' + _D(msgTime)) : '') + '\n'; - logString += '将要买入的币:' + buyList.join(',') + ' \n'; - logString += '将要卖出的币:' + sellList.join(',') + ' \n'; - logString += '当前可用'+ baseCoin + ':' + _N(accountInfo[baseCoin].free,6) + ',冻结:' + _N(accountInfo[baseCoin].frozen,6) + '\n'; - LogStatus(logString + '`' + JSON.stringify(table) + '`');//更新到机器人界面 -} -//每次推送ticker时更新,由于是事件驱动,交易和各类更新的逻辑也放在这里 -function updateTicker(msg){ - var ticker = msg; - var msgTime = 0; - for (var i=0; i LogProfitTime*1000){ - updateAccount(); - updateProfitTime = Date.now();//重置收益时间 - LogProfit(totalbtc);//更新收益 - } - updateRecords(msgTime)//更新K线 - updateTotalBTC();//更新总市值 - updateStatus(msgTime);//更新机器人状态 - checkTrade()//检查需要下哪些订单 - toBuy();//下买单 - toSell();//下买单 -} -``` - -## **7.执行汇总** - -```python -function main() { - cancellAll(); - initRecords() - updateAccount(); - updateTotalBTC() - Log('共交易数字货币:', Object.keys(accountInfo).length-1); - updateStatus(); - var client = Dial("wss://stream.binance.com:9443/ws/!ticker@arr"); - while (true){ - var data = client.read(); - var msg = JSON.parse(data); - updateTicker(msg); - } -} -``` - -## **8.总结** - -本文主要展示了一个基础的币安多币种交易框架,主要包含了如何储存交易信息、如何根据ticker合成K线、如何下单、如何展示策略图表以及基于ticker推送事件触发交易等。可以更改和定制的地方很多,整体由我个人策略摘录而来,可能隐含Bug,仅供有一定基础的用户参考。 - - -## 若尘的意见 - -> 我随便说一点 -> -> 要想套利,肯定要实时获得价格 -> -> 用普通的api,效率太低,有速率限制(一天200000次,一次只能查一个交易对) -> -> 所以必须用websocket -> -> 而且不能用价格推流,因为那个一秒更新一次 -> -> 你需要接受所有成交和挂单信息,在本地维护一个订单簿 -> -> 这是不小的工作量,努力吧 -> -> github上应该直接有套利机 -> -> python的肯定也有 - diff --git a/qian-xian/research-institute-development/dao-you.md b/qian-xian/research-institute-development/dao-you.md deleted file mode 100644 index a8d49b4b..00000000 --- a/qian-xian/research-institute-development/dao-you.md +++ /dev/null @@ -1,62 +0,0 @@ -# 导游 - -## 〇,策略学习🚩 - -[**三角套利策略介绍**](https://mp.weixin.qq.com/s/G5t7TyIyrH40Kl55feTDIw) **+** [**考虑交易成本的三角套利**](https://www.jianshu.com/p/e50a52312a47)\*\*\*\* - -[**BellmanFord算法**](https://www.bfm-unity.com/what-is-bfm-al) **+** [**参考文献**](https://www.bfm-unity.com/what-is-bfm-al/bfm-al-ckwx)\*\*\*\* - -{% page-ref page="suan-fa-yan-jiu-yuan.md" %} - -## 一,环境搭建🚩 - -{% page-ref page="xiao-bai-xue-cheng/" %} - -{% page-ref page="xiao-bai-xue-cheng/ben-di-kai-fa-huan-jing.md" %} - -### **量化框架** - -{% page-ref page="kai-yuan-xiang-mu-yan-jiu-yuan/" %} - -[**CCXT**](https://github.com/ccxt/ccxt) **\|** [**Peregrine**](https://github.com/wardbradt/peregrine)**(**[**文档**](https://guhhhhaa.gitbook.io/peregrine/)**)\|** [**AIOQuant**](https://github.com/CongZhengithub/aioquant)**(**[**视频**](https://space.bilibili.com/479971824)**)\|** [**TheNextQuant**](https://thenextquant.com/intro)**(已下架)** - -{% page-ref page="kai-yuan-xiang-mu-yan-jiu-yuan/liang-hua-kuang-jia-tui-jian-ke-cheng.md" %} - -## 二,对接准备 - -{% page-ref page="api-jie-kou-yan-jiu-yuan/" %} - -{% page-ref page="api-jie-kou-yan-jiu-yuan/bi-an-duo-bi-zhong-zi-dong-hua-ce-lve-api-cao-zuo-zhi-nan.md" %} - -[**币安多币种自动化策略API操作指南**](https://zhuanlan.zhihu.com/p/55109087) **(**[**本地链接**](https://www.bfm-unity.com/command-room-discovery/san-jiao-tao-li-shi-yan-shi/bi-an-duo-bi-zhong-zi-dong-hua-ce-lve-api-cao-zuo-zhi-nan)**)** - -## 三,代码**参考** - -{% page-ref page="kai-yuan-xiang-mu-yan-jiu-yuan/" %} - -{% page-ref page="kai-yuan-xiang-mu-yan-jiu-yuan/peregrine-shi-yan-shi.md" %} - -{% page-ref page="kai-yuan-xiang-mu-yan-jiu-yuan/btrader-shi-yan-shi.md" %} - -[币圈搬砖、数字货币量化套利,从入门到实战(六)三角搬砖](https://www.jianshu.com/p/14dbaa02777a) - -[**数字货币量化系统 CCXT 框架实战三角套利**](http://www.digtime.cn/articles/282/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li)**(**[**本地链接**](https://www.bfm-unity.com/command-room-discovery/san-jiao-tao-li-shi-yan-shi/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li)**)**[**课程地址**](https://study.163.com/course/courseMain.htm?courseId=1006162003)\*\*\*\* - -{% embed url="https://guhhhhaa.gitbook.io/arbitrage-github/" %} - -[**三角套利核心代码**](https://www.bfm-unity.com/ruan-jian-bfm-on-python) **+** [**陵墓**](https://www.bfm-unity.com/what-is-bfm-al/lo-st) - -### **技术难点** - -{% page-ref page="yi-bu-bing-fa-xie-cheng-1/" %} - -## **四,FPGA** - -[用这个库居然可以使用Python进行FPGA逻辑开发](https://zhuanlan.zhihu.com/p/56095014) - -[**量子退火和FPGA**](https://guhhhhaa.gitbook.io/bfm-unity-doc-v1/bfm-suan-fa-de-wei-lai-fa-zhan-wei-wan-cheng)\*\*\*\* - -## **五,量子退火** - -[**量子退火和FPGA**](https://guhhhhaa.gitbook.io/bfm-unity-doc-v1/bfm-suan-fa-de-wei-lai-fa-zhan-wei-wan-cheng)\*\*\*\* - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/README.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/README.md deleted file mode 100644 index 27152bb0..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# 苍青 · 开源项目工程分院👷‍♀️👷 - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/btrader-shi-yan-shi.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/btrader-shi-yan-shi.md deleted file mode 100644 index 7842ca27..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/btrader-shi-yan-shi.md +++ /dev/null @@ -1,10 +0,0 @@ -# btrader实验室 - -### bmino-BTA & btrader - -{% embed url="https://github.com/bmino/binance-triangle-arbitrage" %} - -{% embed url="https://github.com/gabriel-milan/btrader" %} - - - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/freqtrade-shi-yan-shi.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/freqtrade-shi-yan-shi.md deleted file mode 100644 index 0e212e2d..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/freqtrade-shi-yan-shi.md +++ /dev/null @@ -1,4 +0,0 @@ -# Freqtrade 领域级重点实验室 - -[https://www.freqtrade.io/en/stable/](https://www.freqtrade.io/en/stable/) - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/hummingbot-ling-yu-ji-zhong-dian-shi-yan-shi.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/hummingbot-ling-yu-ji-zhong-dian-shi-yan-shi.md deleted file mode 100644 index 9606ea53..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/hummingbot-ling-yu-ji-zhong-dian-shi-yan-shi.md +++ /dev/null @@ -1,18 +0,0 @@ -# HummingBot领域级重点实验室🚩 - -{% page-ref page="../xiao-bai-xue-cheng/ben-di-kai-fa-huan-jing.md" %} - -## [安装](https://docs.hummingbot.io/installation/linux/) \| [启动](https://docs.hummingbot.io/operation/client/#start-hummingbot-running-in-the-background) \| [策略](https://docs.hummingbot.io/strategies/overview/) \| [挖矿](https://miner.hummingbot.io/) \([英文文档](https://docs.hummingbot.io/)\) - -## [安装](http://hummingbot.cn/2019/05/13/hummingbot-list-of-install-source.html) \| [启动](http://hummingbot.cn/2019/06/17/hummingbot-list-of-operation-cloud.html) \| [策略](http://hummingbot.cn/2019/06/17/strategies-list-of-pure.html) \| ~~挖矿~~ \([中文文档](http://hummingbot.cn/)\) - -{% embed url="https://guhhhhaa.gitbook.io/hummingbot/" %} - -{% embed url="https://www.youtube.com/watch?v=XvG9r5FQgsY" %} - - - -{% embed url="https://github.com/CoinAlpha/hummingbot\_chinese" %} - -{% embed url="https://www.bilibili.com/video/BV1oX4y1g7Kp" %} - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/js-shi-yan-shi-1.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/js-shi-yan-shi-1.md deleted file mode 100644 index a415cbf6..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/js-shi-yan-shi-1.md +++ /dev/null @@ -1,4 +0,0 @@ -# js实验室1 - -[https://github.com/zlq4863947/triangular-arbitrage](https://github.com/zlq4863947/triangular-arbitrage) - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/liang-hua-kuang-jia-tui-jian-ke-cheng.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/liang-hua-kuang-jia-tui-jian-ke-cheng.md deleted file mode 100644 index 5f10fd7e..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/liang-hua-kuang-jia-tui-jian-ke-cheng.md +++ /dev/null @@ -1,78 +0,0 @@ -# AIOQuant 实验室 - -## 课程地址 - -#### [https://github.com/JiaoziMatrix/aioquant](https://github.com/JiaoziMatrix/aioquant) - -#### [https://github.com/CongZhengithub/aioquant](https://github.com/CongZhengithub/aioquant) - -#### [https://study.163.com/course/courseMain.htm?courseId=1210199432](https://study.163.com/course/courseMain.htm?courseId=1210199432) - -## 来源代码 - -[**https://github.com/JiaoziMatrix/aioquant**](https://github.com/JiaoziMatrix/aioquant) **(已被作者删除)** - -![](../../../.gitbook/assets/0a9d96215fb87cf6f1527fdd9cac586b.jpg) - -#### [https://github.com/paulran/aioquant](https://github.com/paulran/aioquant) - -## 可用代码 - -#### [https://github.com/CongZhengithub/aioquant](https://github.com/CongZhengithub/aioquant) - -#### [https://github.com/CongZhengithub/aioquant/blob/master/aioquant/order.py](https://github.com/CongZhengithub/aioquant/blob/master/aioquant/order.py) - -## 增补三角套利代码 🚩 - -#### [https://github.com/CongZhengithub/aioquant/blob/master/aioquant/order.py](https://github.com/CongZhengithub/aioquant/blob/master/aioquant/order.py) - -#### [https://github.com/CongZhengithub/aioquant/blob/master/aioquant/order.py](https://github.com/CongZhengithub/aioquant/blob/master/aioquant/order.py) - -#### [https://github.com/guhhhhaa/aioquant-add-triangular-arbitrage](https://github.com/guhhhhaa/aioquant-add-triangular-arbitrage) - -#### [https://github.com/guhhhhaa/aioquant-add-triangular-arbitrage/blob/master/example/Issue29/src/strategy/strategy29.py](https://github.com/guhhhhaa/aioquant-add-triangular-arbitrage/blob/master/example/Issue29/src/strategy/strategy29.py) - -#### 推荐课程 - -[第1期 高频交易介绍](https://www.bilibili.com/video/BV1EJ41197Fx/) -[第2期 一分钟上手,开启自己的第一笔程序化交易](https://www.bilibili.com/video/BV1vJ411q799/) -[第3期 利用REST API拉取行情数据](https://www.bilibili.com/video/BV15J411B7bG/) -[第4期 使用实时行情动态挂单](https://www.bilibili.com/video/BV1JJ411i7hH/) -[第5期 API报错 & 订单成交](https://www.bilibili.com/video/BV1nJ411y7zE/) -[第6期 优雅的处理未完成订单](https://www.bilibili.com/video/BV1nJ411175f/) -[第7期 配置文件](https://www.bilibili.com/video/BV1ZJ411k71z/) -[第8期 日志打印](https://www.bilibili.com/video/BV1FJ411C7Ys/) -[第9期 服务心跳 & 协程任务](https://www.bilibili.com/video/BV1pJ411C7dS/) ——————————————🚩 - -![](../../../.gitbook/assets/ping-mu-kuai-zhao-20210311-xia-wu-4.34.59.png) - -[第10期 Order订单模块](https://www.bilibili.com/video/BV1UJ411C7a6/) -[第11期 Trade交易模块](https://www.bilibili.com/video/BV1sJ411r73X/) -[第12期 并发 & 锁](https://www.bilibili.com/video/BV1iJ411677Q/) ————————————————————🚩 -[第13期 Market行情模块 & 行情服务器](https://www.bilibili.com/video/av79695611/) -[第14期 Position合约持仓模块](https://www.bilibili.com/video/av84079197/) -[第15期 现货搬砖套利原理](https://www.bilibili.com/video/av86045742/) -[第16期 分析历史行情数据](https://www.bilibili.com/video/av86060852/) -[第17期 现货搬砖套利策略编写](https://www.bilibili.com/video/av86493743/) -[第18期 行情数据存储](https://www.bilibili.com/video/av88433058/) -[第19期 推送钉钉消息](https://www.bilibili.com/video/av88463345/) -[第20期 Bollinger Bands 布林带策略](https://www.bilibili.com/video/av91044647/) -[第21期 一个简单的做市商策略](https://www.bilibili.com/video/av93027310/) -[第22期 火币永续合约REST API模块](https://www.bilibili.com/video/BV1k5411t7bb/) -[第23期 火币永续合约Trade模块](https://www.bilibili.com/video/BV1GV411Z766/) -[第24期 Market行情系统升级](https://www.bilibili.com/video/BV1rk4y1R7gk/) -[第25期 现货-合约无风险套利](https://www.bilibili.com/video/BV15A411b78b/) -[第26期 合约的无风险套利](https://www.bilibili.com/video/BV1AK4y1k7un/) -[第27期 高阶技巧 - 运行时更新](https://www.bilibili.com/video/BV1Xe411p7Pm/) -[第28期 Triangular Arbitrage 三角套利原理](https://www.bilibili.com/video/BV1WZ4y1W77F/) -[第29期 Triangular Arbitrage 三角套利策略编写](https://www.bilibili.com/video/BV1zz411i7xW/) -[第30期 高效的交易方式](https://www.bilibili.com/video/BV1Ai4y1x7Z3/) -[第31期 高阶技巧 - ClientOrderId的用法](https://www.bilibili.com/video/BV1dA411v72d/) -[第32期 高阶技巧 - 订单类型的高级用法](https://www.bilibili.com/video/BV12K411n7GC/) -[第33期 Trade模块的强大功能让你的策略如虎添翼](https://www.bilibili.com/video/BV1WZ4y1u7KF) -[第34期 AIOQuant到底有何不同?](https://www.bilibili.com/video/BV17t4y1X74P/) -[第35期 搭建本地量化策略研发环境](https://www.bilibili.com/video/BV1w54y1B7ZH/) -[第36期 远程部署策略之服务器选购](https://www.bilibili.com/video/BV1m54y1S7Eg/) -[第37期 远程部署策略之服务器环境搭建](https://www.bilibili.com/video/BV1Y64y1c7CV/) -[第38期 远程服务器部署量化策略](https://www.bilibili.com/video/BV1zK4y1v7qX/) - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/peregrine-shi-yan-shi.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/peregrine-shi-yan-shi.md deleted file mode 100644 index e4acbacf..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/peregrine-shi-yan-shi.md +++ /dev/null @@ -1,10 +0,0 @@ -# Peregrine 领域级重点实验室🚩 - -### P**eregrine** - -{% embed url="https://github.com/wardbradt/peregrine" %} - -{% embed url="https://guhhhhaa.gitbook.io/peregrine/" %} - - - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/py-zhong-dian-shi-yan-shi.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/py-zhong-dian-shi-yan-shi.md deleted file mode 100644 index 94b7763d..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/py-zhong-dian-shi-yan-shi.md +++ /dev/null @@ -1,4 +0,0 @@ -# py重点实验室 - -[https://github.com/Hephyrius/Binance-Triangular-Arbitrage-Bot](https://github.com/Hephyrius/Binance-Triangular-Arbitrage-Bot) - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shi-yan-shi-2.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shi-yan-shi-2.md deleted file mode 100644 index 794349e2..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shi-yan-shi-2.md +++ /dev/null @@ -1,4 +0,0 @@ -# 实验室2 - -[https://github.com/Roibal/Cryptocurrency-Trading-Bots-Python-Beginner-Advance](https://github.com/Roibal/Cryptocurrency-Trading-Bots-Python-Beginner-Advance) - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/README.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/README.md deleted file mode 100644 index 9f9c154e..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/README.md +++ /dev/null @@ -1,225 +0,0 @@ -# CCXT 领域级重点实验室🚩 - -[**数字货币量化系统 CCXT 框架实战三角套利**](http://www.digtime.cn/articles/282/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li) **\|** [**本地链接**](https://www.bfm-unity.com/command-room-discovery/san-jiao-tao-li-shi-yan-shi/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li) **\|** [**课程地址**](https://study.163.com/course/courseMain.htm?courseId=1006162003) **\|** [**源码**](https://github.com/guhhhhaa/Bitcoin-Quant/tree/main)\*\*\*\* - -\*\*\*\*[**CCXT中文文档**](http://cw.hubwiz.com/card/c/ccxt-dev-manual/1/1/1/) **\|** [**CCXT英文文档**](https://github.com/ccxt/ccxt/wiki)\*\*\*\* - -[**CCXT公有API课程**](https://www.bilibili.com/video/av57636895/) **🚩** - -[**CCXT私有API课程**](https://www.bilibili.com/video/BV1L4411w7iv/) **🚩** - -\*\*\*\*[**CCXT Example - Github**](https://github.com/ccxt/ccxt/tree/master/examples) **🚩** - -{% page-ref page="ccxt-ke-ti-zu-1.md" %} - -{% page-ref page="ccxt-zhong-wen-kai-fa-shou-ce.md" %} - -{% embed url="https://github.com/bilibilihuangyifan/cryptohedging/blob/master/blockhedging.py" %} - -## 数字货币量化系统 CCXT 框架实战三角套利 - -> 本篇博文将使用CCXT来进行三角套利实战。 - -### 原理 - -针对`同一个币种`,由于`计价币种(市场)`不同而带来的`价差`进行套利。 - -**BTC/USDT** - -* 持仓 10000 个USDT -* 可买入 0.7052 个BTC(10000/14179.95) - -**BCH/BTC** - -* 可买入 4.0824个BCH(0.7052/0.172743) - -**BCH/USDT** - -* 卖出所有BCH,得到 10010.6671 个USDT\(4.0824 x 2452.10\) - -**获利** - -* \(10010.6671 - 10000\) / 10000 = 1.06671 ‰ - -![](../../../../.gitbook/assets/37fyootled.png) - -实际套利转化流程: -USDT -> BTC -> BCH -> USDT - -上边的可以通过简单的套利公式计算出套利收益: - -```text -Profit = P3/(P1xP2) - 1 # 公式的推到可以看下边的套利步骤 -``` - -说明: P1 为 BTC/USDT = 14179.95, P2 为 BCH/BTC = 0.172743, P3 为 BCH/USDT = 2452.10, 通过上边的公式即可算的收益率为:2452.10 / \(14179.95 x 0.172743\) - 1 = 0.00106671,可以看到和我们上边通过每笔交易算出来的结果一样。 - -#### 三角套利步骤[\#](http://www.digtime.cn/articles/282/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li#%E4%B8%89%E8%A7%92%E5%A5%97%E5%88%A9%E6%AD%A5%E9%AA%A4) - -![](../../../../.gitbook/assets/u6olvagcrv.png) - -P1 表示 A 的价格,P2 表示 ?的价格,P3 表示 ?/A 的价格 - -#### 注意事项[\#](http://www.digtime.cn/articles/282/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li#%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9) - -* 行情获取的时刻:尽量确保获取的行情数据是`同一时刻`的 -* 交易成本:三个币的手续费,如果扣除手续费后依旧有利润,那木就可以进行套利 - -#### 优势[\#](http://www.digtime.cn/articles/282/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li#%E4%BC%98%E5%8A%BF) - -* 目前市场上大部分套利集中关注双边套利或搬砖,竞争相对比较少 -* 相对来说,套利空间更大,利润也更多 - -#### 劣势[\#](http://www.digtime.cn/articles/282/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li#%E5%8A%A3%E5%8A%BF) - -* 同时监控所有三角套利机会比较难 -* 同时成交的难度更高 -* 对交易系统的并发能力要求很高 - -### 代码实战 - -`tri_arbitrage.py` - -```python -import ccxt -import pandas as pd -import time - -pd.set_option('expand_frame_repr', False) - -def main(): - """ - 主函数 - """ - # 初始化交易所 - binance_exchange = ccxt.binance({ - 'timeout': 15000, - 'enableRateLimit': True, - 'proxies': {'https': "http://127.0.0.1:1087", 'http': "http://127.0.0.1:1087"} - }) - - # 加载行情 - markets = binance_exchange.load_markets() - - # == Step.1 选择两个交易市场 A, B - market_a = 'BTC' - market_b = 'ETH' - # == Step.1 END ================= - - # == Step.2 找到所有同时以 A 和 B 都作为计价的货币 - # 市场内的交易对 - symbols = list(markets.keys()) - - # 存放到DataFrame中 - symbols_df = pd.DataFrame(data=symbols, columns=['symbol']) - - # 分割字符串得到 基础货币/计价货币 - base_quote_df = symbols_df['symbol'].str.split(pat='/', expand=True) - base_quote_df.columns = ['base', 'quote'] - - # 过滤得到以 A, B 计价的计价货币 - base_a_list = base_quote_df[base_quote_df['quote'] == market_a]['base'].values.tolist() - base_b_list = base_quote_df[base_quote_df['quote'] == market_b]['base'].values.tolist() - - # 获取相同的基础货币列表 - common_base_list = list(set(base_a_list).intersection(set(base_b_list))) - print('{}和{}共有{}个相同的计价货币'.format(market_a, market_b, len(common_base_list))) - # == Step.2 END ================= - - # == Step.3 执行套利步骤 - - # 结果保存到DataFrame中,注意,这里的Profit为千分位 ‰(因为利润一般都比较小) - columns = ['Market A', - 'Market B', - 'Market C', - 'P1', - 'P2', - 'P3', - 'Profit'] - - results_df = pd.DataFrame(columns=columns) - - # 获取前一分钟的close价格 - last_min = binance_exchange.milliseconds() - 60 * 1000 # 前一分钟 - - for base_coin in common_base_list: - market_c = base_coin - market_a2b_symbol = '{}/{}'.format(market_b, market_a) - market_b2c_symbol = '{}/{}'.format(market_c, market_b) - market_a2c_symbol = '{}/{}'.format(market_c, market_a) - - # 获取行情前一分钟的K线数据 - market_a2b_kline = binance_exchange.fetch_ohlcv(market_a2b_symbol, since=last_min, limit=1, timeframe='1m') - market_b2c_kline = binance_exchange.fetch_ohlcv(market_b2c_symbol, since=last_min, limit=1, timeframe='1m') - market_a2c_kline = binance_exchange.fetch_ohlcv(market_a2c_symbol, since=last_min, limit=1, timeframe='1m') - - if len(market_a2b_kline) == 0 or len(market_b2c_kline) == 0 or market_a2c_kline == 0: - continue - - try: - - # 获取行情前一分钟的交易对价格 - p1 = market_a2b_kline[0][4] - p2 = market_b2c_kline[0][4] - p3 = market_a2c_kline[0][4] - except IndexError: - continue - - # 价差 - profit = (p3 / (p1 * p2) - 1) * 1000 - - results_df = results_df.append({ - 'Market A': market_a, - 'Market B': market_b, - 'Market C': market_c, - 'P1': p1, - 'P2': p2, - 'P3': p3, - 'Profit': profit - }, ignore_index=True) - - # 显示信息 - print(results_df.tail(1)) - - # 防止超过rate limit - time.sleep(binance_exchange.rateLimit / 1000) - # == Step.3 END ================= - - # 按照收益由高到低排序 - # @see https://www.jianshu.com/p/d12af2b287b6 - results_df = results_df.sort_values(by="Profit", ascending=False) - # print(new_sort) - - results_df.to_csv('./tri_arbitrage_results.csv', index=None) - -if __name__ == '__main__': - main() -``` - -## 运行结果: - -{% embed url="https://nbviewer.jupyter.org/github/guhhhhaa/TensorAct-of-Stars/blob/main/BFM.ipynb" %} - -结果: - -![](../../../../.gitbook/assets/kvc6cwouee.png) - -BTC -> ETH -> AION -> BTC - -通过运行的结果我们可以看到,前几个交易对表现非常好,利润率达到了 59.14 ‰,即将近 6%,除去手续费,还是有利可图的。 - -#### 相关名词说明[\#](http://www.digtime.cn/articles/282/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li#%E7%9B%B8%E5%85%B3%E5%90%8D%E8%AF%8D%E8%AF%B4%E6%98%8E) - -交易对:用一种资产(quote currency)去定价另一种资产(base currency),比如用比特币(BTC)去定价莱特币(LTC), -就形成了一个LTC/BTC的交易对, -交易对的价格代表的是买入1单位的base currency(比如LTC) -需要支付多少单位的quote currency(比如BTC), -或者卖出一个单位的base currency(比如LTC) -可以获得多少单位的quote currency(比如BTC)。 -当LTC对BTC的价格上涨时,同等单位的LTC能够兑换的BTC是增加的,而同等单位的BTC能够兑换的LTC是减少的。 - -base currency:基准资产 -quote currency:定价资产 - -在外汇交易中,每一次交易买卖是同时在进行着的,在买进基本货币(Base currency)的同时也卖出了报价货币(Quote currency)。 - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/ccxt-ke-ti-zu-1.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/ccxt-ke-ti-zu-1.md deleted file mode 100644 index 537394d7..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/ccxt-ke-ti-zu-1.md +++ /dev/null @@ -1,2186 +0,0 @@ -# CCXT文档 - -## [CCXT](https://www.cnblogs.com/zyyhxbs/p/13803561.html) - -* [一,简介](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label0) -* [二,特点](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label1) -* [三,安装](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label2) -* [四,用法](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label3) - * [一,介绍](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label3_0) - * [二,接口](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label3_1) - * [三,实例化CCXT交易所类](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label3_2) - * [四,交易所数据结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label3_3) - * [五,交易所API限流](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label3_4) - * [六,DDoS保护异常及处理办法](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label3_5) -* [五,CCXT市场模型](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4) - * [一,市场数据结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4_0) - * [二,数据精度和极限值](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4_1) - * [三,委托单数值要求和格式化方法](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4_2) - * [四,载入市场清单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4_3) - * [五,交易符号和市场ID](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4_4) - * [六,货币命名的一致性](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4_5) - * [七,货币命名常见问题及解答](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4_6) - * [八,市场缓冲强制重载](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label4_7) -* [六,CCXT API](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5) - * [一,API方法与访问端节点](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_0) - * [二,隐式API方法](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_1) - * [三,公开/私有API](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_2) - * [四,同步调用与异步调用](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_3) - * [五,调用参数与返回值](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_4) - * [六,API方法命名规范](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_5) - * [七,统一API](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_6) - * [八,改写统一API的参数](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_7) - * [九,统一API结果的分页](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label5_8) -* [七,CCXT委托账本模型](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label6) - * [一,交易委托账本](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label6_0) - * [二,委托账本模型的结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label6_1) - * [三,市场深度](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label6_2) - * [四,获取市场价格](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label6_3) -* [八,CCXT市场行情](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label7) - * [一,价格行情](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label7_0) - * [二,实时行情数据结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label7_1) - * [三,查询指定交易对实时行情](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label7_2) -* [九,CCXT烛线图数据](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label8) - * [一,OHLCV烛线图](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label8_0) - * [二,OHLCV烛线数据结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label8_1) - * [三,OHLCV数据的模拟](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label8_2) -* [十,CCXT数字货币交易](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9) - * [一,查询交易](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_0) - * [二,交易身份验证](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_1) - * [三,API Key设置](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_2) - * [四,查询账户余额](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_3) - * [五,查询委托单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_4) - * [六,查询交易](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_5) - * [七,委托单缓存](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_6) - * [八,清理缓存的委托单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_7) - * [九,查询指定ID的委托单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_8) - * [十,查询全部委托单 - fetchOrders](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_9) - * [十一,查询全部敞口委托单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_10) - * [十二,查询全部已完结委托单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_11) - * [十三,委托单数据结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_12) - * [十四,委托下单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_13) - * [十五,市价委托](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_14) - * [十六,市价买入委托的特殊情况](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_15) - * [十七,用限价单模拟市价单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_16) - * [十八,限价委托](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_17) - * [十九,委托单的自定义参数](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_18) - * [二十,其他类型的委托单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_19) - * [二十一,取消委托单](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_20) - * [二十二,委托单与交易的关系](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_21) - * [二十三,查询个人的历史交易](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_22) - * [二十四,交易的数据结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_23) - * [二十五,获取充值地址](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_24) - * [二十六,地址的数据结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_25) - * [二十七,提现](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_26) - * [二十八,链上交易数据结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_27) - * [二十九,查询充值记录](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_28) - * [三十,查询提现记录](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_29) - * [三十一,查询链上交易](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_30) - * [三十二,查询手续费](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_31) - * [三十三,查询交易所状态](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_32) - * [三十四,预算交易费](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_33) - * [三十五,资金操作费](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_34) - * [三十六,查询账本](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_35) - * [三十七,账本记录结构](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_36) - * [三十八,修改Nonce值](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label9_37) -* [十一,CCXT错误处理](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label10) - * [一,错误处理概述](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label10_0) - * [二,异常类的体系](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label10_1) - * [三,交易所异常](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label10_2) - * [四,网络异常](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_label10_3) - -## CCXT - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 一,简介 - -* JavaScript / Python / PHP加密货币交易API,支持超过120个比特币/山寨币交换 -* 提供对市场数据的快速访问,以进行存储,分析,可视化,指标开发,算法交易,策略回测,自动程序编程和相关软件工程。 -* 旨在供编码人员,开发人员,技术熟练的交易员,数据科学家和财务分析人员用来构建交易算法。 - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 二,特点 - -* 支持许多加密货币交易所 -* 完全实现的公共和私有API -* 用于交叉交换分析和套利的可选规范化数据 -* 开箱即用的统一API,非常易于集成 -* 可在Node 7.6 +,Python 3,PHP 5.4+和Web浏览器中使用 - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 三,安装 - -```text -pip install ccxt -``` - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 四,用法 - -### 一,介绍 - -CCXT库由公共部分和私有部分组成。安装后,任何人都可以立即使用公共部分。公共API无需注册用户帐户或拥有API密钥即可为所有交易所市场提供对公共信息的无限制访问。 - -公共API包括以下内容: - -* 市场数据 -* 交易对 -* 价格饲料(汇率) -* 订购书 -* 交易历史 -* 股票行情 -* OHLC(V)用于制图 -* 其他公共端点 - -为了与私有API进行交易,您需要从交易所的网站获取API密钥。通常,这意味着注册交换并为您的帐户创建API密钥。一些交易所要求提供个人信息或身份证明。有时也可能需要验证。在这种情况下,您需要注册自己,该库不会为您创建帐户或API密钥。一些交易所公开用于注册帐户的API端点,但是大多数交易所没有。您将必须在他们的网站上注册并创建API密钥。 - -专用API允许以下内容: - -* 管理个人帐户信息 -* 查询账户余额 -* 通过订立市场和限价单进行交易 -* 存入和提取法定和加密货币资金 -* 查询个人订单 -* 获取分类账历史 -* 在账户之间转移资金 -* 使用商家服务 - -### 二,接口 - -```python -# 公有接口: - loadMarkets 加载市场数据 - fetchMarkets 卖方市场 - fetchCurrencies 货币行情 - fetchTicker 取款行情 - fetchTickers - fetchOrderBook 订单簿 - fetchOHLCV 获取历史数据 - fetchStatus 获取状态 - fetchTrades 获取交易数据 -# 私有接口: - fetchBalance 查询余额 - createOrder 创建订单 - cancelOrder 取消订单 - fetchOrder 获取订单 - fetchOrders 获取所有订单 - fetchOpenOrders 获取打开的订单 - fetchClosedOrders 获取关闭的订单 - fetchMyTrades 获取我的交易记录 - deposit 存款 - withdraw 取款 -# 也可以自己实现自定义API接口。 -# ccxtpro实现了websocket的接口。 -# 除了基本的市价委托单和限价委托单,有些交易所还支持杠杆交易和衍生品交易(例如期货合同和期权), 以及暗池、场外交易(OTC)、商户API等更多服务。 -``` - -### 三,实例化CCXT交易所类 - -要在代码中连接到交易所并开始交易数字货币,你首先需要利用ccxt库实例化一个交易所类。 - -**一,查询支持的交易所** - -```python -# -*- coding: utf-8 -*- -import ccxt - -print(ccxt.exchanges) -``` - -**二,交易所类的实例化** - -```python -# -*- coding: utf-8 -*- -import ccxt - -exchange = ccxt.okcoin() # 默认id -okcoin1 = ccxt.okcoin({'id': 'okcoin1'}) -okcoin2 = ccxt.okcoin({'id': 'okcoin2'}) - -id_ = 'okcoin' -okcoin3 = eval('ccxt.%s()' % id_) -okcoin4 = getattr(ccxt, 'okcoin')() - -exchange_id = 'binance' -exchange_class = getattr(ccxt, exchange_id) -exchange2 = exchange_class() -exchange3 = exchange_class({ - 'apiKey': 'YOUR_API_KEY', - 'secret': 'YOUR_SECRET', - 'timeout': 30000, - 'enableRateLimit': True, -}) -print(exchange.id, okcoin1.id, okcoin2.id, okcoin3.id, okcoin4.id, exchange2.id) -``` - -#### **三,设置交易所的属性** - -CCXT中交易所对象的大多数属性都可以在实例化时设置(也可以在实例化之后设置) - -```python -# -*- coding: utf-8 -*- -import ccxt - -exchange = ccxt.binance({ - 'rateLimit': 10000, # 统一的交易所属性 - 'options': { - 'adjustForTimeDifference': True, # 特定的交易所属性 - } -}) -print(exchange.rateLimit) -print(exchange.options['adjustForTimeDifference']) -exchange.rateLimit = 12000 -exchange.options['adjustForTimeDifference'] = False -print(exchange.rateLimit) -print(exchange.options['adjustForTimeDifference']) -``` - -### 四,交易所数据结构 - -每个交易所都有一组属性和方法,其中绝大部分都可以在创建交易所对象时, 使用一个关联数组类型的参数来覆盖默认的设置。也可以定义一个继承类 任意覆盖父类的逻辑。 - -下面是交易所基类的属性概览,其中的值用于演示: - -↓ShowCode↓ - -* id: 每个交易所都有一个默认id,它是一个字符串常量,用于在ccxt中唯一的标识一个特定的交易所实例。 你可以有多个接入同一个交易所的ccxt交易所实例,可以使用id进行区分。默认的交易所id是全小写字符, 对应交易所的名称。 -* name:方便人类查看的交易所名称,字符串常量。 -* countries: 国别代码字符串数组,每个成员都是2个字符长的ISO国别代码,表示交易所的运营所在地。 -* urls\['api'\]: 用于ccxt调用的交易所API url字符串,或者是包含了公开和私有API url的关联数组。 -* urls\['www'\]: 交易所的官网URL -* urls\['doc'\]: 交易所API文档的官方URL,可以是单个url或url数组。 -* version: 当前使用的交易所API的版本号,CCXT在调用交易所API时将在每个请求的URL中添加这个版本号。 除非你要实现一个新的交易所API,否则你不需要修改这个字段。 -* api: 一个包含了交易所的所有API访问端结点的关联数组。ccxt使用这个API定义为每个可用访问端结点 自动构造交易所实例方法。 -* has: 描述交易所特性支持能力的关联数组,例如 fetchTickers、fetchOHLCV 或CORS。 -* timeframes: 交易所的fetchOHLCV方法支持的时间尺度,关联数组,键为时间尺度缩写。只有当 \['fetchOHLCV'\]属性为真时,ccxt才会填充这个字段的内容。 -* timeout: ccxt访问交易所API时,请求-响应的超时设置,单位:毫秒,默认值:10000,即10秒。你 应当根据自己的网络情况进行适当的设置。 -* rateLimit: 交易所API的请求限流,单位:毫秒,表示向同一交易所发出的两次请求之间需要的最小延迟间隔。 默认情况下ccxt禁用内置的限流功能,可以通过设置`enableRateLimit`来启用API访问限流。 -* enableRateLimit: 是否启用内置的限流机制,布尔值,默认值:false。调用者需要开启内置的限流机制 或者自己实现限流,以避免被交易所禁止访问。 -* userAgent: 用于设置HTTP请求头中的User-Agent。ccxt默认会设置自己的User-Aget,有些交易所可能 不允许ccxt访问,你可以将这个值设置为false、undefined或空字符串。 -* verbose: 是否记录HTTP请求信息到标准输出设备,布尔值,默认:false。Python开发者可以使用提单的 日志调试方法,方法时在代码开头添加以下代码: - - ```text - import logging - logging.basicConfig(level=logging.DEBUG) - ``` - -* markets: 市场描述关联数组,键为交易对或交易符号。在访问这个属性之前需要先调用`loadMarkets()`或 `load_markets()`载入市场数据。 -* symbols: 交易所的有效符号的数组,以字母表顺序排列。这些符号是市场对象的键,可以用来方便地 访问指定的市场。 -* currencies: 交易所的有效数字货币的关联数组,键为数字货币的代码(3~4字母)。数字货币从市场 载入。 -* markets\_by\_id: 按交易所列举的市场关联数值。在访问此属性之前需要先载入市场。 -* proxy: 用来访问交易所的http\(s\)代理的URL字符串,例如'[http://crossorigin.me/',默认值:'](http://crossorigin.me/'%EF%BC%8C%E9%BB%98%E8%AE%A4%E5%80%BC%EF%BC%9A')'。 -* apiKey: 用来访问交易所的API Key。大部分交易所需要API Key才能访问其API。 -* secret: 用来访问交易所的密文。大部分交易所需要同时提供api key和密文。 -* password: 交易所要求的交易密码。有些交易所在交易时要求提供这个密码,但是大多数交易所不需要。 -* uid: 你的交易所账户的唯一ID。可以是字符串或数。有些交易所在交易时也需要提供这个信息,但是大多数交易所不需要。 -* requiredCredentials: 统一的身份信息关联数组,定义需要哪些身份信息才能访问交易所的私有API。 -* options: 一个针对特定交易所的关联数组,定义该交易所支持的特定的选项。 -* precisionMode: 交易所的小数精度模式。 -* has: 描述交易所支持特性的关联数组,例如: - - ↓ShowCode↓ - - 特性的值为`true`、`false`或`emulated`,其含义如下: - - * true表示该特性是交易所API原生支持的,并且在cctx库中通过统一API提供访问接口 - * false表示该特性不是交易所API原生支持的,并且在cctx库中没有访问该特性的统一API - * emulated表示该特性不是交易所API原生支持的,但是cctx库通过统一API提供了该特性 - -### 五,交易所API限流 - -交易所通常都有限流机制。交易所会记录、跟踪你的身份和IP地址, 不允许你过于频繁的访问其API。通过限流措施,交易所可以对访问流量 进行负载均衡,以此保护其API服务被DDOS攻击或被滥用。 - -**警告**:为了避免你的账号或IP被封,不要超过交易所的流量限制! - -大多数交易所允许每秒1到2个请求。如果你的访问过于有攻击性,交易所可能 会临时限制你访问其API或者封掉你的IP一段时间。 - -`exchange.rateLimit`属性被设置为一个安全的默认值,这是次优的选择。 有些交易所可能针对不同的访问端结点有不同的限流规则。ccxt的用户需要根据 应用的特定目的来修改rateLimit属性。 - -CCXT库有内置的实验性质的限流器,可以在后台实现访问节流,这一过程 对调用者是透明的。 - -**警告**:CCXT的用户应当至少启用一种限流机制:要么 实现自己的自定义限流算法,要么使用内置的限流器。 - -使用`.enableRateLimit`属性启用内置的限流器,例如: 下面的JavaScript代码在创建交易所实例时启用内置的限流器: - -```text -# 在实例化交易所类时启用内置速率限制 -exchange = ccxt.bitfinex({ - 'enableRateLimit': True, -}) - -# 或者在实例化之后打开或关闭内置速率限制器 -exchange.enableRateLimit = True # 打开 -exchange.enableRateLimit = False # 关闭 -``` - -如果你的调用达到了限流门槛或者返回nonce错误,ccxt库将抛出以下异常之一: - -* DDoSProtectionError:DDOS保护错误 -* ExchangeNotAvailable:交易所不可用 -* ExchangeError:交易所错误 -* InvalidNonce:无效的Nonce值 - -通常在稍晚时候再重试访问即可解决问题。 - -### 六,DDoS保护异常及处理办法 - -有些交易所使用Cloudflare或Incapsula的DDoS保护,在交易所处于高负载时 你的IP会被临时阻断,有时他们甚至限制你所在的整个国家和地区的访问。 在这种情况下他们的服务器通常会返回一个页面声明HTTP 40x错误或者 返回一个AJAX测试或验证码,然后推迟几秒钟才载入页面得到临时的访问 许可或者被添加到一个白名单中。 - -触发DDoS保护、限流或位置过滤的最常见表现有: - -* 调用交易所对象的各种方法都返回RequestTimeout异常 -* 捕捉到的`ExchangeError`或`ExchangeNotAvailable`异常,其HTTP错误码为400, 403, 404, 429, 500, 501, 503, 等等。 -* 出现DNS解析问题、SSL证书问题和底层连接问题 -* 从交易所API返回HTML页面而非JSON对象 - -如果你遇到DDoS保护错误,并且无法访问特定的交易所,那么可以尝试如下方法: - -* 尝试使用cloudscraper: - - ↓ShowCode↓ - -* 使用一个代理服务器(不过会导致响应变慢) -* 要求交易所的技术支持人员将你加入白名单 -* 在临近交易所的地方(同国、同城、同数据中心、同机架、同服务器)运行你的软件 -* 尝试不同地理位置的其他IP -* 在一组分布网络服务器上运行你的软件 - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 五,CCXT市场模型 - -### 一,市场数据结构 - -交易所是用来交易有价物品的场所。有时被冠以各种不同的术语,例如工具、符号、交易对、货币、股票、商品、合同等, 但是指的都是一个东西 - 交易对、符号或金融工具。 - -在ccxt库中,每个交易所都提供了多个市场。不同交易所提供的交易市场各有不同,因而也提供了跨交易所的套利机会。一个市场通常指的是一对可交易的数字货币或法币。 - -在CCXT中,市场模型的数据结构如下: - -```text -{ - 'id': ' btcusd', // 市场ID,用来在交易所内区分不同市场的字符串或数字ID - 'symbol': 'BTC/USD', // 市场符号,用来表示交易对的大写的字符串代码 - 'base': 'BTC', // 基础货币代码 - 'quote': 'USD', // 报价货币代码 - 'baseId': 'btc', // 基础货币ID - 'quoteId': 'usd', // 报价货币ID - 'active': true, // 是否激活,布尔值,表示这个市场是否可交易 - 'precision': { // 在委托单中金额相关字段(例如价格、数量、成本等)支持的最大小数位数 - 'price': 8, // integer or float for TICK_SIZE roundingMode, might be missing if not supplied by the exchange - 'amount': 8, // integer, might be missing if not supplied by the exchange - 'cost': 8, // integer, very few exchanges actually have it - }, - 'limits': { // 限值,价格、数量和成本等的最高和最低限值,其中:成本 = 价格 * 数量 - 'amount': { - 'min': 0.01, // order amount should be > min - 'max': 1000, // order amount should be < max - }, - 'price': { ... }, // same min/max limits for the price of the order - 'cost': { ... }, // same limits for order cost = price * amount - }, - 'info': { ... }, // 一个用于记录非共性市场属性的关联数组,包括手续费、费率、限制以及其他一般性市场信息 -} -``` - -### 二,数据精度和极限值 - -不要混淆了精度和限值!精度和最低限值无关。8位精度并不一定意味着最低限值为 0.00000001。反过来也是正确的:最小限值0.0001也不一定意味着精度为4。 - -**示例1** - -```text -(market['limits']['amount']['min'] == 0.05) && (market['precision']['amount'] == 4) -``` - -上面的代码要求任何委托单的数量必须同时满足以下条件: - -* 数量值应当 >= 0.05,例如: - - ```text - + good: 0.05, 0.051, 0.0501, 0.0502, ..., 0.0599, 0.06, 0.0601, ... - - bad: 0.04, 0.049, 0.0499 - ``` - -* 精度最高4位小数,例如: - - ```text - + good: 0.05, 0.051, 0.052, ..., 0.0531, ..., 0.06, ... 0.0719, ... - - bad: 0.05001, 0.05000, 0.06001 - ``` - -**示例2** - -```text -(market['limits']['price']['min'] == 0.0019) && (market['precision']['price'] == 5) -``` - -这个例子中要求任何委托单的价格必须同时满足以下条件: - -* 价格应当 >= 0.019,例如: - - ```text - + good: 0.019, ... 0.0191, ... 0.01911, 0.01912, ... - - bad: 0.016, ..., 0.01699 - ``` - -* 价格精度最高5位小数,例如: - - ```text - + good: 0.02, 0.021, 0.0212, 0.02123, 0.02124, 0.02125, ... - - bad: 0.017000, 0.017001, ... - ``` - -**示例3** - -```text -(market['limits']['amount']['min'] == 50) && (market['precision']['amount'] == -1) -``` - -这个示例要求任何委托单的数量同时满足以下条件: - -* 数量应当 >= 50,例如: - - ```text - + good: 50, 60, 70, 80, 90, 100, ... 2000, ... - - bad: 1, 2, 3, ..., 9 - ``` - -* 精度为负数表示应当为10的倍数,例如: - - ```text - + good: 50, ..., 110, ... 1230, ..., 1000000, ..., 1234560, ... - - bad: 9.5, ... 10.1, ..., 11, ... 200.71, ... - ``` - -### 三,委托单数值要求和格式化方法 - -ccxt的用户应当始终遵守精度和限值要求!委托单中的值应当满足以下条件: - -* 委托单amount > `limits['min']['amount']` -* 委托单amount < `limits['max']['amount']` -* 委托单price > `limits['min']['price']` -* 委托单price < `limits['max']['price']` -* 委托单cost \(amount \* price\) > `limits['min']['cost']` -* 委托单cost \(amount \* price\) < `limits['max']['cost']` -* amount的精度 <= `precision['amount']` -* price 的精度 <= `precision['price']` - -有些交易所的委托单可能不会包含上面提到的所有的值。 - -每个交易所都有它自己的取整、计数和填充模式。 - -CCXT支持的取整模式有: - -* **ROUND** – 取整精度要求之后的小数位 -* **TRUNCATE**– 截断精度要求之后的小数位 - -数值精度计数模式可以使用`exchange.precisionMode`属性访问。 - -CCXT支持的计数模式包括: - -* DECIMAL\_PLACES – 统计所有的数字,99%的交易所使用这种计数模式 -* SIGNIFICANT\_DIGITS – 仅统计非零数字,有些交易所(bitfinex等)采用这种模式的计数 -* TICK\_SIZE – 有些交易所只允许某个特定值的整数倍(bitmex使用这种模式) - -CCXT支持的填充模式包括: - -* NO\_PADDING – 无填充,大多数情况下的默认模式 -* PAD\_WITH\_ZERO – 使用0字符填充至精度要求 - -交易所基类包含了`decimalToPrecision`来帮助格式化数值为要求的精度, 它支持不同的取整、计数和填充模式。 - -↓ShowCode↓ - -### 四,载入市场清单 - -大多数情况下,在可以访问其他API方法之前,你都需要先载入特定交易所的市场清单和交易符号。如果你忘记载入市场清单,ccxt库会在你第一次调用统一API前自动载入。ccxt会先后发送两个HTTP请求,第一个请求市场清单, 第二个请求其他数据。 - -要手工预先载入市场清单,可以调用交易所实例的`loadMarkets ()` 或 `load_markets ()` 方法,该方法返回一个描述市场集合的关联数组,键为交易符号。如果你希望 对业务逻辑有更多控制,那么推荐用这种方法手工载入市场清单。 - -```text -okcoin = ccxt.okcoinusd() -markets = okcoin.load_markets() -print(okcoin.id, markets) -``` - -### 五,交易符号和市场ID - -市场ID用于在REST请求-响应过程中引用交易所内的交易对。每个交易所 都有不同的市场ID集,因此不可以跨交易所使用市场ID。例如,BTC/USD 交易对在不同的交易所中可能有不同的ID:btcusd、 BTCUSD、XBTUSD、btc/usd、 42 \(数字ID\)、 BTC/USD、 Btc/Usd、 tBTCUSD、 XXBTZUSD等。你不需要 记住或使用市场ID,他们的作用是在交易所模型实现的内部用于HTTP的请求 -响应目的。 - -CCXT库将不通用的市场ID抽象为标准化的交易符号。交易符号不同于市场ID。 每个市场都采用一个对应的符号来引用,交易符号可以跨交易所使用,这使得 交易符号更适用于跨交易所套利等其他很多应用。 - -交易符号通常是描述一对交易货币的大写字符串常量,以斜杠间隔两个货币代码。 货币代码是3~4位大写字母,例如 BTC, ETH, USD, GBP, CNY, LTC, JPY, DOGE, RUB, ZEC, XRP, XMR, 等等。有些交易所也有长一些的富有异国风情的货币名称。 在斜杠之前的货币被称为基础货币,之后的被称为报价货币。下面是一些符号的 示例: BTC/USD, DOGE/LTC, ETH/EUR, DASH/XRP, BTC/CNY, ZEC/XMR, ETH/JPY。 - -有时用户可能会注意到像'XBTM18' 或'.XRPUSDM20180101' 或r "exotic/rare symbols" 之类的交易符号。交易符号并不是一定要有斜杠或者包含货币对的代码。符号字符串 完全取决于市场类型(它是一个现货市场、期货市场、暗池市场或过期市场等等)。 CCXT不鼓励你解析交易符号字符串,你不应该依赖于交易符号的格式,CCXT推荐你 使用市场属性来达成你的应用需求。 - -市场结构使用符号和ID为键。交易所基类也有内置的方法可以按符号访问市场对象。大多数 API方法需要传入交易符号作为第一个参数。当查询当前价格或委托下单时,也常常 需要你指定一个交易符号。 - -大多数时候,CCXT用户都是与市场交易符号打交道。如果你访问字典中不存在的 键,就会收获一个异常。 - -↓ShowCode↓ - -### 六,货币命名的一致性 - -不同的交易所在术语定义方面有一些模糊之处,对于新手交易者而言 可能会产生歧义。有些交易所将市场称为交易对,而另一些交易所则 将交易符号称为产品。对于CCXT开发库而言,每个交易所都包含一个 或多个交易市场,每个交易市场有一个ID和一个符号,大多数符号都是 由基础货币和报价货币对组成。 - -```text -Exchanges → Markets → Symbols → Currencies -``` - -历史上对同一个交易对曾经使用过各种各样的符号名称。有些数字货币 (例如Dash)甚至名字都改过不止一次。为了在多个交易所之间保持 一致性,ccxt库使用以下已知的符号和货币的替代名称: - -* XBT → BTC:XBT比较新,但是BTC在交易所中更常见,而且听起来更像比特币 -* BCC → BCH:比特币现金分叉通常使用两个不同的名称:BCC和BCH。BCC有点 不明确,容易和BitConnect搞混。ccxt库会正确地将BCC换成BCH(有些交易所 和聚合器会混淆这两个名字)。 -* DRK → DASH:DASH原来叫Darkcoin,然后改名为Dash -* BCHABC → BCH:在2018年11月15日,比特币现金再次分叉,因此,现在有BCH \(BCH ABC\) 和BSV \(BCH SV\)。 -* BCHSV → BSV:这对应比台币现金的SV分叉,有些交易所称之为BSV,另一些交易所称之为BCHSV,ccxt使用前者。 -* DSH → DASH:The DSH \(Dashcoin\) 和DASH \(Dash\)不是一个东西。有些交易所不恰当地将DASH 标记为DSH,ccxt库对此进行了修正\(DSH → DASH\),但是只有一个交易所混淆了这两种货币, 绝大多数交易所都正确地区分了这两种货币。记住DASH/BTC和DSH/BTC不一样。 -* XRB → NANO:NANO是RaiBlocks的较新的代码,因此,CCXT统一API将在必要时 使用NANO替代较早的XRB。 -* USD → USDT:有些交易所,例如Bitfinex、HitBTC等在其列表中将其命名为USD,但是 那些市场实际上交易的是USDT。混淆来自于3个字母的限制或者是其他原因。在实际交易 的货币是USDT而非USD时,CCXT库会将USD替换为USDT。注意,有些交易所同时有 USD和USDT。例如,Kraken有一个USDT/USD交易对。 - -每个交易所都使用一个关联数组用于数字货币代码的替换,可以通过`exchange.commonCurrencies` 属性访问这个关联数组。有时用户可能会注意到混合大小写或者包含空格的奇怪的货币符号, 之所以使用这些名称是为了解决不同交易所使用一样的符号表示不同的货币而引起的冲突: - -首先,我们采集不同交易所关于有疑问的货币代码的所有可用信息。交易所通常有其上市 货币的描述清单,可能在API中,也可能在文档里、知识库里或网站的其他地方。 - -当我们识别出每个货币代码所表示的数字货币后,我们查看其在CoinMarketCap上的主页。 - -具有最大市值的货币可以保留自己的货币代码。例如,HOT通常表示Holo或Hydro Protocol。 这种情况下Holo得以继续持有其代码HOT,Hydro Protocol将以其名称作为代码,也就是Hydro Protocol。 因此,可能会有这样的交易对:HOT/USD \(表示Holo\) 和 Hydro Protocol/USD,这表示不同的市场。 - -如果一个货币的市值未知,或者不足以决定胜出者,我们也考虑交易量以及其他因素。 - -当决定了胜出的货币之后,所有其他竞争货币的代码都会重新进行映射,并使用`exchange.commonCurrencies` 来进行替换。 - -不幸的是这还是一个进展中的工作,因为每天都在上市新的货币,也是不是会出现 新的交易所。因此,总之这是一个在快速变化的环境中的没有尽头的自我纠错过程。 - -### 七,货币命名常见问题及解答 - -**Q:符号名称是否可能会改变?** - -A:简而答之,是的,有时候会改变,但是极少。如果绝对需要修改符号映射并且不可避免的话,就会修改货币命名。然而,所有之前的符号修改都与冲突解析或分叉有关。迄今为止,在CCXT中还没有使用相同符号代码的一种货币的市值被另一种超越的先例。 - -**Q:我们可以始终用同样的符号表示同一个数字货币吗?** - -A:或多或少:)首先,ccxt库本身也在不断前进中,它在尝试适应不断变化的现实,因此可能存在我们将来会通过修改符号映射来解决的冲突。 最后,我们的软件协议指出“不提供担保,自担风险使用”。然而,我们不会随意修改符号映射,因为我们理解随意修改的后果,不希望完全打破后向兼容性。 - -如果一个主要货币的符号不得不修改,那么控制权依然在用户手中。 `exchange.commonCurrencies`属性的值可以在初始化时或之后修改,就像 exchange对象的其他属性一样。如果涉及到一种重要的数字货币,我们通常会告诉大家如何添加一点代码来保持既有的代码行为。 - -**Q:基础货币和报价货币的一致性?** - -A:这依赖于你使用的是哪个交易所,但是有些交易所的交易对是反的,它们会把报价货币放在前头而基础货币放在后头。这种情况下你会看到解析后的基础货币和报价货币和解析前是不一样的。 - -对于这些搞错交易对先后顺序的交易所,ccxt在解析交易所响应时会进行修正。 如果你希望少一些困扰,记住以下规则:基础货币总是在斜杠前,报价货币总是在斜杠后: - -```text -base currency ↓ - BTC / USDT - ETH / BTC - DASH / ETH - ↑ quote currency -``` - -### 八,市场缓冲强制重载 - -`loadMarkets ()` / `load_markets ()`是一个有副作用的方法, 它会在exchange实例上保存市场数组。对每个交易所实例你只需要调用一次。所有后续对此方法的调用都会返回本地保存的市场数组。 - -当载入交易市场后,你可以随时使用`markets`属性访问市场信息,这个属性包含了一个以符号为键的市场关联数组。如果你需要强制重载市场 列表,只需要在调用时设置参数`reload`为`true`即可。[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 六,CCXT API - -### 一,API方法与访问端节点 - -每个交易所对象都提供了一组API方法。API的每个方法被称为一个访问端结点, 它指的是用于查询各种信息的HTTP URL。所有的访问端结点都返回JSON响应。 - -通常有一个访问端结点用于获取交易所的市场列表,一个访问端结点用于提取特定市场的交易委托账本,一个访问端结点用于提取交易历史,一组访问点用于 下单或取消委托单、充值或提现等等... 基本上你在交易所里可以进行的操作 都会有一个API提供出来供你调用。 - -因为不同交易所的方法集彼此不同,ccxt库实现了以下功能: - -* 为所有可能的URL和方法提供公开和私有API -* 提供一个统一的API支持各交易所的共同的方法 - -端结点URL在每个交易所的`api`属性中预定义。你不需要重载这个属性,除非 你要实现一个新的交易所API(至少你需要了解你要做什么)。 - -### 二,隐式API方法 - -大多数交易所特定的API方法都是隐含的,意思是这些方法没有在代码中显式地定义。ccxt库采用声明式的方法来定义隐含的交易所API方法。 - -API的每个方法通常都有自己的访问端结点。ccxt库为每个交易所都定义了所有的访问端结点,你可以通过`.api`属性访问。在创建交易所对象时, 在`defineRestApi()` / `define_rest_api()`中将会为`.api`列表中的 每个url创建一个隐含的魔术方法(即偏函数或闭包)。这个环节在所有交易所上都是统一的。生成的每个方法都可以驼峰写法和下划线写法来访问。 - -访问点定义指的是一个交易所暴露出来的所有的API的URL的完整的列表。 这个列表将在交易所对象初始化时转化为可调用的方法。在API访问端结点 列表中的每个URL都有一个对应的可调用方法。对于所有的交易所而言,这 都是自动进行的,因此ccxt库支持数字货币交易所的所有可能的URL。 - -每个隐含的方法都有一个唯一的名字,这个名字是利用`.api`中的定义生成的。 例如,对于一个私有HTTPS PUT访问端结点`https://api.exchange.com/order/{id}/cancel`, 其对应的隐含方法名为`.privatePutOrderIdCancel()` / `.private_put_order_id_cancel()`。 对于一个公开的HTTPS GET访问端结点`https://api.exchange.com/market/ticker/{pair}`, 其对应的隐含方法名为`.publicGetTickerPair()` / `.public_get_ticker_pair()`,依次类推。 - -隐含方法接收传入的参数字典,将请求发送到交易所,然后返回交易所特定的未解析 的JSON结果。要传入一个参数,将其添加到字典中与参数同名的键下即可。例如对于 上面的例子,就是像`.privatePutOrderIdCancel ({ id: '41987a2b-...' })` 和`.publicGetTickerPair ({ pair: 'BTC/USD' })`。 - -ccxt推荐的与交易所交互的方式,并不是使用交易所特定的隐含方法,而是使用ccxt 提供的统一方法。只有当ccxt的统一api中没有提供相应的方法时,才应当使用隐含的方法作为后备方案。 - -要获得指定交易所实例的所有可用方法,包括隐含方法和统一方法,你可以 使用如下的简单代码。 - -```text -print(dir(ccxt.hitbtc())) -``` - -### 三,公开/私有API - -API的URL通常分为两类:市场数据方面的公开API,以及交易和账户相关的私有API。 这两组API的方法通常分别使用前缀`public`和`private`。 - -**公开API** - -公开API用来访问市场数据,不需要进行身份验证。大多数交易所为所有用户提供开放的市场数据(通常有一定的限流措施)。使用ccxt库,任何人都可以直接访问市场数据,而无需在交易所进行注册,也无需设置api key 和密码。 - -公开API包含如下内容: - -* 交易对 -* 价格流 -* 委托账本(L1、L2、L3...) -* 交易历史(完成的订单、交易、执行) -* 行情数据(现价、24小时价格) -* 用于图表的OHLCV序列数据 -* 其他公开访问点 - -**私有API** - -要使用私有API进行交易,你需要从交易所获取API key。这通常意味着你需要在交易所注册并使用你的账户创建API key。大多数交易所需要个人信息或身份标识,一些身份验证也是必要的。 - -如果你希望交易,首先需要在交易所进行注册,ccxt库不会创建账户或者提供 API key。有些交易所的API提供了在代码中注册账户的接口,但是大多数交易所 都没有这样的接口。你必须在交易所的网站注册并创建API key。 - -私有API包含以下内容: - -* 管理个人账户信息 -* 查询账户余额 -* 委托市价单和限价单 -* 创建充值地址并进行账户充值 -* 请求提取法币和加密货币 -* 查询个人的关闭/完结委托单 -* 查询杠杆交易的位置 -* 获取账本历史 -* 在不同账户之间转账 -* 使用商户服务 - -有些交易所的相同服务采用了不同的名称。例如,公开API通常称为市场数据、 基础、市场、mapi、api、价格等等...所有这些指的都是一组用于访问公开 可用数据的方法。私有API通常称为trading、trade、tapi、exchange、account 等等。 - -有些交易所也暴露出商户API,可以让你创建发票并接收你的客户的数字货币和法币支付。 这一类API通常称为merchant、wallet、payment、ecapi(用于电子商务的API)。 - -### 四,同步调用与异步调用 - -Python版本的ccxt库使用async/await语法支持Python 3.5+的异步并发模式。 异步的Python版本使用aiohttp实现纯异步io。在异步模式下所有的属性和 方法名还是一样的,只是大多数方法都有async关键字装饰。如果你希望使用 异步模式,应当链接ccxt.async\_support子包,如下例所示: - -```text -import asyncio -import ccxt.async_support as ccxt - -async def print_poloniex_ethbtc_ticker(): - poloniex = ccxt.poloniex() - print(await poloniex.fetch_ticker('ETH/BTC')) - -asyncio.get_event_loop().run_until_complete(print_poloniex_ethbtc_ticker()) -``` - -### 五,调用参数与返回值 - -所有的公开和私有API方法都返回交易所响应的原始的JSON对象,也就是 说没有解析的原始响应结果。统一API返回公共格式的JSON对象,在所有交易所上都保持统一的结构。 - -所有可能的API访问端结点集合对于每个交易所都不一样。大多数方法接收单一的关联数组(或Python字典)表示的键-值参数。传参方法如下所示: - -```text -ccxt.zaif().public_get_ticker_pair ({ 'pair': 'btc_jpy' }) # Python -``` - -### 六,API方法命名规范 - -交易所方法名是由以下字符串拼接而成: - -* 类型:public或private -* HTTP方法:GET、POST、PUT、DELETE -* 访问端结点URL - -示例如下: - -| 方法名 | API URL基地址 | 端结点URL | -| :--- | :--- | :--- | -| publicGetIdOrderbook | [https://bitbay.net/API/Public](https://bitbay.net/API/Public) | {id}/orderbook | -| publicGetPairs | [https://bitlish.com/api](https://bitlish.com/api) | pairs | -| publicGetJsonMarketTicker | [https://www.bitmarket.net](https://www.bitmarket.net/) | json/{market}/ticker | -| privateGetUserMargin | [https://bitmex.com](https://bitmex.com/) | user/margin | -| privatePostTrade | [https://btc-x.is/api](https://btc-x.is/api) | trade | -| tapiCancelOrder | [https://yobit.net](https://yobit.net/) | tapi/CancelOrder | -| ... | ... | ... | - -ccxt库同时支持驼峰命名法(JavaScript常用)和下划线命名法(Python和PHP常用), 因此所有的方法在任何开发语言中都可以上述两种风格之一调用: - -```text -exchange.methodName () // 驼峰式伪代码 -exchange.method_name () // 下划线式伪代码 -``` - -### 七,统一API - -ccxt统一API是所有交易所中的公共方法的集合。目前统一API包含以下方法: - -* fetchMarkets\(\): 从交易所提取所有有效市场的清单,返回市场对象数组。有些交易所没有办法通过其在线API获取市场清单,CCXT采用硬编码的方式返回这些交易所的市场清单。 -* loadMarkets\(\[reload\]\):返回对象形式的市场清单并在交易所实例上缓存,键为交易符号。如果之前已经载入过,则从缓存中返回结果,除非是强制使用了`reload`标志并设置为`true`。 -* fetchOrderBook\(symbol\[, limit = undefined\[, params = {}\]\]\):获取指定市场交易符号的L2/L3委托账本 -* fetchStatus\(\[, params = {}\]\):返回交易所状态信息,可能使用API或者硬编码实现 -* fetchL2OrderBook\(symbol\[, limit = undefined\[, params\]\]\):获取交易符号的2层(价格聚合)委托账本 -* fetchTrades\(symbol\[, since\[, \[limit, \[params\]\]\]\]\):获取指定交易符号的最近交易 -* fetchTicker\(symbol\):获取指定交易符号的最新行情数据 -* fetchBalance\(\):获取余额数据 -* createOrder\(symbol, type, side, amount\[, price\[, params\]\]\) -* createLimitBuyOrder\(symbol, amount, price\[, params\]\) -* createLimitSellOrder\(symbol, amount, price\[, params\]\) -* createMarketBuyOrder\(symbol, amount\[, params\]\) -* createMarketSellOrder\(symbol, amount\[, params\]\) -* cancelOrder\(id\[, symbol\[, params\]\]\) -* fetchOrder\(id\[, symbol\[, params\]\]\) -* fetchOrders\(\[symbol\[, since\[, limit\[, params\]\]\]\]\) -* fetchOpenOrders\(\[symbol\[, since, limit, params\]\]\]\]\) -* fetchClosedOrders\(\[symbol\[, since\[, limit\[, params\]\]\]\]\) -* fetchMyTrades\(\[symbol\[, since\[, limit\[, params\]\]\]\]\) -* ... - -### 八,改写统一API的参数 - -注意,统一API的大部分方法都可以接受一个可选的`params`参数,它是一个 关联数组(字典,默认为空),包含了你希望改写的参数。`params`的内容 是与特定交易所相关的,参考交易所的API文档了解其支持的字段和值。如果 你需要传入自定义设置或可选的参数,那么可以使用`params`字典。 - -```text -params = { - 'foo': 'bar', # exchange-specific overrides in unified queries - 'Hello': 'World!', # see their docs for more details on parameter names -} - -# overrides go in the last argument to the unified call ↓ HERE -result = exchange.fetch_order_book(symbol, length, params) -``` - -### 九,统一API结果的分页 - -大多数统一API的方法会返回单一对象或对象数组(交易、委托单等)。 然而,极少数交易所会一次返回全部委托单、全部交易或全部ohlcv烛线图数据。 更常见的是交易所API会限制返回一定数量的最新对象,你不能一次调用就 获取从开始时间到当前时刻的全部对象。实际上,极少有交易所能容忍或允许 这样的调用。 - -要获取历史委托单或交易,用户需要分页遍历数据。分页通常表示要循环 提取部分数据。 - -在大多数情况下,用户需要使用某种类型的分页来获取期望的结果。如果 用户没有使用分页,大多数方法将返回交易所的默认结果,这可能是从历史 的开始时刻或者也可能是返回最近的一部分数据。默认行为是交易所相关的! 分页通常会在以下方法中用到: - -* fetchTrades -* fetchOHLCV -* fetchOrders -* fetchOpenOrders -* fetchClosedOrders -* fetchMyTrades -* fetchTransactions -* fetchDeposits -* fetchWithdrawals - -对于返回对象列表的方法,交易所可能提供一种或多种分页类型。CCXT默认 统一了基于日期、基于毫秒时间戳的分页。 - -**用于UTC日期和时间戳的方法集:** - -```text -exchange.parse8601 ('2018-01-01T00:00:00Z') == 1514764800000 # UTC时间转换为毫秒时间戳 -exchange.iso8601 (1514764800000) == '2018-01-01T00:00:00Z' # 毫秒时间戳转换为UTC时间 -exchange.seconds () # 秒级时间戳 -exchange.milliseconds () # 毫秒级时间戳 -``` - -**一,基于日期的分页** - -这是目前CCXT统一API使用的分页类型。调用者提供一个毫秒时间戳作为`since` 参数的值,同时传入一个数值来限定返回结果的数量。要逐页遍历感兴趣的对象, 调用者运行如下的伪代码。 - -```text -if exchange.has['fetchOrders']: - since = exchange.milliseconds() - 3600*24*1000 # 一天前 - # since = exchange.parse8601('2020-10-10T00:00:00Z') - all_orders = [] - while since < exchange.milliseconds(): - symbol = None - limit = 20 - orders = exchange.fetch_orders(symbol, since, limit) - print(len(orders)) - if len(orders): - since = orders[len(orders) - 1]['timestamp'] - all_orders += orders - else: - break - print(all_orders) -``` - -**二,基于ID的分页** - -调用者提供对象的`from_id`,以及一个用于限定返回结果数量的值。这是一些交易所 的默认行为,然而,这一分页类型目前还不是统一的。要基于ID进行分页,调用者可以 运行如下伪代码: - -```text -if exchange.has['fetchOrders']: - from_id = 'abc123' # all ids are strings - all_orders = [] - while True: - symbol = None # change for your symbol - since = None - limit = 20 # change for your limit - params = { - 'from_id': from_id, # exchange-specific non-unified parameter name - } - orders = await exchange.fetch_orders(symbol, since, limit, params) - if len(orders): - from_id = orders[len(orders) - 1]['id'] - all_orders += orders - else: - break -``` - -**三,基于页号的分页** - -调用者提供一个页号或者初始的游标值。交易所返回一页结果以及后续的游标值以便继续。 大多数实现这种类型分页的交易所,在响应内容或响应头中返回下一个游标。在每个迭代周期,调用者必须拿到下一个游标并将其传入下一次迭代的查询。 - -```text -if exchange.has['fetchOrders']: - cursor = 0 # exchange-specific type and value - all_orders = [] - while True: - symbol = None # change for your symbol - since = None - limit = 20 # change for your limit - params = { - 'cursor': cursor, # exchange-specific non-unified parameter name - } - orders = await exchange.fetch_orders(symbol, since, limit, params) - if len(orders): - # not thread-safu and exchange-specific ! - cursor = exchange.last_http_headers['CB-AFTER'] - all_orders += orders - else: - break -``` - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 七,CCXT委托账本模型 - -### 一,交易委托账本 - -交易所会提供敞口委托单的买入/卖出价格、交易量以及其他数据。 通常对每一个特定的市场都会有一个单独的访问端接点来查询交易委托账本的状态。 交易委托账本经常被称为市场深度。委托账本信息可以用于交易决策过程。 - -获取指定符号的交易委托账本的方法是`fetchOrderBook`或`fetch_order_book`。 该方法的参数是交易符号以及一个可选的参数字典(如果该交易所支持的话)。 调用方法示例代码如下。 - -```text -import time -delay = 2 # seconds -for symbol in exchange.markets: - print (exchange.fetch_order_book (symbol)) - time.sleep (delay) # rate limit -``` - -### 二,委托账本模型的结构 - -ccxt返回的委托账本结构如下: - -```text -{ - 'bids': [ - [ price, amount ], // [ float, float ] - [ price, amount ], - ... - ], - 'asks': [ - [ price, amount ], - [ price, amount ], - ... - ], - 'timestamp': 1499280391811, // Unix Timestamp in milliseconds (seconds * 1000) - 'datetime': '2017-07-05T18:47:14.692Z', // ISO8601 datetime string with milliseconds -} -``` - -如果查询的交易所在其API响应中没有提供时间戳和日期值,那么在返回的结果 中时间戳和日期的值可能也会缺失(undefined/None/null)。 - -Price和amount都是浮点数。`bids`数组按价格降序排列,最高的买入价格排在第一个,最低的 买入价格排在最后一个。`asks`数组按价格升序排列,最低的卖出价格排在第一个,最高的卖出 价格排在最后一个。bids/asks数组可以是空的,表示交易所的委托账本中没有相应 的委托单。 - -交易所可能返回用于分析的不同层级的委托单,结果中要么包含每个订单的详情,要么 已经按照价格和交易量进行了分组聚合因而其中的详情信息要少一些。越多的详情信息 就需要越多的带宽,因此总体上会更慢一些,但是好处在于有更高的精度。较少的详情 信息通常会快一些,但是可能在某些特定情况下不够用。 - -`orderbook['timestamp']`是交易所生成这个响应的时间,可能会缺失(undefined/None/null)。 如果交易所有定义的话,那么它是一个UTC时间戳,以毫秒为单位,记录子1970年1月1日零点 以来的毫秒数。 - -### 三,市场深度 - -有些交易所接受一个字典对象来将额外的参数传入`fetchOrderBook ()` / `fetch_order_book ()`函数。 所有额外的参数都是交易所特定的(不统一)。如果要设置特定的参数,例如交易账本的深度,那么 你需要查阅交易所的文档。你可以使用如下代码获取指定数量的委托单或指定层级的聚合(即市场深度)。 - -```text -import ccxt -# return up to ten bidasks on each side of the order book stack -limit = 10 -ccxt.cex().fetch_order_book('BTC/USD', limit) -``` - -委托账本聚合的层级或详情通常是数字标注的,就像L1、L2、L3... - -* L1:较少的详情,用于快速获取非常基本的信息,也就是仅市场价格。看起来就像在委托账本中仅包含一个委托单。 -* L2:最常用的聚合层级,委托单交易量按价格分组。如果两个委托单有相同的价格,那么他们会合并为一项,其总量 为这两个委托单的交易量的和。这个聚合层级可能适合大部分的应用目的。 -* L3:最详细的层级,包含所有的订单,没有聚合。这一层级自然包含了输出中的重复内容。因此,如果两个订单 有相同的价格,它们也不会合并在一起,这两个订单的优先级则取决于交易所的撮合引擎。你不一定真的需要 L3详情来进行交易。实际上,大多数情况下你根本不需要这么详细的信息。因此有些交易所不支持这个级别的数据, 总是返回聚合后的委托账本。 - -如果你想获取L2委托账本,可以使用统一API中的`fetchL2OrderBook(symbol, limit, params)` 或 `fetch_l2_order_book(symbol, limit, params)`方法。 - -### 四,获取市场价格 - -为了获取当前的最好价格(查询市场价格)并且计算买入卖出的价差, 可以使用如下代码。 - -```text -orderbook = exchange.fetch_order_book (exchange.symbols[0]) -bid = orderbook['bids'][0][0] if len (orderbook['bids']) > 0 else None -ask = orderbook['asks'][0][0] if len (orderbook['asks']) > 0 else None -spread = (ask - bid) if (bid and ask) else None -print (exchange.id, 'market price', { 'bid': bid, 'ask': ask, 'spread': spread }) -``` - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 八,CCXT市场行情 - -### 一,价格行情 - -价格行情包含了最近一段时间内特定交易市场的统计信息,通常使用24小时进行统计。 查询价格行情的方法如下: - -```text -fetchTicker (symbol, params = {}) // for one ticker -fetchTickers (symbol, params = {}) // for all tickers at once -``` - -检查交易所的`exchange.has['fetchTicker']`和 `exchange.has['fetchTickers']`属性 来决定所查询的交易所是否支持这些方法。 - -### 二,实时行情数据结构 - -行情的数据结构如下: - -↓ShowCode↓ - -时间戳和日期都是以毫秒为单位的UTC时间值: - -* ticker\['timestamp'\] 是交易所生成响应的时间,有的交易所可能没有这个值,因此在结果中会缺失 -* exchange.last\_response\_headers\['Date'\] 是收到的最后一个HTTP响应的日期-时间字符串。`Date`解析器 应当考虑时区问题。日期-时间的精度是1秒、1000毫秒。 - -虽然有些交易所在其行情数据中混入了委托账本的最高买入/最低卖出价格,你不应当将 行情数据视为`fetchOrderBook`的替代方法。行情数据的主要目的是提供统计数据,可以 将其视为活跃的24小时OHLCV数据。已知的是,交易所不鼓励频繁地调用`fetchTicker`。 如果你需要一个统一的方法去访问bids和asks,你应当使用`fetchL[123]OrderBook`系列的方法。 - -要获取历史价格和数量,使用统一API中的`fetchOHLCV`方法。 - -获取行情数据的方法如下: - -* fetchTicker \(symbol\[, params = {}\]\), symbol必须,params可选 -* fetchTickers \(\[symbols = undefined\[, params = {}\]\]\), 两个参数都是可选的 - -### 三,查询指定交易对实时行情 - -要查询指定交易对/符号的实时行情数据,调用`fetchTicker(symbol)`方法。 - -```text -import random -if (exchange.has['fetchTicker']): - print(exchange.fetch_ticker('LTC/ZEC')) # ticker for LTC/ZEC - symbols = list(exchange.markets.keys()) - print(exchange.fetch_ticker(random.choice(symbols))) # ticker for a random symbol -``` - -有些交易所(不是所有)也支持同时查询所有交易对的实时行情。请查阅 交易所的文档获取详细信息。你可以在一次调用中获取所有的实时行情。 - -```text -if (exchange.has['fetchTickers']): - print(exchange.fetch_tickers()) # all tickers indexed by their symbols -``` - -查询所有的实时行情需要更多的流量,另外,也要注意有些交易所对后续的查询会有更严格的限流。 还有一些交易所可能会对`fetchTickers()`的调用有更多的要求,有时你无法查询的原因是API的限制。 另外一些交易所可以在URL查询参数中接受一组交易对符号,但是由于URL的长度是有限的,在极端 情况下交易所可以有数千个市场 - url的长度无法容纳所有的交易对符号。 - -```text -if (exchange.has['fetchTickers']): - print(exchange.fetch_tickers(['ETH/BTC', 'LTC/BTC'])) # listed tickers indexed by their symbols -``` - -注意在大多数情况下交易对符号列表不是必须的,但是如果你要处理所有可能的情况就需要额外的逻辑处理。 - -和CCXT统一API中的大多数方法一样,`fetchTickers`的最后一个参数是`params`,用来修改发送到 交易所的请求参数。 - -返回结果的结构如下: - -```text -{ - 'info': { ... }, // the original JSON response from the exchange as is - 'BTC/USD': { ... }, // a single ticker for BTC/USD - 'ETH/BTC': { ... }, // a ticker for ETH/BTC - ... -} -``` - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 九,CCXT烛线图数据 - -### 一,OHLCV烛线图 - -大多数交易所都提供了获取OHLCV数据的访问端结点,但还是有一些交易所没有提供。 在ccxt中,交易所对象的`has['fetchOHLCV']`属性表示该交易所是否支持烛线数据序列, 如果这个布尔属性的值为true,则表明支持。 - -`fetchOHLCV`方法声明如下: - -```text -fetchOHLCV (symbol, timeframe = '1m', since = None, limit = None, params = {}) -``` - -你可以调用CCXT统一API的`fetchOHLCV` / `fetch_ohlcv`方法获取指定交易对符号的OHLCV烛线图数据。 - -```text -import time -if exchange.has['fetchOHLCV']: - for symbol in exchange.markets: - time.sleep (exchange.rateLimit / 1000) # time.sleep wants seconds - print (symbol, exchange.fetch_ohlcv (symbol, '1d')) # one day -``` - -要获取所查询的交易所的可用时间窗,可以查看交易所对象的`timeframes`属性。 注意只有当交易所对象的`has['fetchOHLCV']`属性值为true时上述属性才有效。 - -你的请求能够回溯多久远的数据是有限制的。大多数交易所不会允许你查询太早时间 的详细烛线数据历史(就像1分钟和5分钟的时间窗口内的详情)。他们通常提供 一段合理时间内的烛线数据,例如任何时间窗的最近1000个烛线数据,这对于大多数 应用都是足够了。突破这一限制的办法,是你可以不停地查询(REST Polling)最新 的OHLCV数据,并存储到自己的CSV文件中或者数据库里。 - -注意最后的(当前)烛线数据可能是不完整的,直到开始记录下一个烛线。 - -和ccxt的统一api和隐含api中的其他许多方法一样,`fetchOHLCV`方法的最后一个参数 可以传入一个关联数组来设置额外的交易所特定的请求参数,你需要查询交易所的API 文档来了解其支持的字段和值。 - -`since`参数是一个以毫秒计量的UTC时间戳,如果未指定`since`参数,`fetchOHLCV` 方法将返回交易所默认的时间范围。有些交易所将返回从其开始以来的所有烛线,而另一些 则只会返回最近产生的烛线,这取决于交易所的默认行为。因此如果你不指定`since` 参数,那么返回的烛线的时间范围是交易所相关的,为了得到一致的响应结果,开发者 应当传入`since`参数。 - -### 二,OHLCV烛线数据结构 - -`fetchOHLCV`方法返回OHLCV烛线数组,其结构如下: - -```text -[ - [ - 1504541580000, // UTC 时间戳,单位:毫秒 - 4235.4, // (O)开盘价格, float - 4240.6, // (H)最高价格, float - 4230.0, // (L)最低价格, float - 4230.7, // (C)收盘价格, float - 37.72941911 // (V)交易量,以基准货币计量, float - ], - ... -] -``` - -结果数组是以时间升序排列的,最早的烛线排在第一个,最新的烛线排在最后一个。 - -### 三,OHLCV数据的模拟 - -有些交易所没有提供任何OHLCV方法,为此ccxt库将利用公开交易模拟OHLCV烛线数据。 在这种情况下你会看到交易所对象的`has['fetchOHLCV']`属性的值为`emulated`。 - -但是,由于交易历史通常都非常有限,模拟的`fetchOHLCV`方法只能涵盖最近的信息, 因此只可以作为没有其他可选项是的备选方案使用。 - -**警告:`fetchOHLCV`方法的模拟目前还是实验性质的!**[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 十,CCXT数字货币交易 - -### 一,查询交易 - -你可以调用ccxt的统一API方法`fetchTrades` / `fetch_trades`来获取指定交易对的最近交易记录。 `fetchTrade`方法声明如下: - -```text -fetchTrades (symbol, since = None, limit = None, params = {}) -``` - -例如,如果你希望逐个打印所有交易对的近期交易(别忘了交易所的限流!), 可以使用以下代码。 - -```python -import time -if exchange.has['fetchTrades']: - for symbol in exchange.markets: # ensure you have called loadMarkets() or load_markets() method. - time.sleep (exchange.rateLimit / 1000) # time.sleep wants seconds - print (symbol, exchange.fetch_trades (symbol)) -``` - -上面展示的`fetchTrades`方法返回一个按时间戳升序排列的交易数组,最早的交易在 第一个,最新的交易在最后一个。交易数组结构如下: - -```text -[ - { - 'info': { ... }, // the original decoded JSON as is - 'id': '12345-67890:09876/54321', // string trade id - 'timestamp': 1502962946216, // Unix timestamp in milliseconds - 'datetime': '2017-08-17 12:42:48.000', // ISO8601 datetime with milliseconds - 'symbol': 'ETH/BTC', // symbol - 'order': '12345-67890:09876/54321', // string order id or undefined/None/null - 'type': 'limit', // order type, 'market', 'limit' or undefined/None/null - 'side': 'buy', // direction of the trade, 'buy' or 'sell' - 'price': 0.06917684, // float price in quote currency - 'amount': 1.5, // amount of base currency - }, - ... -] -``` - -大多数交易所返回上述交易对象中的大部分字段,虽然也有些交易所不会返回type, side, 交易id或委托单id这些字段 。 大多数时候可以保证你能拿到一个交易的以下字段:timestamp, datetime,symbol, price 和amount 。 - -第二个可选参数`since`可以按时间戳削减结果数组,第三个参数`limit`可以削减返回的交易数量。 - -如果用户不指定`since`,那么`fetchTrade`方法将返回交易所默认的公开交易时间范围,这是交易所特定的, 有些交易所会返回自交易对上市开始的所有交易,另一些交易所则会返回缩减集合,例如 最近24小时、或者最近100个交易等等。如果用户希望更精确地控制时间窗口,那么应当指定 `since`参数。 - -ccxt的统一API中的大多数方法都会返回一个对象或对象数组。然而,也有极少数交易所会一次 返回所有的交易。通常来说交易所的API会限制仅返回最近的一定数量的交易。你不能只用 一个调用就返回自交易对上市依赖的所有交易对象,实际上,很少有交易所会容忍或允许 这种调用行为。 - -要查询历史交易,开发者需要按页遍历数据。分页通常暗示着使用循环分块提取数据。 - -大多数情况下,开发者需要使用至少某种类型的分页来获得一致的结果。 - -另一方面,有些交易所不支持公开交易的分页查询。总体来说交易所会提供最近的交易。 - -`fetchTrades ()` / `fetch_trades()` 方法也可以接收一个额外的关联数组作为其第四个参数。 你可以用这个关联数组传入特定交易所支持的额外的参数。请查询交易所的API文档获取详细信息。 - -### 二,交易身份验证 - -为了能够访问你的账户,通过市价单和限价单执行量化交易,查询余额、充值与提现等等,你需要 从每个你希望操作的交易所获取你的API key以进行身份验证。API key是交易所相关的,任何情况下 不同交易所的API key彼此都不能互换。 - -如果提供了正确的API key,交易所会自动进行身份验证。验证过程通常采用以下模式: - -* 生成一个新的nonce。nonce是一个整数,通常是以秒或者毫秒计的unix时间戳。 nonce应当是单调递增的,因此没有两个请求会使用相同的nonce值。默认的nonce 是以秒计的unix时间戳。 -* 将公开的api key和nonce追加到其他访问端结点参数之后,然后序列化以便进行签名 -* 使用HMAC-SHA256/384/512 或 MD5 哈希序列化参数,然后用私钥签名 -* 将16进制或base64编码的签名和nonce添加到HTTP头或请求内容中 - -不同的交易所上述过程可能有所区别。有些交易所可能要求其他编码格式的签名,有些则 使用不同的HTTP头参数名和格式,但是基本都是上述模式。 - -不要在多个线程、进程中同时运行的一个交易所的多个实例之间共享同一个API密钥对, 这可能会导致不可预料的行为。 - -ccxt已经为你处理了身份验证逻辑,因此你不需要手工进行任何操作,除非你在实现 一个新的交易所类,否则为了进行交易,你唯一需要做的就是提供正确的API密钥对。 - -### 三,API Key设置 - -API身份通常包含以下内容: - -* apiKey:你的公开的API Key或Token。这部分不是保密的,它包含在你的请求头或请求内容中 用来标识你的请求。apiKey通常是一个16进制或base64编码的字符串,或者是一个UUID。 -* secret:这是你的私钥,需要秘密保存,不要告诉任何人。私钥用来在本地签名你的请求, 然后发送请求给交易所。私钥不能通过互联网发出去,也不应该发布或通过电子邮件传递。 私钥和nonce一起来生成在密码学上足够强的签名,这个签名和你的API key一起用来识别 你的身份。每个请求都有唯一的nonce,因此其签名也是唯一的。 -* uid:有些交易所也会生成一个较短的用户ID。它可以是字符串或者数字。如果交易所明确 地要求,那么你应该设置这个参数。请参考交易所的文档获取详细信息。 -* password:有些交易所也要求你在交易时提供密码。如果交易所明确要求,那么你也应该 照办。请参考交易所的文档获取详细信息。 - -你可以在交易所的网站上创建API key,然后拷贝到你的配置文件中。记得正确设置配置文件 的权限,不要让其他任何人读取。 - -记住要保证apiKey和私钥的安全,避免未授权的使用,不要发送或告诉任何人。私钥泄漏 会导致你的财产损失。 - -要创建可以用于交易的exchange对象,只需将API身份信息赋给已有的交易所实例,或者 在创建交易所实例时指定。参考以下示例代码。 - -```python -import ccxt - -# any time -bitfinex = ccxt.bitfinex () -bitfinex.apiKey = 'YOUR_BFX_API_KEY' -bitfinex.secret = 'YOUR_BFX_SECRET' - -# upon instantiation -hitbtc = ccxt.hitbtc ({ - 'apiKey': 'YOUR_HITBTC_API_KEY', - 'secret': 'YOUR_HITBTC_SECRET_KEY', -}) - -# from variable id -exchange_id = 'binance' -exchange_class = getattr(ccxt, exchange_id) -exchange = exchange_class({ - 'apiKey': 'YOUR_API_KEY', - 'secret': 'YOUR_SECRET', - 'timeout': 30000, - 'enableRateLimit': True, -}) -``` - -注意,如果在交易之前你没有设置API身份信息,那么你的私有API请求可能会失败而抛出异常或错误。 为了避免字符的转移问题,请使用单引号描述你的身份信息,例如'VERY\_GOOD'而不是 "VERY\_BAD"。 - -### 四,查询账户余额 - -要查询账户余额,获取可用于交易的资金数量,或者锁定在委托单中的资金数量, 可以使用`fetchBalance`方法。 - -```python -fetchBalance (params = {}) -``` - -方法返回的余额结构如下: - -↓ShowCode↓ - -有些交易所可能不会返回完整的余额信息。许多交易所不会返回你的空账户或者未用的账户, 这种情况下在返回的余额结构中可能会缺少某些货币的信息。 - -Python示例代码: - -```python -print (exchange.fetch_balance ()) -``` - -**余额信息的推导** - -有些交易所的API不会返回余额信息的完整集合,它们只会返回可用余额或者只是资金总量。 这种情况下ccxt会尝试从委托单缓存中获取缺失的数据,并根据已知的信息猜测完整的余额信息。 但是这在一些极端情况下可能不足以推导出正确的余额信息,开发者应当了解这种可能性。 - -### 五,查询委托单 - -大多数时候,你可以按id或符号查询委托单,虽然不是所有的交易所都提供了完整 和灵活的委托单查询访问端结点。有些交易所可能没有方法查询最近完成的委托单, 另一些可能缺少按id获取委托单的方法,等等。ccxt库考虑了这些情况并尽可能 加以解决。 - -查询委托单的方法如下: - -* fetchOrder \(id, symbol = undefined, params = {}\) -* fetchOrders \(symbol = undefined, since = undefined, limit = undefined, params = {}\) -* fetchOpenOrders \(symbol = undefined, since = undefined, limit = undefined, params = {}\) -* fetchClosedOrders \(symbol = undefined, since = undefined, limit = undefined, params = {}\) - -注意这些方法的名字可以看出该方法是返回一个委托单还是多个委托单。 - -如果用户调用了交易所不支持的方法,ccxt库会抛出`NotSupported`异常。 - -要检查上述方法是否有效,可以查看交易所对象的`.has`属性。 - -```python -import ccxt -id = 'binance' -exchange = getattr(ccxt, id) () -print(exchange.has) -``` - -一个典型的`.has`属性通常包含如下对应上述用于查询委托单的API方法的标志: - -```python -exchange.has = { - - // ... other flags ... - - 'fetchOrder': true, // available from the exchange directly and implemented in ccxt - 'fetchOrders': false, // not available from the exchange or not implemented in ccxt - 'fetchOpenOrders': true, - 'fetchClosedOrders': 'emulated', // not available from the exchange, but emulated in ccxt - - // ... other flags ... - -} -``` - -ture和false的含义很明确。`emulated`表示这个方法是ccxt模拟出来的,不是交易所原生API提供的。 - -### 六,查询交易 - -下面的这些方法可以返回一组交易和委托单,支持`since`参数和`limit`参数: - -* fetchTrades \(public\) -* fetchMyTrades \(private\) -* fetchOrders -* fetchOpenOrders -* fetchClosedOrders - -第二个参数`since`可以按时间戳缩减结果数组,第三个参数`limit`可以限制返回结果的数量。 - -如果用户没有指定`since`参数,那么`fetchTrades`/`fetchOrders`方法将返回交易所的默认集合, 这是交易所相关的,有些交易所会返回交易对上市依赖的所有数据,而另一些交易所则只会返回 少量的交易或委托单,例如最近24小时内的,最近的100个委托单或最近的100个交易等等。如果 用户期望对时间窗口有更精确地控制,那么应该使用`since`参数。 - -注意:不是所有的交易所都提供了按开始时间过滤交易或委托单的方法,因此,对`since` 和`limit`的支持是交易所相关的。但是,大多数交易所都提供了分页和滚动的替代方案。 - -### 七,委托单缓存 - -一些交易所没有查询完结委托单或者所有委托单的方法,它们只提供了 `fetchOpenOrders`访问端结点,有时也会大方地提供`fetchOrder`端结点。 这意味着它们没有提供查询委托单历史的方法。ccxt库将尝试模拟委托单历史, 方法是使用交易所对象的`.orders`属性来记录所有的委托单。 - -任何时候当用户创建一个新的委托单,或者取消一个已有的敞口委托单,或者 进行了其他可能修改委托单状态的操作,ccxt库就会在缓存中记录整个委托单 信息。在后续的对`fetchOrder`, `fetchOrders`或 `fetchClosedOrders`方法 调用时,交易所实例会发送一个对`fetchOpenOrders`的请求,然后对比当前获取 的敞口委托单和之前缓存的委托单。ccxt库检查每个缓存的委托单,然后尝试 匹配对应的获取到的敞口委托单。当缓存的委托单不在获取到的敞口委托单中 时,ccxt库会将这个缓存的委托单标记为已完结。对fetchOrder, fetchOrders, fetchClosedOrders 的调用将返回`.orders`缓存中更新过的委托单。 - -这个逻辑简单点说就是:如果一个缓存的委托单没有在获取到的敞口委托单中出现, 那么它就不再是敞口单了,因此,就是完结单。 - -大多数情况下,`.orders`缓存的工作对用户而言是透明的。更常见的是交易所 本身提供了足够的方法。然而,由于某些交易所没有提供完整的API,`.orders` 缓存有以下已知的局限性: - -* 如果用户没有在程序运行之间保存`.orders`缓存,而且也没有在重新运行时 进行恢复,那么`.orders`缓存就会丢失。因此在下一次运行程序时对 `fetchClosedOrders`的调用,交易所实例将返回一个空的委托单列表。 没有正确的恢复缓存,交易所没有办法了解委托单是完结还是取消。 -* 如果API密钥对在多个交易所实例间共享,一个实例没法了解其他实例 创建或取消的委托单。这意味着`.orders`缓存不是共享的。因此API密钥对 不要在多个实例间共享,否则会有不可预料的副作用。 -* 如果从ccxt库的外部创建或取消委托单,那么新委托单的状态不会到达 缓存,ccxt库也没有办法在之后正确的返回。 -* 如果一个委托单的取消请求跳过了ccxt,那么ccxt库将无法从`fetchOpenOrders` 返回的敞口订单中找到该委托单,因此ccxt会将其标注为完结。这是错误的。 -* 如果`fetchOrder(id)`是模拟的,那么ccxt库没有办法返回特定的委托单。 -* 如果一个未处理的错误导致应用的崩溃,那么`.orders`缓存就不会保存以及再次 重启时恢复,缓存就会丢失。 - -注意:委托单缓存功能目前还在调整当中。 - -### 八,清理缓存的委托单 - -对于长时间运行的交易所实例,及时清理不再需要的资源是非常重要的。 因为在活跃的交易当中,`.orders`缓存会增长到非常大,ccxt库提供了 `purgeCachedOrders`/`purge_cached_orders`方法来清理缓存中较早的 非敞口委托单以释放占用的内存或其他目的,清理选择条件如下: - -```text -where (order['timestamp'] < before) && (order['status'] != 'open') -``` - -清理命令接受一个参数来声明具体的清理条件。示例代码如下: - -```text -# keep last hour of history in cache -before = exchange.milliseconds () - 1 * 60 * 60 * 1000 - -# purge all closed and canceled orders "older" or issued "before" that time -exchange.purge_cached_orders (before) -``` - -### 九,查询指定ID的委托单 - -要获取具有指定ID的委托单,使用`fetchOrder` / `fetch_order`方法。即使是你要查询一个特定ID的委托单,有些交易所也要求你提供交易对符号。 - -`fetchOrder`/`fetch_order`方法的原型如下: - -```text -if (exchange.has['fetchOrder']) { - // you can use the params argument for custom overrides - order = await exchange.fetchOrder (id, symbol = None, params = {}) -} -``` - -有些交易所没有提供按ID查询委托单的访问端结点,ccxt会尽可能的提供模拟实现。 不过现在这个工作还在进行中,可能你会碰到没有实现这个模拟的交易所。 - -你可以使用额外的键/值参数对象来指定委托单类型等需要的设置。 - -下面是使用`fetchOrder`方法从一个已经验证过身份的交易所实例获取委托单信息的 示例代码。 - -```text -if exchange.has['fetchOrder']: - order = exchange.fetch_order(id) - print(order) - -# Python 3.5+ asyncio (asynchronous) -import asyncio -import ccxt.async_support as ccxt -if exchange.has['fetchOrder']: - order = asyncio.get_event_loop().run_until_complete(exchange.fetch_order(id)) - print(order) -``` - -### 十,查询全部委托单 - fetchOrders - -使用`fetchOrders`方法查询交易所的全部委托单,方法原型如下; - -```text -if (exchange.has['fetchOrders']) - exchange.fetchOrders (symbol = undefined, since = undefined, limit = undefined, params = {}) -``` - -有些交易所没有查询全部委托单的访问端结点,ccxt库会尝试尽可能的模拟实现。 不过到目前为止这一工作还在进展当中,因此你可能会碰到不支持此功能的交易所。 - -### 十一,查询全部敞口委托单 - -使用`fetchOpenOrders`方法查询交易所的所有敞口委托单,方法原型如下: - -```text -if (exchange.has['fetchOpenOrders']) - exchange.fetchOpenOrders (symbol = undefined, since = undefined, limit = undefined, params = {}) -``` - -### 十二,查询全部已完结委托单 - -使用交易所实例的`fetchClosedOrders`方法来查询所有已完结的委托单, 其方法原型如下: - -```text -if (exchange.has['fetchClosedOrders']) - exchange.fetchClosedOrders (symbol = undefined, since = undefined, limit = undefined, params = {}) -``` - -不要把已完结委托单和交易搞混了!一个完结的委托单可能会对应多个交易! 因此,已完结委托单和交易并不是一回事。总的来说,委托单根本不存在手续费 ,但是每个用户交易的确有手续费、成本及其他属性。然而,许多交易所 也会把交易的这些属性传递给委托单。 - -有些交易所没有提供查询全部的已完结委托单的访问端结点,ccxt库会尽可能 尝试模拟实现。不过目前这一工作还在进行中,因此你可能会碰到不支持此 功能的交易所类。 - -### 十三,委托单数据结构 - -ccxt统一API中绝大多数返回委托单的方法,通常会输出如下的委托单数据结构: - -```text -{ - 'id': '12345-67890:09876/54321', // string - 'datetime': '2017-08-17 12:42:48.000', // ISO8601 datetime of 'timestamp' with milliseconds - 'timestamp': 1502962946216, // order placing/opening Unix timestamp in milliseconds - 'lastTradeTimestamp': 1502962956216, // Unix timestamp of the most recent trade on this order - 'status': 'open', // 'open', 'closed', 'canceled' - 'symbol': 'ETH/BTC', // symbol - 'type': 'limit', // 'market', 'limit' - 'side': 'buy', // 'buy', 'sell' - 'price': 0.06917684, // float price in quote currency - 'amount': 1.5, // ordered amount of base currency - 'filled': 1.1, // filled amount of base currency - 'remaining': 0.4, // remaining amount to fill - 'cost': 0.076094524, // 'filled' * 'price' (filling price used where available) - 'trades': [ ... ], // a list of order trades/executions - 'fee': { // fee info, if available - 'currency': 'BTC', // which currency the fee is (usually quote) - 'cost': 0.0009, // the fee amount in that currency - 'rate': 0.002, // the fee rate (if available) - }, - 'info': { ... }, // the original unparsed order structure as is -} -``` - -补充说明如下: - -* fee:手续费信息这部分的工作还在进行中,取决于交易所提供的接口,这部分信息可能不完整甚至完全没有。 -* fee.currency:手续费货币可能与所交易的货币都不一样。例如,一个ETH/BTC的委托单可能使用USD支付手续费 -* lastTradeTimestamp:最后交易时间戳表示该委托单最后一次交易的时间。在有些情况下, 这个字段可能没有值或者是undefined/None/null,例如交易所不支持,或者委托单还是敞口状态。 -* status:委托单状态的优先级高于最后交易时间戳 -* cost:委托单花费 = filled \* price ,表示委托单的总花费,cost字段是处于方便目的而提供, 值可以根据其他字段推导出来 - -### 十四,委托下单 - -使用ccxt库委托下单需要提供以下信息: - -* symbol:希望交易的市场对应的交易对符号,例如 BTC/USD, ZEC/ETH, DOGE/DASH, 等等。 请确保所制定的交易对符号在目标交易所存在并且可以交易。 -* side:委托单的交易方向,买入还是卖出。当你下买单时,给出报价货币并将收到基准货币。 例如,买入BTC/USD意味着你将支出美元并收到比特币。当你卖出BTC/USD时则是相反的, 你将支出比特币并收到美元。 -* type:委托单类型,ccxt库目前仅仅统一了市价单和限价单的API -* amount:你希望交易的数量。这通常指的是交易对符号中的基准货币的数量,虽然也有些 交易所会要求提供报价货币的数量,还有一些会根据委托单的方向而要求分别提供基准货币 或报价货币的数量。 -* price:你希望为交易支付的报价货币的数量,仅限于限价单 - -使用ccxt统一API下市价单或限价单的成功调用将返回如下的数据结构: - -```text -{ - 'id': 'string', // order id - 'info': { ... }, // decoded original JSON response from the exchange as is -} -``` - -有些交易所只允许限价委托单,请参考交易所的文档获取详细信息。 - -### 十五,市价委托 - -市价委托单也称为现价委托单、即时委托单或市价单。市价委托单 会立即执行。交易所的撮合引擎使用委托账本栈顶部的一个或多个 委托单来完成市价委托单。 - -交易所会用当时有效的最优价格来完成你的市价单。但是这并不保证 会按照你下单时看到的价格来执行交易,执行价格可能会有微小的变化, 这也称为价格滑点(price slippage),引起滑点的原因可能网络延迟、 交易所访问量过大、价格波动等。下市价委托单时,你不需要指定 委托单的价格。 - -使用ccxt统一APi中的`createMarketSellOrder`方法下市价卖单,或者使用 `createMarketBuyOrder`方法下市价买单。示例代码如下: - -```text -// camelCaseNotation -exchange.createMarketSellOrder (symbol, amount[, params]) -exchange.createMarketBuyOrder (symbol, amount[, params]) - -// underscore_notation -exchange.create_market_sell_order (symbol, amount[, params]) -exchange.create_market_buy_order (symbol, amount[, params]) -``` - -也可以使用更通用的`createOrder`下买单或买单,例如: - -```text -// using general createOrder, type = 'market' and side = 'buy' or 'sell' -exchange.createOrder (symbol, 'market', 'sell', amount, ...) -exchange.create_order (symbol, 'market', 'buy', amount, ...) -``` - -注意,有些交易所不接受市价委托单(只允许限价单)。为了用程序检测 一个交易所是否支持市价委托单,你可以使用交易所的`.has['createMarketOrder']` 属性。 - -### 十六,市价买入委托的特殊情况 - -总的说来,当市价委托买入或卖出时,用户只需要指定要买入或卖出的基准货币 的数量。但是然而,有些交易所的市价买入委托单处理采用了不同的方式来计算 委托单价值。 - -假设你在交易`BTC/USD`,目前的BTC市场价格是超过9000 USD。要按市价买入或 卖出,你可以指定数量为 2 BTC,取决于你的委托方向,成交结果将是你的账户 增加或减少18000 USD左右。 - -但是有些交易所要求按报价货币指定委托单的总价!这背后的逻辑其实很简单, 不是说我要买入或卖出多少基准货币,而是”我想消费多少报价货币“。 - -在这些交易所进行市价买入委托,你不能将委托单的数量指定为 2 BTC,而是 应当指定委托单的总价,在这个例子中,也就是 18000 USD。采用这种方式处理 市价委托单的交易所,有一个选项`createMarketBuyOrderRequiresPrice`,你 可以用它以两种方式指定市价买入委托单的总花费: - -第一种是默认的,如果你同时设置了委托数量和价格,那么在ccxt内部将会 简单地按照这个公式`(cost = amount * price)`计算出委托单总价格,得到 的总花费就会设置为该市价委托单的报价货币总花费,也就是USD总额。 - -↓ShowCode↓ - -如果希望自己指定委托单的总花费,那么可以使用第二种方式。这需要先 关闭`createMarketBuyOrderRequiresPrice`选项,然后进行设置。示例代码 如下: - -```text -const exchange = new ccxt.cex ({ - 'apiKey': YOUR_API_KEY, - 'secret': 'YOUR_SECRET', - 'enableRateLimit': true, - 'options': { - 'createMarketBuyOrderRequiresPrice': false, // switch off - }, -}) - -// or, to switch it off later, after the exchange instantiation, you can do -exchange.options['createMarketBuyOrderRequiresPrice'] = false - -;(async () => { - - // when `createMarketBuyOrderRequiresPrice` is true, we can pass the price - // so that the total cost of the order would be calculated inside the library - // by multiplying the amount over price (amount * price) - - const symbol = 'BTC/USD' - const amount = 2 // BTC - const price = 9000 // USD - cost = amount * price // ← instead of the amount cost goes ↓ here - const order = await exchange.createMarketBuyOrder (symbol, cost) - console.log (order) -}) -``` - -### 十七,用限价单模拟市价单 - -用限价单来模拟市价单也是可能的。 - -警告:由于高波动性,这个方法存在风险,在使用之前请务必了解 清楚! - -大多数时候,市价买单可以使用一个设置极低价格的限价单来模拟- 当交易所 检测到你在以非常低的价格卖出时,会自动将其设置为taker order,它会 自动提供委托账本中的最优买方价格。这实际上和下市价卖单的效果一样。 因此市价委托单可以使用限价委托单来模拟。 - -反方向也是一样的 - 市价买入委托可以使用一个价格非常高的限价买入 委托来模拟。大多数交易所也会使用最优价格来完成你的委托单,也就是市价。 - -然而,你不能完全依赖这样的模拟,记得先用少量资金进行测试!你可以 在交易所的web页面验证逻辑。你可以在指定的限价卖出少量(可承担的损失), 然后在交易历史中检查实际的执行价格。 - -### 十八,限价委托 - -限价委托单也称为限价单。有些交易所只接受限价委托单。 限价委托单需要在提交委托单时指定价格(单位费率)。 只有在市场价格达到期望的价位时,交易所才会完成限价 委托单。 - -使用`createLimitBuyOrder`委托限价买入,或者使用`createLimitSellOrder` 委托限价卖出。示例代码如下: - -```text -// camelCaseStyle -exchange.createLimitBuyOrder (symbol, amount, price[, params]) -exchange.createLimitSellOrder (symbol, amount, price[, params]) - -// underscore_style -exchange.create_limit_buy_order (symbol, amount, price[, params]) -exchange.create_limit_sell_order (symbol, amount, price[, params]) -``` - -### 十九,委托单的自定义参数 - -有些交易所允许你指定委托单的可选参数。在调用ccxt统一API时, 你可以使用一个关联数组传入额外的参数。所有的自定义参数都是 交易所相关的,当然彼此也是不可以互换的,不要期望一个交易所 的自定义参数可以用于另一个交易所。 - -```text -# add a custom order flag -kraken.create_market_buy_order('BTC/USD', 1, {'trading_agreement': 'agree'}) -``` - -### 二十,其他类型的委托单 - -委托单的类型可以是限价或市价,如果你要限价止损委托类型,可以使用 改写默认参数值。下面的代码展示了如何改写委托单类型,然而,你必须阅读交易所的 文档以了解应该使用什么参数以及如何正确设定参数值。限价委托或 市价委托之外的其他类型目前在ccxt中还没有统一的API,只能参考如下 代码改写默认的参数。 - -↓ShowCode↓ - -### 二十一,取消委托单 - -要取消已有的委托单,可以使用`cancelOrder (id, symbol, params)` / `cancel_order (id, symbol, params)`方法。 注意,即使指定了要取消的委托单ID,有些交易所还是要求传入第二个参数指定交易对符号。 - -`cancelOrder`调用示例代码如下。 - -```text -exchange.cancel_order ('1234567890') # replace with your order id here (a string) -``` - -**委托单取消异常** - -`cancelOrder()`通常仅用于敞口委托单。然而,交易所有可能在你的取消请求 之前刚好执行了委托单,因此取消请求可能击中一个已经完成的委托单。 - -取消请求也可能会抛出`NetworkError`异常,表示委托单可能没有成功取消。 后续的`cancelOrder()`调用也可能击中一个已经取消的委托单。 - -因此,`cancelOrder()`在这些情况下会抛出`OrderNotFound`异常: - -* 取消一个已经完成的委托单 -* 取消一个已经取消的委托单 - -### 二十二,委托单与交易的关系 - -交易也称为成交。每个交易都是委托单执行的结果。需要注意的是, 委托单和交易是一对多的关系:委托单的一次执行可能会产生多笔交易。 然而,当一个委托单匹配了另一个相反方向的委托单,就会生成一笔 交易。因此,当一个委托单匹配了另一个方向的多个委托单时,就会 生成多笔交易,每个配对对应一笔交易。 - -简而言之,一个委托单可以包含一笔或多笔交易。或者换句话说, 一个委托单可以通过一笔或多笔交易来成交。 - -例如,委托账本中可以包含如下的委托单(可以是任何交易符号或交易对): - -```text - | price | amount -----|---------------- - a | 1.200 | 200 - s | 1.100 | 300 - k | 0.900 | 100 -----|---------------- - b | 0.800 | 100 - i | 0.700 | 200 - d | 0.500 | 100 -``` - -上面的数字都不是真实的,这只是用于演示委托单和交易之间的关系。 - -一个卖家决定在卖出侧下一个限价卖出单,价格为0.700,数量为150: - -```text - | price | amount -----|---------------- ↓ - a | 1.200 | 200 ↓ - s | 1.100 | 300 ↓ - k | 0.900 | 100 ↓ -----|---------------- ↓ - b | 0.800 | 100 ↓ sell 150 for 0.700 - i | 0.700 | 200 -------------------- - d | 0.500 | 100 -``` - -由于新的卖出单的价格和数量覆盖超过一个买入委托单(委托单b和i), 在交易撮合引擎中很快(但不是立刻)会产生以下事件: - -委托单b可以匹配新进来的卖单,因为两者价格有交集。它们的数量 可以彼此消化,因此,买入方在0.800价格成交了100单位。买方的 卖出委托单在0.800价位部分成交了100单位。注意对于委托单的成交 部分,买方得到了比初始要求更好的价格。他要求最低价格是0.7, 但是成交价是更好的0.8。大多数传统的交易所使用最优价格来执行 委托单。 - -交易撮合引擎会为委托单b生成一笔和进来的卖出单发生的交易。这个 交易成交了整个委托单b,以及卖出单的大部分数量。每一对匹配的 委托单都会生成一笔交易,无论是部分成交还是全部成交。在这个示例 中,买方数量100可以让委托单b完全成交(完成委托单b),同时也 部分成交了卖方的委托单(它在委托账本中还是敞口的)。 - -委托单b现在是完成状态,成交数量是100,它包含了一笔和卖出单 发生的交易。卖出单目前是敞口状态,成交数量是100,它包含了 一个和委托单b发生的交易。因此到目前位置,每个订单都只有 一个成交交易。 - -进入撮合引擎的卖出委托单目前的成交数量是100,还剩下50单位 继续等待成交。 - -委托账本的中间状态现在如下所示(委托单b已经完成,因此已经不再 出现在委托账本中): - -```text - | price | amount -----|---------------- ↓ - a | 1.200 | 200 ↓ - s | 1.100 | 300 ↓ - k | 0.900 | 100 ↓ -----|---------------- ↓ sell remaining 50 for 0.700 - i | 0.700 | 200 ----------------------------- - d | 0.500 | 100 -``` - -委托单i可以匹配卖出单的剩余部分,因为两者价格相交。买入单i的数量 是200,因此可以完全吃掉卖出单的剩余数量50。委托单i可以部分成交 50单位,但是其剩余数量150还将继续在委托账本中等待撮合。不过卖出 委托单在这第二次撮合过程中可以完全成交了。 - -交易撮合引擎为委托单i生成一笔和卖出单发生的交易。这笔交易让委托单i 部分成交,让卖出单完全成交。又一次,一对匹配的委托单生成了一笔交易。 - -经过上述步骤,更新后的委托账本看起来是这样: - -```text - | price | amount -----|---------------- - a | 1.200 | 200 - s | 1.100 | 300 - k | 0.900 | 100 -----|---------------- - i | 0.700 | 150 - d | 0.500 | 100 -``` - -注意委托单b已经消失了,卖出单也不在了。所有完成的委托单都会从 委托账本中移除。部分成交的委托单i处于敞口状态,依然还呆在委托 账本中。 - -### 二十三,查询个人的历史交易 - -ccxt库的统一API中的大部分方法会返回单个交易对象或交易对象数组。 但是,极少数交易所会一次返回全部个人交易。大多数情况下,交易所 的API会限制返回结果的数量。你不应该在一个调用中读取所有交易对象。 实际上,极少有交易所会容忍或允许这种行为。 - -要查询历史交易,用户需要分页遍历数据。分页通常隐含着使用循环 分批获取数据的意思。 - -在大多数情况下,用户需要提供至少某种类型的分页以便可以一致地获取期望的结果。 使用`fetchMyTrade`/`fetch_my_trade`方法获取个人的历史交易,其方法原型与调用的示例代码如下。 - -```text -# fetch_my_trades (symbol = None, since = None, limit = None, params = {}) - -if exchange.has['fetchMyTrades']: - exchange.fetch_my_trades (symbol = None, since = None, limit = None, params = {}) -``` - -`fetchMyTrade`方法返回一个有序的交易对象数组,最近产生的交易排在最后。 - -### 二十四,交易的数据结构 - -在ccxt中,交易的数据结构如下: - -```text -{ - 'info': { ... }, // the original decoded JSON as is - 'id': '12345-67890:09876/54321', // string trade id - 'timestamp': 1502962946216, // Unix timestamp in milliseconds - 'datetime': '2017-08-17 12:42:48.000', // ISO8601 datetime with milliseconds - 'symbol': 'ETH/BTC', // symbol - 'order': '12345-67890:09876/54321', // string order id or undefined/None/null - 'type': 'limit', // order type, 'market', 'limit' or undefined/None/null - 'side': 'buy', // direction of the trade, 'buy' or 'sell' - 'takerOrMaker': 'taker', // string, 'taker' or 'maker' - 'price': 0.06917684, // float price in quote currency - 'amount': 1.5, // amount of base currency - 'cost': 0.10376526, // total cost (including fees), `price * amount` - 'fee': { // provided by exchange or calculated by ccxt - 'cost': 0.0015, // float - 'currency': 'ETH', // usually base currency for buys, quote currency for sells - 'rate': 0.002, // the fee rate (if available) - }, -} -``` - -补充说明如下: - -* fee:手续费部分的处理目前还在进行中,可能缺失信息甚至没有 -* fee currency:手续费货币可能不同于所交易的货币,例如,一个 ETH/BTC委托单的手续费采用USD支付 -* cost:交易总花费 = amount \* price,这是一个方便字段,可以利用其他字段计算得出。 - -### 二十五,获取充值地址 - -要将资金存入交易所,你必须先从交易所获取一个你希望存入的数字货币的 地址。大多数交易所会为用户创建并管理这些地址。有些交易所也允许用户 创建用于充值的新地址。有些交易所则要求用户为每次充值都创建新的充值 地址。 - -用于充值的地址可以使用`fetchDepositAddress`方法获取在交易所中已有的地址, 也可以使用`createDepositAddress`创建新的地址。要查看交易所支持哪个方法, 可以使用`exchange.has['fetchDepositAddress']`和`exchange.has['createDepositAddress']` 属性,这两个方法都返回一个地址结构: - -```text -fetchDepositAddress (code, params = {}) -createDepositAddress (code, params = {}) -``` - -* code:统一的货币代码,大写字符串 -* params:额外的可选参数 - -有些交易所也提供API方法来一次获取多个或全部充值地址: - -```text -fetchDepositAddresses (codes = undefined, params = {}) -``` - -取决于交易所的要求,上述调用可能需要传入货币代码数组作为第一个参数。 `fetchDepositAddresses`方法返回一个地址对象数组。 - -### 二十六,地址的数据结构 - -`fetchDepositAddress`、`fetchDepositAddresses`和`createDepositAddress`方法返回的 地址,结构如下: - -```text -{ - 'currency': currency, // currency code - 'address': address, // address in terms of requested currency - 'tag': tag, // tag / memo / paymentId for particular currencies (XRP, XMR, ...) - 'info': response, // raw unparsed data as returned from the exchange -} -``` - -有些货币,例如 AEON, BTS, GXS, NXT, SBD, STEEM, STR, XEM, XLM, XMR, XRP, 交易所通常会要求提供一个额外的标签(tag)参数。其他货币则将标签设置为 undefined / None / null。标签可以是备注、消息或支付ID,用来附加在提现交易 上。对于上述货币来说,标签是强制性的,因为交易所需要用它来区分不同的用户账户。 - -当设置标签和地址时需要谨慎。标签不是你随便选择的字符串!你不能在标签里发送 用户消息和评论。标签字段的目的是正确定位你的钱包,因此必须是正确的。你应该 只使用从交易所收到的标签,否则你的交易可能永远也不会到达目标地址。 - -### 二十七,提现 - -使用交易所实例的`withdraw`方法从交易所提现。示例代码如下。 - -```text -exchange.withdraw(code, amount, address, tag=None, params={}) -``` - -`code`参数表示货币代码(通常是三位大写字幕,但是不同情况下可能有所差异)。 - -`withdraw`方法返回一个字典,其中的提现ID字段值通常是链上交易的ID,或者 是交易所内部的提现请求ID。`withdraw`的返回值看起来像这样: - -```text -{ - 'info' { ... }, // unparsed reply from the exchange, as is - 'id': '12345567890', // string withdrawal id, if any -} -``` - -有些交易所采用双因子认证的手段要求每一笔提现都进行人工确认。为了放行 你的提现请求,通常你不得不点击交易所发给你的邮件中的秘密链接,或者 在交易所网站上输入一个验证码,以便交易所确认提现交易是安全的。 - -在有些情况下,你也可以使用提现ID在稍后检查提现状态(是否成功)并 提交双因子确认码,这需要参考交易所的文档获取详细信息。 - -### 二十八,链上交易数据结构 - -ccxt库中,链上交易(Transaction)的数据结构如下: - -```text -{ - 'info': { ... }, // the JSON response from the exchange as is - 'id': '123456', // exchange-specific transaction id, string - 'txid': '0x68bfb29821c50ca35ef3762f887fd3211e4405aba1a94e448a4f218b850358f0', - 'timestamp': 1534081184515, // timestamp in milliseconds - 'datetime': '2018-08-12T13:39:44.515Z', // ISO8601 string of the timestamp - 'addressFrom': '0x38b1F8644ED1Dbd5DcAedb3610301Bf5fa640D6f', // sender - 'address': '0x02b0a9b7b4cDe774af0f8e47cb4f1c2ccdEa0806', // "from" or "to" - 'addressTo': '0x304C68D441EF7EB0E2c056E836E8293BD28F8129', // receiver - 'tagFrom', '0xabcdef', // "tag" or "memo" or "payment_id" associated with the sender - 'tag': '0xabcdef' // "tag" or "memo" or "payment_id" associated with the address - 'tagTo': '0xhijgklmn', // "tag" or "memo" or "payment_id" associated with the receiver - 'type': 'deposit', // or 'withdrawal', string - 'amount': 1.2345, // float (does not include the fee) - 'currency': 'ETH', // a common unified currency code, string - 'status': 'pending', // 'ok', 'failed', 'canceled', string - 'updated': undefined, // UTC timestamp of most recent status change in ms - 'comment': 'a comment or message defined by the user if any', - 'fee': { // the entire fee structure may be undefined - 'currency': 'ETH', // a unified fee currency code - 'cost': 0.1234, // float - 'rate': undefined, // approximately, fee['cost'] / amount, float - }, -} -``` - -补充说明: - -* 如果交易所没有设置交易的方向(买入/卖出), addressFrom 或 addressTo 的值可能为undefined/None/null -* address字段的含义是交易所相关的。有些情况下该字段的值表示发送方的地址,有时则可能表示接收方的地址。 -* update字段表示最近的资金操作的状态变化,以毫秒计算的UTC时间戳。 -* 取决于交易所的支持与否,fee字段的内容可能缺失 -* comment字段的值可能是undefined/None/null,否则表示用户创建链上交易时传入的消息或备注 -* 处理标签(tag)和地址(address)时需要谨慎,标签不是用户任意指定的字符串,不能在 标签中发送用户消息和评论。标签的目的是正确定位你的钱包。因此应当遵循交易所的要求。 - -### 二十九,查询充值记录 - -使用ccxt统一API的`fetchDeposits`方法查询充值记录。示例代码如下。 - -```text -# fetch_deposits(code = None, since = None, limit = None, params = {}) - -if exchange.has['fetchDeposits']: - deposits = exchange.fetch_deposits(code, since, limit, params) -else: - raise Exception (exchange.id + ' does not have the fetch_deposits method') -``` - -### 三十,查询提现记录 - -使用ccxt统一API的`fetchWithdrawals`方法查询提现记录。示例代码如下。 - -```text -# fetch_withdrawals(code = None, since = None, limit = None, params = {}) - -if exchange.has['fetchWithdrawals']: - withdrawals = exchange.fetch_withdrawals(code, since, limit, params) -else: - raise Exception (exchange.id + ' does not have the fetch_withdrawals method') -``` - -### 三十一,查询链上交易 - -使用ccxt统一API的`fetchTransactions`方法查询链上交易。示例代码如下。 - -```text -# fetch_transactions(code = None, since = None, limit = None, params = {}) - -if exchange.has['fetchTransactions']: - transactions = exchange.fetch_transactions(code, since, limit, params) -else: - raise Exception (exchange.id + ' does not have the fetch_transactions method') -``` - -### 三十二,查询手续费 - -手续费通常可以分为以下两类: - -* 交易手续费:向交易所支付的交易手续费,通常按成交量的百分点计取 -* 资金操作手续费:在充值和提现时向交易所支付的费用,包含链上交易费用 - -因为手续费结构会依赖于用户交易的货币的实际交易量,手续费是与账户相关的。 ccxt的统一API中,提供了以下方法用于账户相关的手续费处理: - -* fetchFees \(params = {}\) -* fetchTradingFees \(params = {}\) -* fetchFundingFees \(params = {}\) - -手续费方法将返回一个统一的手续费结构,该结构在整个ccxt库中保持统一, 通常采用交易市场或货币为索引键。手续费结构如下: - -```text -{ - 'type': takerOrMaker, - 'currency': 'BTC', // the unified fee currency code - 'rate': percentage, // the fee rate, 0.05% = 0.0005, 1% = 0.01, ... - 'cost': feePaid, // the fee cost (amount * fee rate) -} -``` - -手续费这一部分的代码目前还在进行中,因此其中有些方法和属性在某些交易所 可能还会缺失。 - -**不要使用已经废弃的`.fees`属性。** - -### 三十三,查询交易所状态 - -交易所状态描述交易所API的最近可用情况。交易所状态信息可能是在交易所 实现类中硬编码的,也可能是从交易所API直接获取的。 - -可以使用ccxt的统一API中的`fetchStatus`方法来查询交易所状态。其返回结果为 以下三者之一: - -* 交易所实现类硬编码的信息,例如,如果交易所宕机的话 -* 使用交易所对象的ping或fetchTime方法检查交易所API是否存活 -* 使用交易所提供的API获取状态信息 - -`fetchStatus`方法原型如下: - -```text -fetchStatus(params = {}) -``` - -方法返回的状态数据结构如下: - -```python -{ - 'status': 'ok', // 'ok', 'shutdown', 'error', 'maintenance' - 'updated': undefined, // integer, last updated timestamp in milliseconds if updated via the API - 'eta': undefined, // when the maintenance or outage is expected to end - 'url': undefined, // a link to a GitHub issue or to an exchange post on the subject -} -``` - -说明: - -* 'ok'表示交易所API可用 -* 'shutdown'表示交易所停机,这时`updated`字段的值就表示停机时间 -* 'error'表示API不兼容 -* 'maintenance'表示常规维护,`eta`字段的值表示预计恢复时间。 - -### 三十四,预算交易费 - -交易费是市场的属性。通常交易费使用`fetchMarkets`调用载入。但有时 交易所会使用不同的访问端结点提供交易费服务。 - -ccxt的统一API中的`calculateFee`方法可以预算交易费。**警告!**这个方法 是实验性的,不稳定而且可能在有些情况下的结果不正确。请谨慎使用。 实际的手续费可能和`calculateFee`返回的结果不一致,因此不要依赖于 预算值,因为市场条件变化很快,很难预料你的委托单是会成为maker还是taker。 方法原型如下: - -```text -calculateFee (symbol, type, side, amount, price, takerOrMaker = 'taker', params = {}) -``` - -`calculateFee`方法将返回统一的手续费结构。 - -应当使用交易所的`.markets`属性方位交易费率,例如: - -```python -exchange.markets['ETH/BTC']['taker'] // taker fee rate for ETH/BTC -exchange.markets['BTC/USD']['maker'] // maker fee rate for BTC/USD -``` - -当你为交易所提供流动性时,支付的是maker手续费。maker手续费通常低于 taker手续费。当你从交易所拿走流动性时,则需要支付taker手续费。 - -### 三十五,资金操作费 - -资金操作费是货币的属性。 - -可以使用交易所的`.currencies`属性访问资金操作费率。这方面目前在ccxt 中还没有统一,未来可能会有变化。 - -```python -exchange.currencies['ETH']['fee'] // tx/withdrawal fee rate for ETH -exchange.currencies['BTC']['fee'] // tx/withdrawal fee rate for BTC -``` - -### 三十六,查询账本 - -有些交易所提供额外的访问点用于查询整合的账本历史。账本 就是变化的历史,记录改变用户余额的操作,包括充值和提现等。 - -使用ccxt统一API中的`fetchLedger`方法查询账本,原型如下: - -```python -async fetchLedger (code = undefined, since = undefined, limit = undefined, params = {}) -``` - -有些交易所不允许一次查询所有的账本条目,需要在调用`fetchLedger` 方法时指定code参数。 - -### 三十七,账本记录结构 - -账本记录结构如下: - -```python -{ - 'id': 'hqfl-f125f9l2c9', // string id of the ledger entry, e.g. an order id - 'direction': 'out', // or 'in' - 'account': '06d4ab58-dfcd-468a', // string id of the account if any - 'referenceId': 'bf7a-d4441fb3fd31', // string id of the trade, transaction, etc... - 'referenceAccount': '3146-4286-bb71', // string id of the opposite account (if any) - 'type': 'trade', // string, reference type, see below - 'currency': 'BTC', // string, unified currency code, 'ETH', 'USDT'... - 'amount': 123.45, // absolute number, float (does not include the fee) - 'timestamp': 1544582941735, // milliseconds since epoch time in UTC - 'datetime': "2018-12-12T02:49:01.735Z", // string of timestamp, ISO8601 - 'before': 0, // amount of currency on balance before - 'after': 0, // amount of currency on balance after - 'status': 'ok', // 'ok, 'pending', 'canceled' - 'fee': { // object or or undefined - 'cost': 54.321, // absolute number on top of the amount - 'currency': 'ETH', // string, unified currency code, 'ETH', 'USDT'... - }, - 'info': { ... }, // raw ledger entry as is from the exchange -} -``` - -补充说明: - -账本记录的类型就是与之关联的操作类型。如果amout来自委托单,那么关联的交易类型就是`trade`,同时`referenceId`字段的值记录交易ID。如果amount 来自提现操作,那么这条记录关联的就是链上交易。可能值如下: - -* trade -* transaction -* fee -* rebate -* cashback -* referral -* transfer -* whatever -* ... - -`referenceId`字段表示引用ID,记录对应事件的ID。 - -`status`字段描述账本变化是成功(ok)、待定(pending)还是取消(ok)等状态。 大多数情况下都应该是ok。 - -`type`字段可以关联常规交易、链上交易(充值或提现操作)或交易所内部转账。 如果账本记录关联的是内部转账,那么`account`字段将包含该记录要修改的账户ID, `referenceAccount`字段的值则是相对方向的账户ID。 - -### 三十八,修改Nonce值 - -默认的nonce是以秒计的32位unix时间戳。如果你希望进行更频繁的 私有请求,应该使用毫秒计的nonce来改写,否则最快才能每秒发一个请求。 当你达到交易所限流值时,大多数交易所都会进行节流,请参考具体 交易所的API文档。 - -要重设nonce值的话,更简单的方式是再创建一个用于访问私有api 的密钥对。 - -有些情况下你没办法创建新的密钥,比如没有权限或者其他原因。 这时也有办法改写nonce值,可以使用ccxt统一api中市场基类的以下方法: - -* seconds \(\): 返回秒计的unix时间戳 -* milliseconds \(\): 返回毫秒计的unix时间戳 -* microseconds \(\): 返回微秒计的unix时间戳 - -有的交易所在API文档中搞混了毫秒和微秒,原谅他们吧。你可以使用上面的这些方法重设nocne值。示例代码如下。 - -```python -# A: the shortest -gdax = ccxt.gdax({'nonce': ccxt.Exchange.milliseconds}) - -# B: custom nonce -class MyKraken(ccxt.kraken): - n = 1 - def nonce(self): - return self.n += 1 - -# C: milliseconds nonce -class MyBitfinex(ccxt.bitfinex): - def nonce(self): - return self.milliseconds() - -# D: milliseconds nonce inline -hitbtc = ccxt.hitbtc({ - 'nonce': lambda: int(time.time() * 1000) -}) - -# E: milliseconds nonce -acx = ccxt.acx({'nonce': lambda: ccxt.Exchange.milliseconds()}) -``` - -[Top~~](https://www.cnblogs.com/zyyhxbs/p/13803561.html#_labelTop) - -## 十一,CCXT错误处理 - -### 一,错误处理概述 - -ccxt采用各种语言中原生的异常机制进行错误处理。 - -要处理错误,你需要使用try代码块来保护调用ccxt统一API的代码, 然后使用catch代码块捕捉异常。示例代码如下。 - -```python -try: - response = await exchange.fetch_order_book('ETH/BTC') - print(response) -except ccxt.NetworkError as e: - print(exchange.id, 'fetch_order_book failed due to a network error:', str(e)) - # retry or whatever - # ... -except ccxt.ExchangeError as e: - print(exchange.id, 'fetch_order_book failed due to exchange error:', str(e)) - # retry or whatever - # ... -except Exception as e: - print(exchange.id, 'fetch_order_book failed with:', str(e)) - # retry or whatever - # ... -``` - -### 二,异常类的体系 - -ccxt中所有的机场都派生自BaseError基类,其定义如下: - -```python -class BaseError (Exception): - pass -``` - -下面是ccxt异常类的继承体系: - -↓ShowCode↓ - -`BaseError`类是各种错误的一般性描述,包括可用性错误、请求/响应错误等。 开发者至少应该捕捉这个异常,如果不需要区分具体是什么错误的话。 - -在错误体系中有两个子树,都派生自BaseError: - -* NetworkError -* ExchangeError - -`NetworkError`表示不严重的错误,某种意义上说并不是真正的错误,更可能是临时性的不可用情况,可能原因包括交易所维护、DDoS保护和临时性访问阻断。 - -相比之下,`ExchangeError`是严重的错误 – 如果捕捉到这个错误,那么你使用 相同的输入应该都会得到同样的错误。 - -这两族错误的区别在于`NetworkError`是可恢复的,而`ExchangeError`是不可恢复的。 - -### 三,交易所异常 - -当交易所服务器返回的JSON响应中包含了错误信息时,ccxt就会 抛出这个异常。可能的原因包括: - -* 访问端结点被交易所关闭 -* 交易所未找到指定的交易对符号 -* 请求的参数缺失 -* 参数格式不正确 -* 交易所响应含义不明确 - -其他从ExchangeError派生的异常包括: - -* NotSupported:如果交易所的API不支持所访问的端结点,就会抛出这个异常 -* AuthenticationError:如果API需要身份验证而请求中没有提供或者提供的不正确,就会抛出这个异常 -* PermissionDenied:如果请求中指定的api key没有足够的权限,就会抛出这个异常 -* InsufficientFunds:如果账户余额不足以执行当前请求的操作,例如委托下单,就会抛出这个异常 -* InvalidAddress:如果请求中的地址格式不正确,就会抛出这个异常 -* InvalidOrder:这是统一API中order系列方法异常类的基类 -* OrderNotFound:试图查询或取消不存在的委托单时,就会抛出这个异常 - -### 四,网络异常 - -所有网络相关的错误通常是可恢复的,网络故障、流量阻塞、服务器不可用这些 通常都是时间相关的,稍后重新请求通常就能解决问题。 - -**DDoS保护异常 - DDoSProtection** - -当有以下情况之一发生时,就会抛出这个异常: - -* 当Cloudflare或Incapsula限流时 -* 当交易所限流时 - -除了默认的错误处理,ccxt库会使用以下关键字搜索交易所的响应内容: - -* cloudflare -* incapsula -* overload -* ddos - -**请求超时异常 - RequestTimeout** - -当与交易所的连接失败或没有在指定时间内收到交易所响应的完整数据时, 就会抛出RequestTimeout异常。 - -因此建议采用以下方式处理这一类的异常: - -* 对于查询请求,只需要重新尝试调用即可 -* 对于 - - ```text - cancelOrder - ``` - - 请求,要求用户进行二次尝试。如果没有进行二次尝试 而是立即调用了fetchOrder, fetchOrders, fetchOpenOrders 或 fetchClosedOrders, 那么可能导致 - - ```text - .orders - ``` - - 缓存不同步。二次尝试调用 - - ```text - cancelOrder - ``` - - 可能返回 以下结果之一: - - * 成功完成,表示委托单已经正确地取消了 - * 抛出OrderNotFound异常,表示委托单要么已经在上次请求时取消, 要么已经在两次请求的间隔执行(完成或成交)。这是需要调用`fetchOrder`来 正确地更新缓存 - -* 如果 - - ```text - createOrder - ``` - - 请求抛出 - - ```text - RequestTimeout - ``` - - 异常,开发者应当: - - * 使用fetchOrders, fetchOpenOrders, fetchClosedOrders检查上个请求是否成功下单 并更新orders缓存。 - * 如果委托单不是敞口状态,那么开发者需要调用`fetchBalance`检查账户余额 是否变化。注意fetchBlanace依靠orders缓存进行余额推理,因此只能在更新 缓存后进行调用! - -**交易所不可用异常 - ExchangeNotAvailable** - -如果在响应中检测到如下任何关键字,ccxt库会抛出ExchangeNotAvailable异常: - -* offline -* unavailable -* busy -* retry -* wait -* maintain -* maintenance -* maintenancing - -**无效Nonce异常 - InvalidNonce** - -当你使用的Nonce比之前的请求中的nonce还要小的时候,ccxt就会抛出InvalidNoce异常。 在以下情况中会抛出这一类异常: - -* 你没有进行请求限流,或者发送太多请求 -* 你的API key没有刷新,可能在其他软件或脚本中使用了同样的api key -* 在多个交易所实例中使用相同的api密钥对 -* 系统时钟没有同步。 - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/ccxt-zhong-wen-kai-fa-shou-ce.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/ccxt-zhong-wen-kai-fa-shou-ce.md deleted file mode 100644 index 8af5cec0..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/ccxt-zhong-wen-kai-fa-shou-ce.md +++ /dev/null @@ -1,3630 +0,0 @@ -# CCXT手册 - -## \*\*\*\*[**CCXT手册**](http://cw.hubwiz.com/card/c/ccxt-dev-manual/) - -## **CCXT开发概述** - -### \*\*\*\*[CCXT概述](http://cw.hubwiz.com/card/c/ccxt-dev-manual/1/1/1/) - -#### CCXT开发库概述 - -ccxt库包含了众多交易所的抽象类,提供访问多个数字货币交易所的统一的API。 每个类都实现了一个特定的加密货币交易所的公开和私有API。所有的交易所 实现类都派生子Exchange基类,有一组公共的方法。要使用ccxt库访问某个 特定的交易所,你需要创建该交易所对应的ccxt交易所类的实例。ccxt会定期 增加新的交易所并更新支持的交易所。 - -#### CCXT库接口 - -ccxt库的结构概览如下图所示: - -```text - User - +-------------------------------------------------------------+ - | CCXT | - +------------------------------+------------------------------+ - | Public | Private | - +=============================================================+ - │ . | - │ The Unified CCXT API | - │ . | - | loadMarkets . fetchBalance | - | fetchMarkets . createOrder | - | fetchCurrencies . cancelOrder | - | fetchTicker . fetchOrder | - | fetchTickers . fetchOrders | - | fetchOrderBook . fetchOpenOrders | - | fetchOHLCV . fetchClosedOrders | - | fetchStatus . fetchMyTrades | - | fetchTrades . deposit | - | . withdraw | - │ . | - +=============================================================+ - │ . | - | Custom Exchange API | - | (Derived Classes And Their Implicit Methods) | - │ . | - | publicGet... . privateGet... | - | publicPost... . privatePost... | - | . privatePut... | - | . privateDelete... | - | . sign | - │ . | - +=============================================================+ - │ . | - | Base Exchange Class | - │ . | - +=============================================================+ -``` - -上面列举的所有交易所的完整的公开/私有HTTPS REST API,在ccxt中都已经实现。 WebSocket和FIX的JavaScript、PHP、Python以及其他语言的实现也将很快完成。 - -### 支持的交易所 - -CCXT目前支持127个数字货币交易所和交易API: - -| logo | id | 名称 | 版本 | 文档 | 认证标志 | -| :--- | :--- | :--- | :--- | :--- | :--- | -| [![\_1btcxe](https://user-images.githubusercontent.com/1294454/27766049-2b294408-5ecc-11e7-85cc-adaff013dc1a.jpg)](https://1btcxe.com/) | \_1btcxe | [1BTCXE](https://1btcxe.com/) | | [API](https://1btcxe.com/api-docs.php) | | -| [![acx](https://user-images.githubusercontent.com/1294454/30247614-1fe61c74-9621-11e7-9e8c-f1a627afa279.jpg)](https://acx.io/) | acx | [ACX](https://acx.io/) | 2 | [API](https://acx.io/documents/api_v2) | | -| [![adara](https://user-images.githubusercontent.com/1294454/49189583-0466a780-f380-11e8-9248-57a631aad2d6.jpg)](https://adara.io/) | adara | [Adara](https://adara.io/) | 1 | [API](https://api.adara.io/v1) | | -| [![allcoin](https://user-images.githubusercontent.com/1294454/31561809-c316b37c-b061-11e7-8d5a-b547b4d730eb.jpg)](https://www.allcoin.com/) | allcoin | [Allcoin](https://www.allcoin.com/) | 1 | [API](https://www.allcoin.com/api_market/market) | | -| [![anxpro](https://user-images.githubusercontent.com/1294454/27765983-fd8595da-5ec9-11e7-82e3-adb3ab8c2612.jpg)](https://anxpro.com/) | anxpro | [ANXPro](https://anxpro.com/) | | [API](https://anxv2.docs.apiary.io/) | | -| [![bcex](https://user-images.githubusercontent.com/1294454/43362240-21c26622-92ee-11e8-9464-5801ec526d77.jpg)](https://www.bcex.top/register?invite_code=758978&lang=en) | bcex | [BCEX](https://www.bcex.top/register?invite_code=758978&lang=en) | 1 | [API](https://github.com/BCEX-TECHNOLOGY-LIMITED/API_Docs/wiki/Interface) | | -| [![bequant](https://user-images.githubusercontent.com/1294454/55248342-a75dfe00-525a-11e9-8aa2-05e9dca943c6.jpg)](https://bequant.io/) | bequant | [Bequant](https://bequant.io/) | 2 | [API](https://api.bequant.io/) | | -| [![bibox](https://user-images.githubusercontent.com/1294454/34902611-2be8bf1a-f830-11e7-91a2-11b2f292e750.jpg)](https://www.bibox.com/signPage?id=11114745&lang=en) | bibox | [Bibox](https://www.bibox.com/signPage?id=11114745&lang=en) | 1 | [API](https://github.com/Biboxcom/api_reference/wiki/home_en) | | -| [![bigone](https://user-images.githubusercontent.com/1294454/42803606-27c2b5ec-89af-11e8-8d15-9c8c245e8b2c.jpg)](https://b1.run/users/new?code=D3LLBVFT) | bigone | [BigONE](https://b1.run/users/new?code=D3LLBVFT) | 2 | [API](https://open.big.one/docs/api.html) | | -| [![binance](https://user-images.githubusercontent.com/1294454/29604020-d5483cdc-87ee-11e7-94c7-d1a8d9169293.jpg)](https://www.binance.com/?ref=10205187) | binance | [Binance](https://www.binance.com/?ref=10205187) | | [API](https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![binanceje](https://user-images.githubusercontent.com/1294454/54874009-d526eb00-4df3-11e9-928c-ce6a2b914cd1.jpg)](https://www.binance.je/?ref=35047921) | binanceje | [Binance Jersey](https://www.binance.je/?ref=35047921) | | [API](https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md) | | -| [![binanceus](https://user-images.githubusercontent.com/1294454/65177307-217b7c80-da5f-11e9-876e-0b748ba0a358.jpg)](https://www.binance.us/?ref=35005074) | binanceus | [Binance US](https://www.binance.us/?ref=35005074) | | [API](https://github.com/binance-us/binance-official-api-docs) | | -| [![bit2c](https://user-images.githubusercontent.com/1294454/27766119-3593220e-5ece-11e7-8b3a-5a041f6bcc3f.jpg)](https://bit2c.co.il/Aff/63bfed10-e359-420c-ab5a-ad368dab0baf) | bit2c | [Bit2C](https://bit2c.co.il/Aff/63bfed10-e359-420c-ab5a-ad368dab0baf) | | [API](https://www.bit2c.co.il/home/api) | | -| [![bitbank](https://user-images.githubusercontent.com/1294454/37808081-b87f2d9c-2e59-11e8-894d-c1900b7584fe.jpg)](https://bitbank.cc/) | bitbank | [bitbank](https://bitbank.cc/) | 1 | [API](https://docs.bitbank.cc/) | | -| [![bitbay](https://user-images.githubusercontent.com/1294454/27766132-978a7bd8-5ece-11e7-9540-bc96d1e9bbb8.jpg)](https://auth.bitbay.net/ref/jHlbB4mIkdS1) | bitbay | [BitBay](https://auth.bitbay.net/ref/jHlbB4mIkdS1) | | [API](https://bitbay.net/public-api) | | -| [![bitfinex](https://user-images.githubusercontent.com/1294454/27766244-e328a50c-5ed2-11e7-947b-041416579bb3.jpg)](https://www.bitfinex.com/) | bitfinex | [Bitfinex](https://www.bitfinex.com/) | 1 | [API](https://docs.bitfinex.com/v1/docs) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![bitfinex2](https://user-images.githubusercontent.com/1294454/27766244-e328a50c-5ed2-11e7-947b-041416579bb3.jpg)](https://www.bitfinex.com/) | bitfinex2 | [Bitfinex](https://www.bitfinex.com/) | 2 | [API](https://docs.bitfinex.com/v2/docs/) | | -| [![bitflyer](https://user-images.githubusercontent.com/1294454/28051642-56154182-660e-11e7-9b0d-6042d1e6edd8.jpg)](https://bitflyer.jp/) | bitflyer | [bitFlyer](https://bitflyer.jp/) | 1 | [API](https://lightning.bitflyer.com/docs?lang=en) | | -| [![bitforex](https://user-images.githubusercontent.com/1294454/44310033-69e9e600-a3d8-11e8-873d-54d74d1bc4e4.jpg)](https://www.bitforex.com/en/invitationRegister?inviterId=1867438) | bitforex | [Bitforex](https://www.bitforex.com/en/invitationRegister?inviterId=1867438) | 1 | [API](https://github.com/bitforexapi/API_Docs/wiki) | | -| [![bithumb](https://user-images.githubusercontent.com/1294454/30597177-ea800172-9d5e-11e7-804c-b9d4fa9b56b0.jpg)](https://www.bithumb.com/) | bithumb | [Bithumb](https://www.bithumb.com/) | | [API](https://apidocs.bithumb.com/) | | -| [![bitkk](https://user-images.githubusercontent.com/1294454/32859187-cd5214f0-ca5e-11e7-967d-96568e2e2bd1.jpg)](https://www.bitkk.com/) | bitkk | [bitkk](https://www.bitkk.com/) | 1 | [API](https://www.bitkk.com/i/developer) | | -| [![bitlish](https://user-images.githubusercontent.com/1294454/27766275-dcfc6c30-5ed3-11e7-839d-00a846385d0b.jpg)](https://bitlish.com/) | bitlish | [Bitlish](https://bitlish.com/) | 1 | [API](https://bitlish.com/api) | | -| [![bitmart](https://user-images.githubusercontent.com/1294454/61835713-a2662f80-ae85-11e9-9d00-6442919701fd.jpg)](http://www.bitmart.com/?r=rQCFLh) | bitmart | [BitMart](http://www.bitmart.com/?r=rQCFLh) | 2 | [API](https://github.com/bitmartexchange/bitmart-official-api-docs) | | -| [![bitmex](https://user-images.githubusercontent.com/1294454/27766319-f653c6e6-5ed4-11e7-933d-f0bc3699ae8f.jpg)](https://www.bitmex.com/register/rm3C16) | bitmex | [BitMEX](https://www.bitmex.com/register/rm3C16) | 1 | [API](https://www.bitmex.com/app/apiOverview) | | -| [![bitso](https://user-images.githubusercontent.com/1294454/27766335-715ce7aa-5ed5-11e7-88a8-173a27bb30fe.jpg)](https://bitso.com/?ref=itej) | bitso | [Bitso](https://bitso.com/?ref=itej) | 3 | [API](https://bitso.com/api_info) | | -| [![bitstamp](https://user-images.githubusercontent.com/1294454/27786377-8c8ab57e-5fe9-11e7-8ea4-2b05b6bcceec.jpg)](https://www.bitstamp.net/) | bitstamp | [Bitstamp](https://www.bitstamp.net/) | 2 | [API](https://www.bitstamp.net/api) | | -| [![bitstamp1](https://user-images.githubusercontent.com/1294454/27786377-8c8ab57e-5fe9-11e7-8ea4-2b05b6bcceec.jpg)](https://www.bitstamp.net/) | bitstamp1 | [Bitstamp](https://www.bitstamp.net/) | 1 | [API](https://www.bitstamp.net/api) | | -| [![bittrex](https://user-images.githubusercontent.com/1294454/27766352-cf0b3c26-5ed5-11e7-82b7-f3826b7a97d8.jpg)](https://bittrex.com/) | bittrex | [Bittrex](https://bittrex.com/) | 1.1 | [API](https://bittrex.github.io/api/) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![bitz](https://user-images.githubusercontent.com/1294454/35862606-4f554f14-0b5d-11e8-957d-35058c504b6f.jpg)](https://u.bit-z.com/register?invite_code=1429193) | bitz | [Bit-Z](https://u.bit-z.com/register?invite_code=1429193) | 2 | [API](https://apidoc.bit-z.com/en/) | | -| [![bl3p](https://user-images.githubusercontent.com/1294454/28501752-60c21b82-6feb-11e7-818b-055ee6d0e754.jpg)](https://bl3p.eu/) | bl3p | [BL3P](https://bl3p.eu/) | 1 | [API](https://github.com/BitonicNL/bl3p-api/tree/master/docs) | | -| [![bleutrade](https://user-images.githubusercontent.com/1294454/30303000-b602dbe6-976d-11e7-956d-36c5049c01e7.jpg)](https://bleutrade.com/) | bleutrade | [Bleutrade](https://bleutrade.com/) | 2 | [API](https://app.swaggerhub.com/apis-docs/bleu/white-label/3.0.0) | | -| [![braziliex](https://user-images.githubusercontent.com/1294454/34703593-c4498674-f504-11e7-8d14-ff8e44fb78c1.jpg)](https://braziliex.com/?ref=5FE61AB6F6D67DA885BC98BA27223465) | braziliex | [Braziliex](https://braziliex.com/?ref=5FE61AB6F6D67DA885BC98BA27223465) | | [API](https://braziliex.com/exchange/api.php) | | -| [![btcalpha](https://user-images.githubusercontent.com/1294454/42625213-dabaa5da-85cf-11e8-8f99-aa8f8f7699f0.jpg)](https://btc-alpha.com/?r=123788) | btcalpha | [BTC-Alpha](https://btc-alpha.com/?r=123788) | 1 | [API](https://btc-alpha.github.io/api-docs) | | -| [![btcbox](https://user-images.githubusercontent.com/1294454/31275803-4df755a8-aaa1-11e7-9abb-11ec2fad9f2d.jpg)](https://www.btcbox.co.jp/) | btcbox | [BtcBox](https://www.btcbox.co.jp/) | 1 | [API](https://www.btcbox.co.jp/help/asm) | | -| [![btcchina](https://user-images.githubusercontent.com/1294454/27766368-465b3286-5ed6-11e7-9a11-0f6467e1d82b.jpg)](https://www.btcchina.com/) | btcchina | [BTCChina](https://www.btcchina.com/) | 1 | [API](https://www.btcchina.com/apidocs) | | -| [![btcmarkets](https://user-images.githubusercontent.com/1294454/29142911-0e1acfc2-7d5c-11e7-98c4-07d9532b29d7.jpg)](https://btcmarkets.net/) | btcmarkets | [BTC Markets](https://btcmarkets.net/) | | [API](https://github.com/BTCMarkets/API) | | -| [![btctradeim](https://user-images.githubusercontent.com/1294454/36770531-c2142444-1c5b-11e8-91e2-a4d90dc85fe8.jpg)](https://m.baobi.com/invite?inv=1765b2) | btctradeim | [BtcTrade.im](https://m.baobi.com/invite?inv=1765b2) | | [API](https://www.btctrade.im/help.api.html) | | -| [![btctradeua](https://user-images.githubusercontent.com/1294454/27941483-79fc7350-62d9-11e7-9f61-ac47f28fcd96.jpg)](https://btc-trade.com.ua/registration/22689) | btctradeua | [BTC Trade UA](https://btc-trade.com.ua/registration/22689) | | [API](https://docs.google.com/document/d/1ocYA0yMy_RXd561sfG3qEPZ80kyll36HUxvCRe5GbhE/edit) | | -| [![btcturk](https://user-images.githubusercontent.com/1294454/27992709-18e15646-64a3-11e7-9fa2-b0950ec7712f.jpg)](https://www.btcturk.com/) | btcturk | [BTCTurk](https://www.btcturk.com/) | | [API](https://github.com/BTCTrader/broker-api-docs) | | -| [![buda](https://user-images.githubusercontent.com/1294454/47380619-8a029200-d706-11e8-91e0-8a391fe48de3.jpg)](https://www.buda.com/) | buda | [Buda](https://www.buda.com/) | 2 | [API](https://api.buda.com/) | | -| [![bxinth](https://user-images.githubusercontent.com/1294454/27766412-567b1eb4-5ed7-11e7-94a8-ff6a3884f6c5.jpg)](https://bx.in.th/ref/cYHknT/) | bxinth | [BX.in.th](https://bx.in.th/ref/cYHknT/) | | [API](https://bx.in.th/info/api) | | -| [![cex](https://user-images.githubusercontent.com/1294454/27766442-8ddc33b0-5ed8-11e7-8b98-f786aef0f3c9.jpg)](https://cex.io/r/0/up105393824/0/) | cex | [CEX.IO](https://cex.io/r/0/up105393824/0/) | | [API](https://cex.io/cex-api) | | -| [![chilebit](https://user-images.githubusercontent.com/1294454/27991414-1298f0d8-647f-11e7-9c40-d56409266336.jpg)](https://chilebit.net/) | chilebit | [ChileBit](https://chilebit.net/) | 1 | [API](https://blinktrade.com/docs) | | -| [![cobinhood](https://user-images.githubusercontent.com/1294454/35755576-dee02e5c-0878-11e8-989f-1595d80ba47f.jpg)](https://cobinhood.com/?referrerId=a9d57842-99bb-4d7c-b668-0479a15a458b) | cobinhood | [COBINHOOD](https://cobinhood.com/?referrerId=a9d57842-99bb-4d7c-b668-0479a15a458b) | 1 | [API](https://cobinhood.github.io/api-public) | | -| [![coinbase](https://user-images.githubusercontent.com/1294454/40811661-b6eceae2-653a-11e8-829e-10bfadb078cf.jpg)](https://www.coinbase.com/join/58cbe25a355148797479dbd2) | coinbase | [Coinbase](https://www.coinbase.com/join/58cbe25a355148797479dbd2) | 2 | [API](https://developers.coinbase.com/api/v2) | | -| [![coinbaseprime](https://user-images.githubusercontent.com/1294454/44539184-29f26e00-a70c-11e8-868f-e907fc236a7c.jpg)](https://prime.coinbase.com/) | coinbaseprime | [Coinbase Prime](https://prime.coinbase.com/) | | [API](https://docs.prime.coinbase.com/) | | -| [![coinbasepro](https://user-images.githubusercontent.com/1294454/41764625-63b7ffde-760a-11e8-996d-a6328fa9347a.jpg)](https://pro.coinbase.com/) | coinbasepro | [Coinbase Pro](https://pro.coinbase.com/) | | [API](https://docs.pro.coinbase.com/) | | -| [![coincheck](https://user-images.githubusercontent.com/1294454/27766464-3b5c3c74-5ed9-11e7-840e-31b32968e1da.jpg)](https://coincheck.com/) | coincheck | [coincheck](https://coincheck.com/) | | [API](https://coincheck.com/documents/exchange/api) | | -| [![coinegg](https://user-images.githubusercontent.com/1294454/36770310-adfa764e-1c5a-11e8-8e09-449daac3d2fb.jpg)](https://www.coinegg.com/user/register?invite=523218) | coinegg | [CoinEgg](https://www.coinegg.com/user/register?invite=523218) | | [API](https://www.coinegg.com/explain.api.html) | | -| [![coinex](https://user-images.githubusercontent.com/1294454/38046312-0b450aac-32c8-11e8-99ab-bc6b136b6cc7.jpg)](https://www.coinex.com/register?refer_code=yw5fz) | coinex | [CoinEx](https://www.coinex.com/register?refer_code=yw5fz) | 1 | [API](https://github.com/coinexcom/coinex_exchange_api/wiki) | | -| [![coinexchange](https://user-images.githubusercontent.com/1294454/34842303-29c99fca-f71c-11e7-83c1-09d900cb2334.jpg)](https://www.coinexchange.io/?r=a1669e56) | coinexchange | [CoinExchange](https://www.coinexchange.io/?r=a1669e56) | | [API](https://coinexchangeio.github.io/slate/) | | -| [![coinfalcon](https://user-images.githubusercontent.com/1294454/41822275-ed982188-77f5-11e8-92bb-496bcd14ca52.jpg)](https://coinfalcon.com/?ref=CFJSVGTUPASB) | coinfalcon | [CoinFalcon](https://coinfalcon.com/?ref=CFJSVGTUPASB) | 1 | [API](https://docs.coinfalcon.com/) | | -| [![coinfloor](https://user-images.githubusercontent.com/1294454/28246081-623fc164-6a1c-11e7-913f-bac0d5576c90.jpg)](https://www.coinfloor.co.uk/) | coinfloor | [coinfloor](https://www.coinfloor.co.uk/) | | [API](https://github.com/coinfloor/api) | | -| [![coingi](https://user-images.githubusercontent.com/1294454/28619707-5c9232a8-7212-11e7-86d6-98fe5d15cc6e.jpg)](https://www.coingi.com/?r=XTPPMC) | coingi | [Coingi](https://www.coingi.com/?r=XTPPMC) | | [API](https://coingi.docs.apiary.io/) | | -| [![coinmarketcap](https://user-images.githubusercontent.com/1294454/28244244-9be6312a-69ed-11e7-99c1-7c1797275265.jpg)](https://coinmarketcap.com/) | coinmarketcap | [CoinMarketCap](https://coinmarketcap.com/) | 1 | [API](https://coinmarketcap.com/api) | | -| [![coinmate](https://user-images.githubusercontent.com/1294454/27811229-c1efb510-606c-11e7-9a36-84ba2ce412d8.jpg)](https://coinmate.io/?referral=YTFkM1RsOWFObVpmY1ZjMGREQmpTRnBsWjJJNVp3PT0) | coinmate | [CoinMate](https://coinmate.io/?referral=YTFkM1RsOWFObVpmY1ZjMGREQmpTRnBsWjJJNVp3PT0) | | [API](https://coinmate.docs.apiary.io/) | | -| [![coinone](https://user-images.githubusercontent.com/1294454/38003300-adc12fba-323f-11e8-8525-725f53c4a659.jpg)](https://coinone.co.kr/) | coinone | [CoinOne](https://coinone.co.kr/) | 2 | [API](https://doc.coinone.co.kr/) | | -| [![coinspot](https://user-images.githubusercontent.com/1294454/28208429-3cacdf9a-6896-11e7-854e-4c79a772a30f.jpg)](https://www.coinspot.com.au/register?code=PJURCU) | coinspot | [CoinSpot](https://www.coinspot.com.au/register?code=PJURCU) | | [API](https://www.coinspot.com.au/api) | | -| [![cointiger](https://user-images.githubusercontent.com/1294454/39797261-d58df196-5363-11e8-9880-2ec78ec5bd25.jpg)](https://www.cointiger.one/#/register?refCode=FfvDtt) | cointiger | [CoinTiger](https://www.cointiger.one/#/register?refCode=FfvDtt) | 1 | [API](https://github.com/cointiger/api-docs-en/wiki) | | -| [![coolcoin](https://user-images.githubusercontent.com/1294454/36770529-be7b1a04-1c5b-11e8-9600-d11f1996b539.jpg)](https://www.coolcoin.com/user/register?invite_code=bhaega) | coolcoin | [CoolCoin](https://www.coolcoin.com/user/register?invite_code=bhaega) | | [API](https://www.coolcoin.com/help.api.html) | | -| [![coss](https://user-images.githubusercontent.com/1294454/50328158-22e53c00-0503-11e9-825c-c5cfd79bfa74.jpg)](https://www.coss.io/c/reg?r=OWCMHQVW2Q) | coss | [COSS](https://www.coss.io/c/reg?r=OWCMHQVW2Q) | 1 | [API](https://api.coss.io/v1/spec) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![crex24](https://user-images.githubusercontent.com/1294454/47813922-6f12cc00-dd5d-11e8-97c6-70f957712d47.jpg)](https://crex24.com/?refid=slxsjsjtil8xexl9hksr) | crex24 | [CREX24](https://crex24.com/?refid=slxsjsjtil8xexl9hksr) | 2 | [API](https://docs.crex24.com/trade-api/v2) | | -| [![crypton](https://user-images.githubusercontent.com/1294454/41334251-905b5a78-6eed-11e8-91b9-f3aa435078a1.jpg)](https://cryptonbtc.com/) | crypton | [Crypton](https://cryptonbtc.com/) | 1 | [API](https://cryptonbtc.docs.apiary.io/) | | -| [![deribit](https://user-images.githubusercontent.com/1294454/41933112-9e2dd65a-798b-11e8-8440-5bab2959fcb8.jpg)](https://www.deribit.com/reg-1189.4038) | deribit | [Deribit](https://www.deribit.com/reg-1189.4038) | 1 | [API](https://docs.deribit.com/) | | -| [![digifinex](https://user-images.githubusercontent.com/1294454/62184319-304e8880-b366-11e9-99fe-8011d6929195.jpg)](https://www.digifinex.vip/en-ww/from/DhOzBg/3798****5114) | digifinex | [DigiFinex](https://www.digifinex.vip/en-ww/from/DhOzBg/3798****5114) | 3 | [API](https://docs.digifinex.vip/) | | -| [![dsx](https://user-images.githubusercontent.com/1294454/27990275-1413158a-645a-11e7-931c-94717f7510e3.jpg)](https://dsx.uk/) | dsx | [DSX](https://dsx.uk/) | 3 | [API](https://dsx.uk/developers/publicApi) | | -| [![dx](https://user-images.githubusercontent.com/1294454/57979980-6483ff80-7a2d-11e9-9224-2aa20665703b.jpg)](https://dx.exchange/registration?dx_cid=20&dx_scname=100001100000038139) | dx | [DX.Exchange](https://dx.exchange/registration?dx_cid=20&dx_scname=100001100000038139) | 1 | [API](https://apidocs.dx.exchange/) | | -| [![ethfinex](https://user-images.githubusercontent.com/1294454/37555526-7018a77c-29f9-11e8-8835-8e415c038a18.jpg)](https://www.ethfinex.com/) | ethfinex | [Ethfinex](https://www.ethfinex.com/) | 1 | [API](https://bitfinex.readme.io/v1/docs) | | -| [![exmo](https://user-images.githubusercontent.com/1294454/27766491-1b0ea956-5eda-11e7-9225-40d67b481b8d.jpg)](https://exmo.me/?ref=131685) | exmo | [EXMO](https://exmo.me/?ref=131685) | 1 | [API](https://exmo.me/en/api_doc?ref=131685) | | -| [![exx](https://user-images.githubusercontent.com/1294454/37770292-fbf613d0-2de4-11e8-9f79-f2dc451b8ccb.jpg)](https://www.exx.com/r/fde4260159e53ab8a58cc9186d35501f?recommQd=1) | exx | [EXX](https://www.exx.com/r/fde4260159e53ab8a58cc9186d35501f?recommQd=1) | | [API](https://www.exx.com/help/restApi) | | -| [![fcoin](https://user-images.githubusercontent.com/1294454/42244210-c8c42e1e-7f1c-11e8-8710-a5fb63b165c4.jpg)](https://www.fcoin.com/i/Z5P7V) | fcoin | [FCoin](https://www.fcoin.com/i/Z5P7V) | 2 | [API](https://developer.fcoin.com/) | | -| [![fcoinjp](https://user-images.githubusercontent.com/1294454/54219174-08b66b00-4500-11e9-862d-f522d0fe08c6.jpg)](https://www.fcoinjp.com/) | fcoinjp | [FCoinJP](https://www.fcoinjp.com/) | 2 | [API](https://developer.fcoin.com/) | | -| [![flowbtc](https://user-images.githubusercontent.com/1294454/28162465-cd815d4c-67cf-11e7-8e57-438bea0523a2.jpg)](https://www.flowbtc.com.br/) | flowbtc | [flowBTC](https://www.flowbtc.com.br/) | 1 | [API](https://www.flowbtc.com.br/api.html) | | -| [![foxbit](https://user-images.githubusercontent.com/1294454/27991413-11b40d42-647f-11e7-91ee-78ced874dd09.jpg)](https://foxbit.com.br/exchange) | foxbit | [FoxBit](https://foxbit.com.br/exchange) | 1 | [API](https://foxbit.com.br/api/) | | -| [![fybse](https://user-images.githubusercontent.com/1294454/27766512-31019772-5edb-11e7-8241-2e675e6797f1.jpg)](https://www.fybse.se/) | fybse | [FYB-SE](https://www.fybse.se/) | | [API](https://fyb.docs.apiary.io/) | | -| [![gateio](https://user-images.githubusercontent.com/1294454/31784029-0313c702-b509-11e7-9ccc-bc0da6a0e435.jpg)](https://www.gate.io/signup/2436035) | gateio | [Gate.io](https://www.gate.io/signup/2436035) | 2 | [API](https://gate.io/api2) | | -| [![gdax](https://user-images.githubusercontent.com/1294454/27766527-b1be41c6-5edb-11e7-95f6-5b496c469e2c.jpg)](https://www.gdax.com/) | gdax | [GDAX](https://www.gdax.com/) | | [API](https://docs.gdax.com/) | | -| [![gemini](https://user-images.githubusercontent.com/1294454/27816857-ce7be644-6096-11e7-82d6-3c257263229c.jpg)](https://gemini.com/) | gemini | [Gemini](https://gemini.com/) | 1 | [API](https://docs.gemini.com/rest-api) | | -| [![hitbtc](https://user-images.githubusercontent.com/1294454/27766555-8eaec20e-5edc-11e7-9c5b-6dc69fc42f5e.jpg)](https://hitbtc.com/?ref_id=5a5d39a65d466) | hitbtc | [HitBTC](https://hitbtc.com/?ref_id=5a5d39a65d466) | 1 | [API](https://github.com/hitbtc-com/hitbtc-api/blob/master/APIv1.md) | | -| [![hitbtc2](https://user-images.githubusercontent.com/1294454/27766555-8eaec20e-5edc-11e7-9c5b-6dc69fc42f5e.jpg)](https://hitbtc.com/?ref_id=5a5d39a65d466) | hitbtc2 | [HitBTC](https://hitbtc.com/?ref_id=5a5d39a65d466) | 2 | [API](https://api.hitbtc.com/) | | -| [![huobipro](https://user-images.githubusercontent.com/1294454/27766569-15aa7b9a-5edd-11e7-9e7f-44791f4ee49c.jpg)](https://www.huobi.co/en-us/topic/invited/?invite_code=rwrd3) | huobipro | [Huobi Pro](https://www.huobi.co/en-us/topic/invited/?invite_code=rwrd3) | 1 | [API](https://huobiapi.github.io/docs/spot/v1/cn/) | | -| [![huobiru](https://user-images.githubusercontent.com/1294454/52978816-e8552e00-33e3-11e9-98ed-845acfece834.jpg)](https://www.huobi.com.ru/invite?invite_code=esc74) | huobiru | [Huobi Russia](https://www.huobi.com.ru/invite?invite_code=esc74) | 1 | [API](https://github.com/cloudapidoc/API_Docs_en) | | -| [![ice3x](https://user-images.githubusercontent.com/1294454/38012176-11616c32-3269-11e8-9f05-e65cf885bb15.jpg)](https://ice3x.com/?ref=14341802) | ice3x | [ICE3X](https://ice3x.com/?ref=14341802) | 1 | [API](https://ice3x.co.za/ice-cubed-bitcoin-exchange-api-documentation-1-june-2017) | | -| [![idex](https://user-images.githubusercontent.com/1294454/63693236-3415e380-c81c-11e9-8600-ba1634f1407d.jpg)](https://idex.market/) | idex | [IDEX](https://idex.market/) | | [API](https://github.com/AuroraDAO/idex-api-docs) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![independentreserve](https://user-images.githubusercontent.com/1294454/30521662-cf3f477c-9bcb-11e7-89bc-d1ac85012eda.jpg)](https://www.independentreserve.com/) | independentreserve | [Independent Reserve](https://www.independentreserve.com/) | | [API](https://www.independentreserve.com/API) | | -| [![indodax](https://user-images.githubusercontent.com/1294454/37443283-2fddd0e4-281c-11e8-9741-b4f1419001b5.jpg)](https://indodax.com/ref/testbitcoincoid/1) | indodax | [INDODAX](https://indodax.com/ref/testbitcoincoid/1) | 1.8 | [API](https://indodax.com/downloads/BITCOINCOID-API-DOCUMENTATION.pdf) | | -| [![itbit](https://user-images.githubusercontent.com/1294454/27822159-66153620-60ad-11e7-89e7-005f6d7f3de0.jpg)](https://www.itbit.com/) | itbit | [itBit](https://www.itbit.com/) | 1 | [API](https://api.itbit.com/docs) | | -| [![kkex](https://user-images.githubusercontent.com/1294454/47401462-2e59f800-d74a-11e8-814f-e4ae17b4968a.jpg)](https://kkex.com/) | kkex | [KKEX](https://kkex.com/) | 2 | [API](https://kkex.com/api_wiki/cn/) | | -| [![kraken](https://user-images.githubusercontent.com/1294454/27766599-22709304-5ede-11e7-9de1-9f33732e1509.jpg)](https://www.kraken.com/) | kraken | [Kraken](https://www.kraken.com/) | 0 | [API](https://www.kraken.com/features/api) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![kucoin](https://user-images.githubusercontent.com/1294454/57369448-3cc3aa80-7196-11e9-883e-5ebeb35e4f57.jpg)](https://www.kucoin.com/?rcode=E5wkqe) | kucoin | [KuCoin](https://www.kucoin.com/?rcode=E5wkqe) | 2 | [API](https://docs.kucoin.com/) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![kuna](https://user-images.githubusercontent.com/1294454/31697638-912824fa-b3c1-11e7-8c36-cf9606eb94ac.jpg)](https://kuna.io/?r=kunaid-gvfihe8az7o4) | kuna | [Kuna](https://kuna.io/?r=kunaid-gvfihe8az7o4) | 2 | [API](https://kuna.io/documents/api) | | -| [![lakebtc](https://user-images.githubusercontent.com/1294454/28074120-72b7c38a-6660-11e7-92d9-d9027502281d.jpg)](https://www.lakebtc.com/) | lakebtc | [LakeBTC](https://www.lakebtc.com/) | 2 | [API](https://www.lakebtc.com/s/api_v2) | | -| [![latoken](https://user-images.githubusercontent.com/1294454/61511972-24c39f00-aa01-11e9-9f7c-471f1d6e5214.jpg)](https://latoken.com/) | latoken | [Latoken](https://latoken.com/) | 1 | [API](https://api.latoken.com/) | | -| [![lbank](https://user-images.githubusercontent.com/1294454/38063602-9605e28a-3302-11e8-81be-64b1e53c4cfb.jpg)](https://www.lbex.io/invite?icode=7QCY) | lbank | [LBank](https://www.lbex.io/invite?icode=7QCY) | 1 | [API](https://github.com/LBank-exchange/lbank-official-api-docs) | | -| [![liquid](https://user-images.githubusercontent.com/1294454/45798859-1a872600-bcb4-11e8-8746-69291ce87b04.jpg)](https://www.liquid.com/?affiliate=SbzC62lt30976) | liquid | [Liquid](https://www.liquid.com/?affiliate=SbzC62lt30976) | 2 | [API](https://developers.liquid.com/) | | -| [![livecoin](https://user-images.githubusercontent.com/1294454/27980768-f22fc424-638a-11e7-89c9-6010a54ff9be.jpg)](https://livecoin.net/?from=Livecoin-CQ1hfx44) | livecoin | [LiveCoin](https://livecoin.net/?from=Livecoin-CQ1hfx44) | | [API](https://www.livecoin.net/api?lang=en) | | -| [![luno](https://user-images.githubusercontent.com/1294454/27766607-8c1a69d8-5ede-11e7-930c-540b5eb9be24.jpg)](https://www.luno.com/invite/44893A) | luno | [luno](https://www.luno.com/invite/44893A) | 1 | [API](https://www.luno.com/en/api) | | -| [![lykke](https://user-images.githubusercontent.com/1294454/34487620-3139a7b0-efe6-11e7-90f5-e520cef74451.jpg)](https://www.lykke.com/) | lykke | [Lykke](https://www.lykke.com/) | 1 | [API](https://hft-api.lykke.com/swagger/ui/) | | -| [![mandala](https://user-images.githubusercontent.com/1294454/54686665-df629400-4b2a-11e9-84d3-d88856367dd7.jpg)](https://trade.mandalaex.com/?ref=564377) | mandala | [Mandala](https://trade.mandalaex.com/?ref=564377) | 2 | [API](https://apidocs.mandalaex.com/) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![mercado](https://user-images.githubusercontent.com/1294454/27837060-e7c58714-60ea-11e7-9192-f05e86adb83f.jpg)](https://www.mercadobitcoin.com.br/) | mercado | [Mercado Bitcoin](https://www.mercadobitcoin.com.br/) | 3 | [API](https://www.mercadobitcoin.com.br/api-doc) | | -| [![mixcoins](https://user-images.githubusercontent.com/1294454/30237212-ed29303c-9535-11e7-8af8-fcd381cfa20c.jpg)](https://mixcoins.com/) | mixcoins | [MixCoins](https://mixcoins.com/) | 1 | [API](https://mixcoins.com/help/api/) | | -| [![negociecoins](https://user-images.githubusercontent.com/1294454/38008571-25a6246e-3258-11e8-969b-aeb691049245.jpg)](https://www.negociecoins.com.br/) | negociecoins | [NegocieCoins](https://www.negociecoins.com.br/) | 3 | [API](https://www.negociecoins.com.br/documentacao-tradeapi) | | -| [![nova](https://user-images.githubusercontent.com/1294454/30518571-78ca0bca-9b8a-11e7-8840-64b83a4a94b2.jpg)](https://novaexchange.com/signup/?re=is8vz2hsl3qxewv1uawd) | nova | [Novaexchange](https://novaexchange.com/signup/?re=is8vz2hsl3qxewv1uawd) | 2 | [API](https://novaexchange.com/remote/faq) | | -| [![oceanex](https://user-images.githubusercontent.com/1294454/58385970-794e2d80-8001-11e9-889c-0567cd79b78e.jpg)](https://oceanex.pro/signup?referral=VE24QX) | oceanex | [OceanEx](https://oceanex.pro/signup?referral=VE24QX) | 1 | [API](https://api.oceanex.pro/doc/v1) | | -| [![okcoincny](https://user-images.githubusercontent.com/1294454/27766792-8be9157a-5ee5-11e7-926c-6d69b8d3378d.jpg)](https://www.okcoin.cn/) | okcoincny | [OKCoin CNY](https://www.okcoin.cn/) | 1 | [API](https://www.okcoin.cn/rest_getStarted.html) | | -| [![okcoinusd](https://user-images.githubusercontent.com/1294454/27766791-89ffb502-5ee5-11e7-8a5b-c5950b68ac65.jpg)](https://www.okcoin.com/account/register?flag=activity&channelId=600001513) | okcoinusd | [OKCoin USD](https://www.okcoin.com/account/register?flag=activity&channelId=600001513) | 1 | [API](https://www.okcoin.com/docs/en/) | | -| [![okex](https://user-images.githubusercontent.com/1294454/32552768-0d6dd3c6-c4a6-11e7-90f8-c043b64756a7.jpg)](https://www.okex.com/) | okex | [OKEX](https://www.okex.com/) | 1 | [API](https://github.com/okcoin-okex/API-docs-OKEx.com) | | -| [![okex3](https://user-images.githubusercontent.com/1294454/32552768-0d6dd3c6-c4a6-11e7-90f8-c043b64756a7.jpg)](https://www.okex.com/) | okex3 | [OKEX](https://www.okex.com/) | 3 | [API](https://www.okex.com/docs/en/) | | -| [![paymium](https://user-images.githubusercontent.com/1294454/27790564-a945a9d4-5ff9-11e7-9d2d-b635763f2f24.jpg)](https://www.paymium.com/) | paymium | [Paymium](https://www.paymium.com/) | 1 | [API](https://github.com/Paymium/api-documentation) | | -| [![poloniex](https://user-images.githubusercontent.com/1294454/27766817-e9456312-5ee6-11e7-9b3c-b628ca5626a5.jpg)](https://www.poloniex.com/?utm_source=ccxt&utm_medium=web) | poloniex | [Poloniex](https://www.poloniex.com/?utm_source=ccxt&utm_medium=web) | | [API](https://docs.poloniex.com/) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![rightbtc](https://user-images.githubusercontent.com/1294454/42633917-7d20757e-85ea-11e8-9f53-fffe9fbb7695.jpg)](https://www.rightbtc.com/) | rightbtc | [RightBTC](https://www.rightbtc.com/) | | [API](https://52.53.159.206/api/trader/) | | -| [![southxchange](https://user-images.githubusercontent.com/1294454/27838912-4f94ec8a-60f6-11e7-9e5d-bbf9bd50a559.jpg)](https://www.southxchange.com/) | southxchange | [SouthXchange](https://www.southxchange.com/) | | [API](https://www.southxchange.com/Home/Api) | | -| [![stronghold](https://user-images.githubusercontent.com/1294454/52160042-98c1f300-26be-11e9-90dd-da8473944c83.jpg)](https://stronghold.co/) | stronghold | [Stronghold](https://stronghold.co/) | 1 | [API](https://docs.stronghold.co/) | | -| [![surbitcoin](https://user-images.githubusercontent.com/1294454/27991511-f0a50194-6481-11e7-99b5-8f02932424cc.jpg)](https://surbitcoin.com/) | surbitcoin | [SurBitcoin](https://surbitcoin.com/) | 1 | [API](https://blinktrade.com/docs) | | -| [![theocean](https://user-images.githubusercontent.com/1294454/43103756-d56613ce-8ed7-11e8-924e-68f9d4bcacab.jpg)](https://theocean.trade/) | theocean | [The Ocean](https://theocean.trade/) | 1 | [API](https://docs.theocean.trade/) | | -| [![therock](https://user-images.githubusercontent.com/1294454/27766869-75057fa2-5ee9-11e7-9a6f-13e641fa4707.jpg)](https://therocktrading.com/) | therock | [TheRockTrading](https://therocktrading.com/) | 1 | [API](https://api.therocktrading.com/doc/v1/index.html) | | -| [![tidebit](https://user-images.githubusercontent.com/1294454/39034921-e3acf016-4480-11e8-9945-a6086a1082fe.jpg)](http://bit.ly/2IX0LrM) | tidebit | [TideBit](http://bit.ly/2IX0LrM) | 2 | [API](https://www.tidebit.com/documents/api/guide) | | -| [![tidex](https://user-images.githubusercontent.com/1294454/30781780-03149dc4-a12e-11e7-82bb-313b269d24d4.jpg)](https://tidex.com/) | tidex | [Tidex](https://tidex.com/) | 3 | [API](https://tidex.com/exchange/public-api) | | -| [![upbit](https://user-images.githubusercontent.com/1294454/49245610-eeaabe00-f423-11e8-9cba-4b0aed794799.jpg)](https://upbit.com/) | upbit | [Upbit](https://upbit.com/) | 1 | [API](https://docs.upbit.com/docs/%EC%9A%94%EC%B2%AD-%EC%88%98-%EC%A0%9C%ED%95%9C) | [![CCXT Certified](https://camo.githubusercontent.com/509b94aa541a5c3b461d1a84469f4b3d4112af57/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f434358542d6365727469666965642d677265656e2e7376673f73616e6974697a653d74727565)](https://github.com/ccxt/ccxt/wiki/Certification) | -| [![vaultoro](https://user-images.githubusercontent.com/1294454/27766880-f205e870-5ee9-11e7-8fe2-0d5b15880752.jpg)](https://www.vaultoro.com/) | vaultoro | [Vaultoro](https://www.vaultoro.com/) | 1 | [API](https://api.vaultoro.com/) | | -| [![vbtc](https://user-images.githubusercontent.com/1294454/27991481-1f53d1d8-6481-11e7-884e-21d17e7939db.jpg)](https://vbtc.exchange/) | vbtc | [VBTC](https://vbtc.exchange/) | 1 | [API](https://blinktrade.com/docs) | | -| [![virwox](https://user-images.githubusercontent.com/1294454/27766894-6da9d360-5eea-11e7-90aa-41f2711b7405.jpg)](https://www.virwox.com/) | virwox | [VirWoX](https://www.virwox.com/) | \* | [API](https://www.virwox.com/developers.php) | | -| [![xbtce](https://user-images.githubusercontent.com/1294454/28059414-e235970c-662c-11e7-8c3a-08e31f78684b.jpg)](https://xbtce.com/?agent=XX97BTCXXXG687021000B) | xbtce | [xBTCe](https://xbtce.com/?agent=XX97BTCXXXG687021000B) | 1 | [API](https://www.xbtce.com/tradeapi) | | -| [![yobit](https://user-images.githubusercontent.com/1294454/27766910-cdcbfdae-5eea-11e7-9859-03fea873272d.jpg)](https://www.yobit.net/) | yobit | [YoBit](https://www.yobit.net/) | 3 | [API](https://www.yobit.net/en/api/) | | -| [![zaif](https://user-images.githubusercontent.com/1294454/27766927-39ca2ada-5eeb-11e7-972f-1b4199518ca6.jpg)](https://zaif.jp/) | zaif | [Zaif](https://zaif.jp/) | 1 | [API](https://techbureau-api-document.readthedocs.io/ja/latest/index.html) | | -| [![zb](https://user-images.githubusercontent.com/1294454/32859187-cd5214f0-ca5e-11e7-967d-96568e2e2bd1.jpg)](https://www.zb.com/) | zb | [ZB](https://www.zb.com/) | 1 | [API](https://www.zb.com/i/developer) | | - -除了基本的市价委托单和限价委托单,有些交易所还支持杠杆交易和衍生品交易(例如期货合同和期权), 以及暗池、场外交易(OTC)、商户API等更多服务。 - -### 实例化CCTX交易所类 - -要在代码中连接到交易所并开始交易数字货币,你首先需要 利用ccxt库实例化一个交易所类: - -#### 查询支持的交易所 - -你可以使用JavaScript、Python或PHP获取ccxt当前支持的交易所ID的完整清单: - -JavaScript: - -```text -const ccxt = require ('ccxt') -console.log (ccxt.exchanges) -``` - -Python: - -```text -import ccxt -print (ccxt.exchanges) -``` - -PHP: - -```text -include 'ccxt.php'; -var_dump (\ccxt\Exchange::$exchanges); -``` - -#### 交易所类的实例化 - -可以使用JavaScript、Python、PHP实例化指定的交易所类: - -JavaScript: - -```text -const ccxt = require ('ccxt') -let exchange = new ccxt.kraken () // default id -let kraken1 = new ccxt.kraken ({ id: 'kraken1' }) -let kraken2 = new ccxt.kraken ({ id: 'kraken2' }) -let id = 'gdax' -let gdax = new ccxt[id] (); - -// from variable id -const exchangeId = 'binance' - , exchangeClass = ccxt[exchangeId] - , exchange = new exchangeClass ({ - 'apiKey': 'YOUR_API_KEY', - 'secret': 'YOUR_SECRET', - 'timeout': 30000, - 'enableRateLimit': true, - }) -``` - -Python: - -```text -import ccxt -exchange = ccxt.okcoinusd () # default id -okcoin1 = ccxt.okcoinusd ({ 'id': 'okcoin1' }) -okcoin2 = ccxt.okcoinusd ({ 'id': 'okcoin2' }) -id = 'btcchina' -btcchina = eval ('ccxt.%s ()' % id) -gdax = getattr (ccxt, 'gdax') () - -# from variable id -exchange_id = 'binance' -exchange_class = getattr(ccxt, exchange_id) -exchange = exchange_class({ - 'apiKey': 'YOUR_API_KEY', - 'secret': 'YOUR_SECRET', - 'timeout': 30000, - 'enableRateLimit': True, -}) -``` - -PHP版本的CCXT库使用内置的UTC/GMT时间函数,因此你需要在 `php.ini`中设置`date.timezone`,或者在使用ccxt之前调用 `date_default_timezone_set ()`函数。推荐的时区设置为 "UTC"。 - -PHP: - -```text -date_default_timezone_set ('UTC'); -include 'ccxt.php'; -$bitfinex = new \ccxt\bitfinex (); // default id -$bitfinex1 = new \ccxt\bitfinex (array ('id' => 'bitfinex1')); -$bitfinex2 = new \ccxt\bitfinex (array ('id' => 'bitfinex2')); -$id = 'kraken'; -$exchange = '\\ccxt\\' . $id -$kraken = new $exchange (); - -// from variable id -$exchange_id = 'binance'; -$exchange_class = "\\ccxt\\$exchange_id"; -$exchange = new $exchange_class (array ( - 'apiKey' => 'YOUR_API_KEY', - 'secret' => 'YOUR_SECRET', - 'timeout' => 30000, - 'enableRateLimit' => true, -)); -``` - -### 设置交易所的属性 - -CCXT中交易所对象的大多数属性都可以在实例化时设置(也可以在实例化之后设置), 例如下面的代码分别采用不同的开发语言设置交易所对象的属性: - -JavaScript: - -```text -const exchange = new ccxt.binance ({ - 'rateLimit': 10000, // 统一的交易所属性 - 'options': { - 'adjustForTimeDifference': true, //特定交易所的属性 - } -}) -exchange.options['adjustForTimeDifference'] = false -``` - -Python: - -```text -exchange = ccxt.binance ({ - 'rateLimit': 10000, # 统一的交易所属性 - 'options': { - 'adjustForTimeDifference': True, # 特定交易所的属性 - } -}) -exchange.options['adjustForTimeDifference'] = False -``` - -PHP: - -```text -$exchange_id = 'binance'; -$exchange_class = "\\ccxt\\$exchange_id"; -$exchange = new $exchange_class (array ( - 'rateLimit' => 10000, // 统一的交易所属性 - 'options' => array ( - 'adjustForTimeDifference' => true, // 特定交易所的属性 - ), -)); -$exchange->options['adjustForTimeDifference'] = false; -``` - -## **CCXT交易所模型** - -\*\*\*\* - -### 交易所数据结构 - -每个交易所都有一组属性和方法,其中绝大部分都可以在创建交易所对象时, 使用一个关联数组类型的参数来覆盖默认的设置。也可以定义一个继承类 任意覆盖父类的逻辑。 - -下面是交易所基类的属性概览,其中的值用于演示: - -```text -{ - 'id': 'exchange' // lowercase string exchange id - 'name': 'Exchange' // human-readable string - 'countries': [ 'US', 'CN', 'EU' ], // array of ISO country codes - 'urls': { - 'api': 'https://api.example.com/data', // string or dictionary of base API URLs - 'www': 'https://www.example.com' // string website URL - 'doc': 'https://docs.example.com/api', // string URL or array of URLs - }, - 'version': 'v1', // string ending with digits - 'api': { ... }, // dictionary of api endpoints - 'has': { // exchange capabilities - 'CORS': false, - 'publicAPI': true, - 'privateAPI': true, - 'cancelOrder': true, - 'createDepositAddress': false, - 'createOrder': true, - 'deposit': false, - 'fetchBalance': true, - 'fetchClosedOrders': false, - 'fetchCurrencies': false, - 'fetchDepositAddress': false, - 'fetchMarkets': true, - 'fetchMyTrades': false, - 'fetchOHLCV': false, - 'fetchOpenOrders': false, - 'fetchOrder': false, - 'fetchOrderBook': true, - 'fetchOrders': false, - 'fetchStatus': 'emulated', - 'fetchTicker': true, - 'fetchTickers': false, - 'fetchBidsAsks': false, - 'fetchTrades': true, - 'withdraw': false, - }, - 'timeframes': { // empty if the exchange !has.fetchOHLCV - '1m': '1minute', - '1h': '1hour', - '1d': '1day', - '1M': '1month', - '1y': '1year', - }, - 'timeout': 10000, // number in milliseconds - 'rateLimit': 2000, // number in milliseconds - 'userAgent': 'ccxt/1.1.1 ...' // string, HTTP User-Agent header - 'verbose': false, // boolean, output error details - 'markets': { ... } // dictionary of markets/pairs by symbol - 'symbols': [ ... ] // sorted list of string symbols (traded pairs) - 'currencies': { ... } // dictionary of currencies by currency code - 'markets_by_id': { ... }, // dictionary of dictionaries (markets) by id - 'proxy': 'https://crossorigin.me/', // string URL - 'apiKey': '92560ffae9b8a0421...', // string public apiKey (ASCII, hex, Base64, ...) - 'secret': '9aHjPmW+EtRRKN/Oi...' // string private secret key - 'password': '6kszf4aci8r', // string password - 'uid': '123456', // string user id -} -``` - -下面是属性的详细说明: - -* id: 每个交易所都有一个默认id,它是一个字符串常量,用于在ccxt中唯一的标识一个特定的交易所实例。 你可以有多个接入同一个交易所的ccxt交易所实例,可以使用id进行区分。默认的交易所id是全小写字符, 对应交易所的名称。 -* name:方便人类查看的交易所名称,字符串常量。 -* countries: 国别代码字符串数组,每个成员都是2个字符长的ISO国别代码,表示交易所的运营所在地。 -* urls\['api'\]: 用于ccxt调用的交易所API url字符串,或者是包含了公开和私有API url的关联数组。 -* urls\['www'\]: 交易所的官网URL -* urls\['doc'\]: 交易所API文档的官方URL,可以是单个url或url数组。 -* version: 当前使用的交易所API的版本号,CCXT在调用交易所API时将在每个请求的URL中添加这个版本号。 除非你要实现一个新的交易所API,否则你不需要修改这个字段。 -* api: 一个包含了交易所的所有API访问端结点的关联数组。ccxt使用这个API定义为每个可用访问端结点 自动构造交易所实例方法。 -* has: 描述交易所特性支持能力的关联数组,例如 fetchTickers、fetchOHLCV 或CORS。 -* timeframes: 交易所的fetchOHLCV方法支持的时间尺度,关联数组,键为时间尺度缩写。只有当 \['fetchOHLCV'\]属性为真时,ccxt才会填充这个字段的内容。 -* timeout: ccxt访问交易所API时,请求-响应的超时设置,单位:毫秒,默认值:10000,即10秒。你 应当根据自己的网络情况进行适当的设置。 -* rateLimit: 交易所API的请求限流,单位:毫秒,表示向同一交易所发出的两次请求之间需要的最小延迟间隔。 默认情况下ccxt禁用内置的限流功能,可以通过设置`enableRateLimit`来启用API访问限流。 -* enableRateLimit: 是否启用内置的限流机制,布尔值,默认值:false。调用者需要开启内置的限流机制 或者自己实现限流,以避免被交易所禁止访问。 -* userAgent: 用于设置HTTP请求头中的User-Agent。ccxt默认会设置自己的User-Aget,有些交易所可能 不允许ccxt访问,你可以将这个值设置为false、undefined或空字符串。 -* verbose: 是否记录HTTP请求信息到标准输出设备,布尔值,默认:false。Python开发者可以使用提单的 日志调试方法,方法时在代码开头添加以下代码: - - ```text - import logging - logging.basicConfig(level=logging.DEBUG) - ``` - -* markets: 市场描述关联数组,键为交易对或交易符号。在访问这个属性之前需要先调用`loadMarkets()`或 `load_markets()`载入市场数据。 -* symbols: 交易所的有效符号的数组,以字母表顺序排列。这些符号是市场对象的键,可以用来方便地 访问指定的市场。 -* currencies: 交易所的有效数字货币的关联数组,键为数字货币的代码(3~4字母)。数字货币从市场 载入。 -* markets\_by\_id: 按交易所列举的市场关联数值。在访问此属性之前需要先载入市场。 -* proxy: 用来访问交易所的http\(s\)代理的URL字符串,例如'[http://crossorigin.me/',默认值:''。](http://crossorigin.me/'%EF%BC%8C%E9%BB%98%E8%AE%A4%E5%80%BC%EF%BC%9A''%E3%80%82) -* apiKey: 用来访问交易所的API Key。大部分交易所需要API Key才能访问其API。 -* secret: 用来访问交易所的密文。大部分交易所需要同时提供api key和密文。 -* password: 交易所要求的交易密码。有些交易所在交易时要求提供这个密码,但是大多数交易所不需要。 -* uid: 你的交易所账户的唯一ID。可以是字符串或数。有些交易所在交易时也需要提供这个信息,但是大多数交易所不需要。 -* requiredCredentials: 统一的身份信息关联数组,定义需要哪些身份信息才能访问交易所的私有API。 -* options: 一个针对特定交易所的关联数组,定义该交易所支持的特定的选项。 -* precisionMode: 交易所的小数精度模式。 -* has: 描述交易所支持特性的关联数组,例如: - - ```text - 'has': { - - 'CORS': false, // has Cross-Origin Resource Sharing enabled (works from browser) or not - - 'publicAPI': true, // has public API available and implemented, true/false - 'privateAPI': true, // has private API available and implemented, true/false - - // unified methods availability flags (can be true, false, or 'emulated'): - - 'cancelOrder': true, - 'createDepositAddress': false, - 'createOrder': true, - 'deposit': false, - 'fetchBalance': true, - 'fetchClosedOrders': false, - 'fetchCurrencies': false, - 'fetchDepositAddress': false, - 'fetchMarkets': true, - 'fetchMyTrades': false, - 'fetchOHLCV': false, - 'fetchOpenOrders': false, - 'fetchOrder': false, - 'fetchOrderBook': true, - 'fetchOrders': false, - 'fetchStatus': 'emulated', - 'fetchTicker': true, - 'fetchTickers': false, - 'fetchBidsAsks': false, - 'fetchTrades': true, - 'withdraw': false, - ... - } - ``` - -特性的值为`true`、'false'或`emulated`,其含义如下: - -* true表示该特性是交易所API原生支持的,并且在cctx库中通过统一API提供访问接口 -* false表示该特性不是交易所API原生支持的,并且在cctx库中没有访问该特性的统一API -* emulated表示该特性不是交易所API原生支持的,但是cctx库通过统一API提供了该特性 - -### 交易所API限流 - -交易所通常都有限流机制。交易所会记录、跟踪你的身份和IP地址, 不允许你过于频繁的访问其API。通过限流措施,交易所可以对访问流量 进行负载均衡,以此保护其API服务被DDOS攻击或被滥用。 - -警告:为了避免你的账号或IP被封,不要超过交易所的流量限制! - -大多数交易所允许每秒1到2个请求。如果你的访问过于有攻击性,交易所可能 会临时限制你访问其API或者封掉你的IP一段时间。 - -`exchange.rateLimit`属性被设置为一个安全的默认值,这是次优的选择。 有些交易所可能针对不同的访问端结点有不同的限流规则。ccxt的用户需要根据 应用的特定目的来修改rateLimit属性。 - -CCXT库有内置的实验性质的限流器,可以在后台实现访问节流,这一过程 对调用者是透明的。警告:CCXT的用户应当至少启用一种限流机制:要么 实现自己的自定义限流算法,要么使用内置的限流器。 - -使用`.enableRateLimit`属性启用内置的限流器,例如: 下面的JavaScript代码在创建交易所实例时启用内置的限流器: - -```text -const exchange = new ccxt.bitfinex ({ - 'enableRateLimit': true, -}) -``` - -或者在创建交易所实例之后,开启或关闭内置的限流器: - -```text -exchange.enableRateLimit = true // enable -exchange.enableRateLimit = false // disable -``` - -下面是使用 Python实现同样功能的代码: - -```text -# enable built-in rate limiting upon instantiation of the exchange -exchange = ccxt.bitfinex({ - 'enableRateLimit': True, -}) - -# or switch the built-in rate-limiter on or off later after instantiation -exchange.enableRateLimit = True # enable -exchange.enableRateLimit = False # disable -``` - -下面是使用PHP实现同样功能的代码: - -```text -// enable built-in rate limiting upon instantiation of the exchange -$exchange = new \ccxt\bitfinex (array ( - 'enableRateLimit' => true, -)); - -// or switch the built-in rate-limiter on or off later after instantiation -$exchange->enableRateLimit = true; // enable -$exchange->enableRateLimit = false; // disable -``` - -如果你的调用达到了限流门槛或者返回nonce错误,ccxt库将抛出以下异常之一: - -* DDoSProtectionError:DDOS保护错误 -* ExchangeNotAvailable:交易所不可用 -* ExchangeError:交易所错误 -* InvalidNonce:无效的Nonce值 - -通常在稍晚时候再重试访问即可解决问题。 - -### Cloudflare / Incapsula 的DDoS保护 - -有些交易所使用Cloudflare或Incapsula的DDoS保护,在交易所处于高负载时 你的IP会被临时阻断,有时他们甚至限制你所在的整个国家和地区的访问。 在这种情况下他们的服务器通常会返回一个页面声明HTTP 40x错误或者 返回一个AJAX测试或验证码,然后推迟几秒钟才载入页面得到临时的访问 许可或者被添加到一个白名单中。 - -触发DDoS保护、限流或位置过滤的最常见表现有: - -* 调用交易所对象的各种方法都返回RequestTimeout异常 -* 捕捉到的`ExchangeError`或`ExchangeNotAvailable`异常,其HTTP错误码为400, 403, 404, 429, 500, 501, 503, 等等。 -* 出现DNS解析问题、SSL证书问题和底层连接问题 -* 从交易所API返回HTML页面而非JSON对象 - -如果你遇到DDoS保护错误,并且无法访问特定的交易所,那么可以尝试如下方法: - -* 尝试使用cloudscraper: - * [https://github.com/ccxt/ccxt/blob/master/examples/js/bypass-cloudflare.js](https://github.com/ccxt/ccxt/blob/master/examples/js/bypass-cloudflare.js) - * [https://github.com/ccxt/ccxt/blob/master/examples/py/bypass-cloudflare.py](https://github.com/ccxt/ccxt/blob/master/examples/py/bypass-cloudflare.py) - * [https://github.com/ccxt/ccxt/blob/master/examples/py/bypass-cloudflare-with-cookies.py](https://github.com/ccxt/ccxt/blob/master/examples/py/bypass-cloudflare-with-cookies.py) -* 使用一个代理服务器(不过会导致响应变慢) -* 要求交易所的技术支持人员将你加入白名单 -* 在临近交易所的地方(同国、同城、同数据中心、同机架、同服务器)运行你的软件 -* 尝试不同地理位置的其他IP -* 在一组分布网络服务器上运行你的软件 - - - -## **CCXT市场模型** - -### 市场数据结构 - -交易所是用来交易有价物品的场所。优势它们被冠以各种不同的 术语,例如工具、符号、交易对、货币、股票、商品、合同等, 但是指的都是一个东西 - 交易对、符号或金融工具。 - -在ccxt库中,每个交易所都提供了多个市场。不同交易所提供的 交易市场各有不同,因而也提供了跨交易所的套利机会。一个市场 通常指的是一对可交易的数字货币或法币。 - -在CCXT中,市场模型的数据结构如下: - -```text -{ - 'id': ' btcusd', // string literal for referencing within an exchange - 'symbol': 'BTC/USD', // uppercase string literal of a pair of currencies - 'base': 'BTC', // uppercase string, unified base currency code, 3 or more letters - 'quote': 'USD', // uppercase string, unified quote currency code, 3 or more letters - 'baseId': 'btc', // any string, exchange-specific base currency id - 'quoteId': 'usd', // any string, exchange-specific quote currency id - 'active': true, // boolean, market status - 'precision': { // number of decimal digits "after the dot" - 'price': 8, // integer or float for TICK_SIZE roundingMode, might be missing if not supplied by the exchange - 'amount': 8, // integer, might be missing if not supplied by the exchange - 'cost': 8, // integer, very few exchanges actually have it - }, - 'limits': { // value limits when placing orders on this market - 'amount': { - 'min': 0.01, // order amount should be > min - 'max': 1000, // order amount should be < max - }, - 'price': { ... }, // same min/max limits for the price of the order - 'cost': { ... }, // same limits for order cost = price * amount - }, - 'info': { ... }, // the original unparsed market info from the exchange -} -``` - -每个市场都是一个关联数组(或称为字典),包含以下键: - -* id:市场ID,用来在交易所内区分不同市场的字符串或数字ID。 -* symbol:市场符号,用来表示交易对的大写的字符串代码。通常记作:基础货币/报价货币,例如: BTC/USD, LTC/CNY 或 ETH/EUR等等。在ccxt库中使用市场符号来引用不同的市场。 -* base:基础货币代码,表示基础法币或加密货币的统一的大写字符串代码,代码是标准化的,在 CCXT中以及CCXT统一API中,使用货币代码来引用不同的货币。 -* quote:报价货币代码,用来表示报价法币或数字货币的统一的大写字符串代码。 -* baseId:基础货币ID,是交易所特定的表示基础货币的ID,不是统一的代码,理论上可以是任何 字符串。 -* quoteId:报价货币ID,是交易所特定的表示报价货币的ID,也不是统一的代码,每个交易所自行维护。 -* active:是否激活,布尔值,表示这个市场是否可交易。通常如果一个市场未激活,那么所有相关的 行情、委托账本以及其他访问端结点都返回空响应、全零、无数据或过时数据。调用者需要检查市场 是否激活并且定期刷新市场缓存。 -* info:一个用于记录非共性市场属性的关联数组,包括手续费、费率、限制以及其他一般性市场信息。 内部的info数组对每个特定的市场都是不同的,其内容依赖于交易所。 -* precision:在委托单中金额相关字段(例如价格、数量、成本等)支持的最大小数位数。 -* limits:限值,价格、数量和成本等的最高和最低限值,其中:成本 = 价格 \* 数量。 - -### 精度 vs. 限值 - -不要混淆了精度和限值!精度和最低限值无关。8位精度并不一定意味着最低限值为 0.00000001。反过来也是正确的:最小限值0.0001也不一定意味着精度为4。 - -#### 示例1 - -```text -(market['limits']['amount']['min'] == 0.05) && (market['precision']['amount'] == 4) -``` - -上面的代码要求任何委托单的数量必须同时满足以下条件: - -* 数量值应当 >= 0.05,例如: - -```text - + good: 0.05, 0.051, 0.0501, 0.0502, ..., 0.0599, 0.06, 0.0601, ... - - bad: 0.04, 0.049, 0.0499 -``` - -* 精度最高4位小数,例如: - - ```text - + good: 0.05, 0.051, 0.052, ..., 0.0531, ..., 0.06, ... 0.0719, ... - - bad: 0.05001, 0.05000, 0.06001 - ``` - -#### 示例2 - -```text -(market['limits']['price']['min'] == 0.0019) && (market['precision']['price'] == 5) -``` - -这个例子中要求任何委托单的价格必须同时满足以下条件: - -* 价格应当 >= 0.019,例如: - - ```text - + good: 0.019, ... 0.0191, ... 0.01911, 0.01912, ... - - bad: 0.016, ..., 0.01699 - ``` - -* 价格精度最高5位小数,例如: - - ```text - + good: 0.02, 0.021, 0.0212, 0.02123, 0.02124, 0.02125, ... - - bad: 0.017000, 0.017001, ... - ``` - -#### 示例3 - -```text -(market['limits']['amount']['min'] == 50) && (market['precision']['amount'] == -1) -``` - -这个示例要求任何委托单的数量同时满足以下条件: - -* 数量应当 >= 50,例如: - - ```text - + good: 50, 60, 70, 80, 90, 100, ... 2000, ... - - bad: 1, 2, 3, ..., 9 - ``` - -* 精度为负数表示应当为10的倍数,例如: - - ```text - + good: 50, ..., 110, ... 1230, ..., 1000000, ..., 1234560, ... - - bad: 9.5, ... 10.1, ..., 11, ... 200.71, ... - ``` - -### 委托单中的数值要求与格式化方法 - -ccxt的用户应当始终遵守精度和限值要求!委托单中的值应当满足以下条件: - -* 委托单amount > limits\['min'\]\['amount'\] -* 委托单amount < limits\['max'\]\['amount'\] -* 委托单price > limits\['min'\]\['price'\] -* 委托单price < limits\['max'\]\['price'\] -* 委托单cost \(amount \* price\) > limits\['min'\]\['cost'\] -* 委托单cost \(amount \* price\) < limits\['max'\]\['cost'\] -* amount的精度 <= precision\['amount'\] -* price 的精度 <= precision\['price'\] - -有些交易所的委托单可能不会包含上面提到的所有的值。 - -#### 数值格式化方法 - -每个交易所都有它自己的取整、计数和填充模式。 - -CCXT支持的取整模式有: - -* ROUND – 取整精度要求之后的小数位 -* TRUNCATE– 截断精度要求之后的小数位 - -数值精度计数模式可以使用`exchange.precisionMode`属性访问。 - -CCXT支持的计数模式包括: - -* DECIMAL\_PLACES – 统计所有的数字,99%的交易所使用这种计数模式 -* SIGNIFICANT\_DIGITS – 仅统计非零数字,有些交易所(bitfinex等)采用这种模式的计数 -* TICK\_SIZE – 有些交易所只允许某个特定值的整数倍(bitmex使用这种模式) - -CCXT支持的填充模式包括: - -* NO\_PADDING – 无填充,大多数情况下的默认模式 -* PAD\_WITH\_ZERO – 使用0字符填充至精度要求 - -交易所基类包含了`decimalToPrecision`来帮助格式化数值为要求的精度, 它支持不同的取整、计数和填充模式。 - -JavaScript方法原型: - -```text -function decimalToPrecision (x, roundingMode, numPrecisionDigits, countingMode = DECIMAL_PLACES, paddingMode = NO_PADDING) -``` - -Python方法原型: - -```text -def decimal_to_precision(n, rounding_mode=ROUND, precision=None, counting_mode=DECIMAL_PLACES, padding_mode=NO_PADDING): -``` - -Php方法原型: - -```text -function decimalToPrecision ($x, $roundingMode = ROUND, $numPrecisionDigits = null, $countingMode = DECIMAL_PLACES, $paddingMode = NO_PADDING) -``` - -可以访问以下示例代码查看如何使用`decimalToPrecision`方法来格式化字符串和浮点数: - -* JavaScript: [https://github.com/ccxt/ccxt/blob/master/js/test/base/functions/test.number.js](https://github.com/ccxt/ccxt/blob/master/js/test/base/functions/test.number.js) -* Python: [https://github.com/ccxt/ccxt/blob/master/python/test/test\_decimal\_to\_precision.py](https://github.com/ccxt/ccxt/blob/master/python/test/test_decimal_to_precision.py) -* PHP: [https://github.com/ccxt/ccxt/blob/master/php/test/decimal\_to\_precision.php](https://github.com/ccxt/ccxt/blob/master/php/test/decimal_to_precision.php) - -### 载入市场清单 - -大多数情况下,在可以访问其他API方法之前,你都需要先载入特定交易所 的市场清单和交易符号。如果你忘记载入市场清单,ccxt库会在你第一次 调用统一API前自动载入。ccxt会先后发送两个HTTP请求,第一个请求市场清单, 第二个请求其他数据。 - -要手工预先载入市场清单,可以调用交易所实例的`loadMarkets ()` 或 `load_markets ()` 方法,该方法返回一个描述市场集合的关联数组,键为交易符号。如果你希望 对业务逻辑有更多控制,那么推荐用这种方法手工载入市场清单。 - -JavaScript示例代码: - -```text -(async () => { - let kraken = new ccxt.kraken () - let markets = await kraken.load_markets () - console.log (kraken.id, markets) -}) () -``` - -Python示例代码: - -```text -okcoin = ccxt.okcoinusd () -markets = okcoin.load_markets () -print (okcoin.id, markets) -``` - -PHP示例代码: - -```text -$id = 'huobipro'; -$exchange = '\\ccxt\\' . $id; -$huobipro = new $exchange (); -$markets = $huobipro->load_markets (); -var_dump ($huobipro->id, $markets); -``` - -### 交易符号和市场ID - -市场ID用于在REST请求-响应过程中引用交易所内的交易对。每个交易所 都有不同的市场ID集,因此不可以跨交易所使用市场ID。例如,BTC/USD 交易对在不同的交易所中可能有不同的ID:btcusd、 BTCUSD、XBTUSD、btc/usd、 42 \(数字ID\)、 BTC/USD、 Btc/Usd、 tBTCUSD、 XXBTZUSD等。你不需要 记住或使用市场ID,他们的作用是在交易所模型实现的内部用于HTTP的请求 -响应目的。 - -CCXT库将不通用的市场ID抽象为标准化的交易符号。交易符号不同于市场ID。 每个市场都采用一个对应的符号来引用,交易符号可以跨交易所使用,这使得 交易符号更适用于跨交易所套利等其他很多应用。 - -交易符号通常是描述一对交易货币的大写字符串常量,以斜杠间隔两个货币代码。 货币代码是3~4位大写字母,例如 BTC, ETH, USD, GBP, CNY, LTC, JPY, DOGE, RUB, ZEC, XRP, XMR, 等等。有些交易所也有长一些的富有异国风情的货币名称。 在斜杠之前的货币被称为基础货币,之后的被称为报价货币。下面是一些符号的 示例: BTC/USD, DOGE/LTC, ETH/EUR, DASH/XRP, BTC/CNY, ZEC/XMR, ETH/JPY。 - -有时用户可能会注意到像'XBTM18' 或'.XRPUSDM20180101' 或r "exotic/rare symbols" 之类的交易符号。交易符号并不是一定要有斜杠或者包含货币对的代码。符号字符串 完全取决于市场类型(它是一个现货市场、期货市场、暗池市场或过期市场等等)。 CCXT不鼓励你解析交易符号字符串,你不应该依赖于交易符号的格式,CCXT推荐你 使用市场属性来达成你的应用需求。 - -市场结构使用符号和ID为键。交易所基类也有内置的方法可以按符号访问市场对象。大多数 API方法需要传入交易符号作为第一个参数。当查询当前价格或委托下单时,也常常 需要你指定一个交易符号。 - -大多数时候,CCXT用户都是与市场交易符号打交道。如果你访问字典中不存在的 键,就会收获一个异常。 - -JavaScript示例代码: - -```text -(async () => { - - console.log (await exchange.loadMarkets ()) - - let btcusd1 = exchange.markets['BTC/USD'] // get market structure by symbol - let btcusd2 = exchange.market ('BTC/USD') // same result in a slightly different way - - let btcusdId = exchange.marketId ('BTC/USD') // get market id by symbol - - let symbols = exchange.symbols // get an array of symbols - let symbols2 = Object.keys (exchange.markets) // same as previous line - - console.log (exchange.id, symbols) // print all symbols - - let currencies = exchange.currencies // a list of currencies - - let bitfinex = new ccxt.bitfinex () - await bitfinex.loadMarkets () - - bitfinex.markets['BTC/USD'] // symbol → market (get market by symbol) - bitfinex.markets_by_id['XRPBTC'] // id → market (get market by id) - - bitfinex.markets['BTC/USD']['id'] // symbol → id (get id by symbol) - bitfinex.markets_by_id['XRPBTC']['symbol'] // id → symbol (get symbol by id) - -}) -``` - -Python示例代码: - -```text -print (exchange.load_markets ()) - -etheur1 = exchange.markets['ETH/EUR'] # get market structure by symbol -etheur2 = exchange.market ('ETH/EUR') # same result in a slightly different way - -etheurId = exchange.market_id ('BTC/USD') # get market id by symbol - -symbols = exchange.symbols # get a list of symbols -symbols2 = list (exchange.markets.keys ()) # same as previous line - -print (exchange.id, symbols) # print all symbols - -currencies = exchange.currencies # a list of currencies - -kraken = ccxt.kraken () -kraken.load_markets () - -kraken.markets['BTC/USD'] # symbol → market (get market by symbol) -kraken.markets_by_id['XXRPZUSD'] # id → market (get market by id) - -kraken.markets['BTC/USD']['id'] # symbol → id (get id by symbol) -kraken.markets_by_id['XXRPZUSD']['symbol'] # id → symbol (get symbol by id) -``` - -PHP示例代码: - -```text -$var_dump ($exchange->load_markets ()); - -$dashcny1 = $exchange->markets['DASH/CNY']; // get market structure by symbol -$dashcny2 = $exchange->market ('DASH/CNY'); // same result in a slightly different way - -$dashcnyId = $exchange->market_id ('DASH/CNY'); // get market id by symbol - -$symbols = $exchange->symbols; // get an array of symbols -$symbols2 = array_keys ($exchange->markets); // same as previous line - -var_dump ($exchange->id, $symbols); // print all symbols - -$currencies = $exchange->currencies; // a list of currencies - -$okcoinusd = '\\ccxt\\okcoinusd'; -$okcoinusd = new $okcoinusd (); - -$okcoinusd->load_markets (); - -$okcoinusd->markets['BTC/USD']; // symbol → market (get market by symbol) -$okcoinusd->markets_by_id['btc_usd']; // id → market (get market by id) - -$okcoinusd->markets['BTC/USD']['id']; // symbol → id (get id by symbol) -$okcoinusd->markets_by_id['btc_usd']['symbol']; // id → symbol (get symbol by id) -``` - -### 货币命名的一致性 - -不同的交易所在术语定义方面有一些模糊之处,对于新手交易者而言 可能会产生歧义。有些交易所将市场成为交易对,而另一些交易所则 将交易符号称为产品。对于CCXT开发库而言,每个交易所都包含一个 或多个交易市场,每个交易市场有一个ID和一个符号,大多数符号都是 由基础货币和报价货币对组成。 - -```text -Exchanges → Markets → Symbols → Currencies -``` - -历史上对同一个交易对曾经使用过各种各样的符号名称。有些数字货币 (例如Dash)甚至名字都改过不止一次。为了在多个交易所之间保持 一致性,ccxt库使用以下已知的符号和货币的替代名称: - -* XBT → BTC:XBT比较新,但是BTC在交易所中更常见,而且听起来更像比特币 -* BCC → BCH:比特币现金分叉通常使用两个不同的名称:BCC和BCH。BCC有点 不明确,容易和BitConnect搞混。ccxt库会正确地将BCC换成BCH(有些交易所 和聚合器会混淆这两个名字)。 -* DRK → DASH:DASH原来叫Darkcoin,然后改名为Dash -* BCHABC → BCH:在2018年11月15日,比特币现金再次分叉,因此,现在有BCH \(BCH ABC\) 和BSV \(BCH SV\)。 -* BCHSV → BSV:这对应比台币现金的SV分叉,有些交易所称之为BSV,另一些交易所称之为BCHSV,ccxt使用前者。 -* DSH → DASH:The DSH \(Dashcoin\) 和DASH \(Dash\)不是一个东西。有些交易所不恰当地将DASH 标记为DSH,ccxt库对此进行了修正\(DSH → DASH\),但是只有一个交易所混淆了这两种货币, 绝大多数交易所都正确地区分了这两种货币。记住DASH/BTC和DSH/BTC不一样。 -* XRB → NANO:NANO是RaiBlocks的较新的代码,因此,CCXT统一API将在必要时 使用NANO替代较早的XRB。 -* USD → USDT:有些交易所,例如Bitfinex、HitBTC等在其列表中将其命名为USD,但是 那些市场实际上交易的是USDT。混淆来自于3个字母的限制或者是其他原因。在实际交易 的货币是USDT而非USD时,CCXT库会将USD替换为USDT。注意,有些交易所同时有 USD和USDT。例如,Kraken有一个USDT/USD交易对。 - -#### 货币命名冲突的解决流程 - -每个交易所都使用一个关联数组用于数字货币代码的替换,可以通过`exchange.commonCurrencies` 属性访问这个关联数组。有时用户可能会注意到混合大小写或者包含空格的奇怪的货币符号, 之所以使用这些名称是为了解决不同交易所使用一样的符号表示不同的货币而引起的冲突: - -首先,我们采集不同交易所关于有疑问的货币代码的所有可用信息。交易所通常有其上市 货币的描述清单,可能在API中,也可能在文档里、知识库里或网站的其他地方。 - -当我们识别出每个货币代码所表示的数字货币后,我们查看其在CoinMarketCap上的主页。 - -具有最大市值的货币可以保留自己的货币代码。例如,HOT通常表示Holo或Hydro Protocol。 这种情况下Holo得以继续持有其代码HOT,Hydro Protocol将以其名称作为代码,也就是Hydro Protocol。 因此,可能会有这样的交易对:HOT/USD \(表示Holo\) 和 Hydro Protocol/USD,这表示不同的市场。 - -如果一个货币的市值未知,或者不足以决定胜出者,我们也考虑交易量以及其他因素。 - -当决定了胜出的货币之后,所有其他竞争货币的代码都会重新进行映射,并使用`exchange.commonCurrencies` 来进行替换。 - -不幸的是这还是一个进展中的工作,因为每天都在上市新的货币,也是不是会出现 新的交易所。因此,总之这是一个在快速变化的环境中的没有尽头的自我纠错过程, 我们也感谢你能报告你发现的冲突和不匹配之处。 - -### 货币命名常见问题及解答 - -Q:符号名称是否可能会改变? - -A:简而答之,是的,有时候会改变,但是极少。如果绝对需要修改符号 映射并且不可避免的话,就会修改货币命名。然而,所有之前的符号修改 都与冲突解析或分叉有关。迄今为止,在CCXT中还没有使用相同符号代码 的一种货币的市值被另一种超越的先例。 - -Q:我们可以始终用同样的符号表示同一个数字货币吗? - -A:或多或少:)首先,ccxt库本身也在不断前进中,它在尝试适应不断 变化的现实,因此可能存在我们将来会通过修改符号映射来解决的冲突。 最后,我们的软件协议指出“不提供担保,自担风险使用”。然而,我们不会随意修改符号 映射,因为我们理解随意修改的后果,不希望完全打破后向兼容性。 - -如果一个主要货币的符号不得不修改,那么控制权依然在用户手中。 `exchange.commonCurrencies`属性的值可以在初始化时或之后修改,就像 exchange对象的其他属性一样。如果涉及到一种重要的数字货币,我们通常 会告诉大家如何添加一点代码来保持既有的代码行为。 - -Q:基础货币和报价货币的一致性? - -A:这依赖于你使用的是哪个交易所,但是有些交易所的交易对是反的,它们 会把报价货币放在前头而基础货币放在后头。这种情况下你会看到解析后的 基础货币和报价货币和解析前是不一样的。 - -对于这些搞错交易对先后顺序的交易所,ccxt在解析交易所响应时会进行修正。 如果你希望少一些困扰,记住以下规则:基础货币总是在斜杠前,报价货币 总是在斜杠后: - -```text -base currency ↓ - BTC / USDT - ETH / BTC - DASH / ETH - ↑ quote currency -``` - -### 市场缓冲强制重载 - -`loadMarkets ()` / `load_markets ()`是一个有副作用的方法, 它会在exchange示例上保存市场数组。对每个交易所实例你只需要 调用一次。所有后续对此方法的调用都会返回本地保存的市场数组。 - -当载入交易市场后,你可以随时使用`markets`属性访问市场信息,这个 属性包含了一个以符号为键的市场关联数组。如果你需要强制重载市场 列表,只需要在调用时设置参数`reload`为`true`即可。 - -JavaScript示例代码: - -```text -(async () => { - let kraken = new ccxt.kraken ({ verbose: true }) // log HTTP requests - await kraken.load_markets () // request markets - console.log (kraken.id, kraken.markets) // output a full list of all loaded markets - console.log (Object.keys (kraken.markets)) // output a short list of market symbols - console.log (kraken.markets['BTC/USD']) // output single market details - await kraken.load_markets () // return a locally cached version, no reload - let reloadedMarkets = await kraken.load_markets (true) // force HTTP reload = true - console.log (reloadedMarkets['ETH/BTC']) -}) () -``` - -Python示例代码: - -```text -poloniex = ccxt.poloniex({'verbose': True}) # log HTTP requests -poloniex.load_markets() # request markets -print(poloniex.id, poloniex.markets) # output a full list of all loaded markets -print(list(poloniex.markets.keys())) # output a short list of market symbols -print(poloniex.markets['BTC/ETH']) # output single market details -poloniex.load_markets() # return a locally cached version, no reload -reloadedMarkets = poloniex.load_markets(True) # force HTTP reload = True -print(reloadedMarkets['ETH/ZEC']) -``` - -PHP示例代码: - -```text -$bitfinex = new \ccxt\bitfinex (array ('verbose' => true)); // log HTTP requests -$bitfinex.load_markets (); // request markets -var_dump ($bitfinex->id, $bitfinex->markets); // output a full list of all loaded markets -var_dump (array_keys ($bitfinex->markets)); // output a short list of market symbols -var_dump ($bitfinex->markets['XRP/USD']); // output single market details -$bitfinex->load_markets (); // return a locally cached version, no reload -$reloadedMarkets = $bitfinex->load_markets (true); // force HTTP reload = true -var_dump ($bitfinex->markets['XRP/BTC']); -``` - -## **CCXT API** - -### API方法与访问端结点 - -每个交易所对象都提供了一组API方法。API的每个方法被成为一个访问端结点, 它指的是用于查询各种信息的HTTP URL。所有的访问端结点都返回JSON响应。 - -通常有一个访问端结点用于获取交易所的市场列表,一个访问端结点用于提取 特定市场的交易委托账本,一个访问端结点用于提取交易历史,一组访问点用于 下单或取消委托单、充值或提现等等... 基本上你在交易所里可以进行的操作 都会有一个API提供出来供你调用。 - -因为不同交易所的方法集彼此不同,ccxt库实现了以下功能: - -* 为所有可能的URL和方法提供公开和私有API -* 提供一个统一的API支持各交易所的共同的方法 - -端结点URL在每个交易所的`api`属性中预定义。你不需要重载这个属性,除非 你要实现一个新的交易所API(至少你需要了解你要做什么)。 - -### 隐含的API方法 - -大多数交易所特定的API方法都是隐含的,意思是这些方法没有在代码中 显式地定义。ccxt库采用声明式的方法来定义隐含的交易所API方法。 - -API的每个方法通常都有自己的访问端结点。ccxt库为每个交易所都定义了 所有的访问端结点,你可以通过`.api`属性访问。在创建交易所对象时, 在`defineRestApi()` / `define_rest_api()`中将会为`.api`列表中的 每个url创建一个隐含的魔术方法(即偏函数或闭包)。这个环节在所有 交易所上都是统一的。生成的每个方法都可以驼峰写法和下划线写法来访问。 - -访问点定义指的是一个交易所暴露出来的所有的API的URL的完整的列表。 这个列表将在交易所对象初始化时转化为可调用的方法。在API访问端结点 列表中的每个URL都有一个对应的可调用方法。对于所有的交易所而言,这 都是自动进行的,因此ccxt库支持数字货币交易所的所有可能的URL。 - -每个隐含的方法都有一个唯一的名字,这个名字是利用`.api`中的定义生成的。 例如,对于一个私有HTTPS PUT访问端结点`https://api.exchange.com/order/{id}/cancel`, 其对应的隐含方法名为`.privatePutOrderIdCancel()` / `.private_put_order_id_cancel()`。 对于一个公开的HTTPS GET访问端结点`https://api.exchange.com/market/ticker/{pair}`, 其对应的隐含方法名为`.publicGetTickerPair()` / `.public_get_ticker_pair()`,依次类推。 - -隐含方法接收传入的参数字典,将请求发送到交易所,然后返回交易所特定的未解析 的JSON结果。要传入一个参数,将其添加到字典中与参数同名的键下即可。例如对于 上面的例子,就是像`.privatePutOrderIdCancel ({ id: '41987a2b-...' })` 和`.publicGetTickerPair ({ pair: 'BTC/USD' })`。 - -ccxt推荐的与交易所交互的方式,并不是使用交易所特定的隐含方法,而是使用ccxt 提供的统一方法。只有当ccxt的统一api中没有提供相应的方法时,才应当使用 隐含的方法作为后备方案。 - -要获得指定交易所实例的所有可用方法,包括隐含方法和统一方法,你可以 使用如下的简单代码。 - -JavaScript代码示例: - -```text -console.log (new ccxt.kraken ()) -``` - -Python代码示例: - -```text -print(dir(ccxt.hitbtc())) -``` - -PHP代码示例: - -```text -var_dump (new \ccxt\okcoinusd ()); -``` - -### 公开API与私有API - -API的URL通常分为两类:市场数据方面的公开API,以及交易和账户相关的私有API。 这两组API的方法通常分别使用前缀`public`和`private`。 - -#### 公开API - -公开API用来访问市场数据,不需要进行身份验证。大多数交易所为所有 用户提供开放的市场数据(通常有一定的限流措施)。使用ccxt库,任何人 都可以直接访问市场数据,而无需在交易所进行注册,也无需设置api key 和密码。 - -公开API包含如下内容: - -* 交易对 -* 价格流 -* 委托账本(L1、L2、L3...) -* 交易历史(完成的订单、交易、执行) -* 行情数据(现价、24小时价格) -* 用于图表的OHLCV序列数据 -* 其他公开访问点 - -#### 私有API - -要使用私有API进行交易,你需要从交易所获取API key。这通常意味着你需要 在交易所注册并使用你的账户创建API key。大多数交易所需要个人信息或身份 标识,一些身份验证也是必要的。 - -如果你希望交易,首先需要在交易所进行注册,ccxt库不会创建账户或者提供 API key。有些交易所的API提供了在代码中注册账户的接口,但是大多数交易所 都没有这样的接口。你必须在交易所的网站注册并创建API key。 - -私有API包含以下内容: - -* 管理个人账户信息 -* 查询账户余额 -* 委托市价单和限价单 -* 创建充值地址并进行账户充值 -* 请求提取法币和加密货币 -* 查询个人的敞口/完结委托单 -* 查询杠杆交易的位置 -* 获取账本历史 -* 在不同账户之间转账 -* 使用商户服务 - -有些交易所的相同服务采用了不同的名称。例如,公开API通常称为市场数据、 基础、市场、mapi、api、价格等等...所有这些指的都是一组用于访问公开 可用数据的方法。私有API通常称为trading、trade、tapi、exchange、account 等等。 - -有些交易所也暴露出商户API,可以让你创建发票并接收你的客户的数字货币和法币支付。 这一类API通常称为merchant、wallet、payment、ecapi(用于电子商务的API)。 - -要获取指定交易所实例的所有可用方法,你可以使用如下的简单代码: - -```text -console.log (new ccxt.kraken ()) // JavaScript -print (dir (ccxt.hitbtc ())) # Python -var_dump (new \ccxt\okcoinusd ()); // PHP -``` - -### 同步调用与异步调用 - -JavaScript版本的CCXT库中,所有的方法都是异步的,这些方法返回解析值 为JSON对象的Promise。在CCXT中我们使用现代的async/await语法来操作Promise, 如果你不熟悉这种语法,可以参考[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function)。 - -JavaScript示例代码: - -```text -(async () => { - let pairs = await kraken.publicGetSymbolsDetails () - let marketIds = Object.keys (pairs['result']) - let marketId = marketIds[0] - let ticker = await kraken.publicGetTicker ({ pair: marketId }) - console.log (kraken.id, marketId, ticker) -}) () -``` - -Python版本的ccxt库使用async/await语法支持Python 3.5+的异步并发模式。 异步的Python版本使用aiohttp实现纯异步io。在异步模式下所有的属性和 方法名还是一样的,只是大多数方法都有async关键字装饰。如果你希望使用 异步模式,应当链接ccxt.async\_support子包,如下例所示: - -```text -import asyncio -import ccxt.async_support as ccxt - -async def print_poloniex_ethbtc_ticker(): - poloniex = ccxt.poloniex() - print(await poloniex.fetch_ticker('ETH/BTC')) - -asyncio.get_event_loop().run_until_complete(print_poloniex_ethbtc_ticker()) -``` - -在PHP版本的ccxt库中,所有的API方法都是同步的。 - -### 调用参数与返回值 - -所有的公开和私有API方法都返回交易所响应的原始的JSON对象,也就是 说没有解析的原始响应结果。统一API返回公共格式的JSON对象,在所有 交易所上都保持统一的结构。 - -#### 调用参数 - -所有可能的API访问端结点集合对于每个交易所都不一样。大多数方法接收 单一的关联数组(或Python字典)表示的键-值参数。传参方法如下所示: - -```text -bitso.publicGetTicker ({ book: 'eth_mxn' }) // JavaScript -ccxt.zaif().public_get_ticker_pair ({ 'pair': 'btc_jpy' }) # Python -$luno->public_get_ticker (array ('pair' => 'XBTIDR')); // PHP -``` - -要查看每个交易的方法参数的完整清单,请参考交易所的API文档。 - -### API方法命名规范 - -交易所方法名是由以下字符串拼接而成: - -* 类型:public或private -* HTTP方法:GET、POST、PUT、DELETE -* 访问端结点URL - -示例如下: - -| 方法名 | API URL基地址 | 端结点URL | -| :--- | :--- | :--- | -| publicGetIdOrderbook | [https://bitbay.net/API/Public](https://bitbay.net/API/Public) | {id}/orderbook | -| publicGetPairs | [https://bitlish.com/api](https://bitlish.com/api) | pairs | -| publicGetJsonMarketTicker | [https://www.bitmarket.net](https://www.bitmarket.net/) | json/{market}/ticker | -| privateGetUserMargin | [https://bitmex.com](https://bitmex.com/) | user/margin | -| privatePostTrade | [https://btc-x.is/api](https://btc-x.is/api) | trade | -| tapiCancelOrder | [https://yobit.net](https://yobit.net/) | tapi/CancelOrder | -| ... | ... | ... | - -ccxt库同时支持驼峰命名法(JavaScript常用)和下划线命名法(Python和PHP常用), 因此所有的方法在任何开发语言中都可以上述两种风格之一调用: - -```text -exchange.methodName () // 驼峰式伪代码 -exchange.method_name () // 下划线式伪代码 -``` - -要获取指定交易所实例的所有可用方法的完整列表,可以简单地调用如下代码: - -```text -console.log (new ccxt.kraken ()) // JavaScript -print (dir (ccxt.hitbtc ())) # Python -var_dump (new \ccxt\okcoinusd ()); // PHP -``` - -### 统一API - -ccxt统一API是所有交易所中的公共方法的集合。目前统一API包含以下方法: - -* fetchMarkets\(\): 从交易所提取所有有效市场的清单,返回市场对象数组。有些 交易所没有办法通过其在线API获取市场清单,CCXT采用硬编码的方式返回这些交易所的市场清单。 -* loadMarkets\(\[reload\]\):返回对象形式的市场清单并在交易所实例上缓存,键为交易符号。如果 之前已经载入过,则从缓存中返回结果,除非是强制使用了`reload`标志并设置为`true`。 -* fetchOrderBook\(symbol\[, limit = undefined\[, params = {}\]\]\):获取指定市场交易符号的L2/L3委托账本 -* fetchStatus\(\[, params = {}\]\):返回交易所状态信息,可能使用API或者硬编码实现 -* fetchL2OrderBook\(symbol\[, limit = undefined\[, params\]\]\):获取交易符号的2层(价格聚合)委托账本 -* fetchTrades\(symbol\[, since\[, \[limit, \[params\]\]\]\]\):获取指定交易符号的最近交易 -* fetchTicker\(symbol\):获取指定交易符号的最新行情数据 -* fetchBalance\(\):获取余额数据 -* createOrder\(symbol, type, side, amount\[, price\[, params\]\]\) -* createLimitBuyOrder\(symbol, amount, price\[, params\]\) -* createLimitSellOrder\(symbol, amount, price\[, params\]\) -* createMarketBuyOrder\(symbol, amount\[, params\]\) -* createMarketSellOrder\(symbol, amount\[, params\]\) -* cancelOrder\(id\[, symbol\[, params\]\]\) -* fetchOrder\(id\[, symbol\[, params\]\]\) -* fetchOrders\(\[symbol\[, since\[, limit\[, params\]\]\]\]\) -* fetchOpenOrders\(\[symbol\[, since, limit, params\]\]\]\]\) -* fetchClosedOrders\(\[symbol\[, since\[, limit\[, params\]\]\]\]\) -* fetchMyTrades\(\[symbol\[, since\[, limit\[, params\]\]\]\]\) -* ... - -### 改写统一API的参数 - -注意,统一API的大部分方法都可以接受一个可选的`params`参数,它是一个 关联数组(字典,默认为空),包含了你希望改写的参数。`params`的内容 是与特定交易所相关的,参考交易所的API文档了解其支持的字段和值。如果 你需要传入自定义设置或可选的参数,那么可以使用`params`字典。 - -JavaScript示例代码: - -```text -(async () => { - - const params = { - 'foo': 'bar', // exchange-specific overrides in unified queries - 'Hello': 'World!', // see their docs for more details on parameter names - } - - // the overrides go into the last argument to the unified call ↓ HERE - const result = await exchange.fetchOrderBook (symbol, length, params) -}) () -``` - -Python示例代码: - -```text -params = { - 'foo': 'bar', # exchange-specific overrides in unified queries - 'Hello': 'World!', # see their docs for more details on parameter names -} - -# overrides go in the last argument to the unified call ↓ HERE -result = exchange.fetch_order_book(symbol, length, params) -``` - -PHP示例代码: - -```text -$params = array ( - 'foo' => 'bar', // exchange-specific overrides in unified queries - 'Hello' => 'World!', // see their docs for more details on parameter names -} - -// overrides go into the last argument to the unified call ↓ HERE -$result = $exchange->fetch_order_book ($symbol, $length, $params); -``` - -### 统一API结果分页 - -大多数统一API的方法会返回单一对象或对象数组(交易、委托单等)。 然而,极少数交易所会返回一次返回全部委托单、全部交易或全部ohlcv烛线图数据。 更常见的是交易所API会限制返回一定数量的最新对象,你不能一次调用就 获取从开始时间到当前时刻的全部对象。实际上,极少有交易所能容忍或允许 这样的调用。 - -要获取历史委托单或交易,用户需要分页遍历数据。分页通常表示要循环 提取部分数据。 - -在大多数情况下,用户需要使用某种类型的分页来获取期望的结果。如果 用户没有使用分页,大多数方法将返回交易所的默认结果,这可能是从历史 的开始时刻或者也可能是返回最近的一部分数据。默认行为是交易所相关的! 分页通常会在以下方法中用到: - -* fetchTrades -* fetchOHLCV -* fetchOrders -* fetchOpenOrders -* fetchClosedOrders -* fetchMyTrades -* fetchTransactions -* fetchDeposits -* fetchWithdrawals - -对于返回对象列表的方法,交易所可能提供一种或多种分页类型。CCXT默认 统一了基于日期、基于毫秒时间戳的分页。 - -用于UTC日期和时间戳的方法集: - -```text -exchange.parse8601 ('2018-01-01T00:00:00Z') == 1514764800000 // integer, Z = UTC -exchange.iso8601 (1514764800000) == '2018-01-01T00:00:00Z' // iso8601 string -exchange.seconds () // integer UTC timestamp in seconds -exchange.milliseconds () // integer UTC timestamp in milliseconds -``` - -#### 基于日期的分页 - -这是目前CCXT统一API使用的分页类型。调用者提供一个毫秒时间戳作为`since` 参数的值,同时传入一个数值来限定返回结果的数量。要逐页遍历感兴趣的对象, 调用者运行如下的伪代码。 - -JavaScript: - -```text -if (exchange.has['fetchTrades']) { - let since = exchange.milliseconds () - 86400000 // -1 day from now - // alternatively, fetch from a certain starting datetime - // let since = exchange.parse8601 ('2018-01-01T00:00:00Z') - let allTrades = [] - while (since < exchange.milliseconds ()) { - const symbol = undefined // change for your symbol - const limit = 20 // change for your limit - const trades = await exchange.fetchTrades (symbol, since, limit) - if (trades.length) { - since = trades[trades.length - 1]['timestamp'] - allTrades = allTrades.concat (trades) - } else { - break - } - } -} -``` - -Python: - -```text -if exchange.has['fetchOrders']: - since = exchange.milliseconds () - 86400000 # -1 day from now - # alternatively, fetch from a certain starting datetime - # since = exchange.parse8601('2018-01-01T00:00:00Z') - all_orders = [] - while since < exchange.milliseconds (): - symbol = None # change for your symbol - limit = 20 # change for your limit - orders = await exchange.fetch_orders(symbol, since, limit) - if len(orders): - since = orders[len(orders) - 1]['timestamp'] - all_orders += orders - else: - break -``` - -PHP: - -```text -if ($exchange->has['fetchMyTrades']) { - $since = exchange->milliseconds () - 86400000; // -1 day from now - // alternatively, fetch from a certain starting datetime - // $since = $exchange->parse8601 ('2018-01-01T00:00:00Z'); - $all_trades = array (); - while (since < exchange->milliseconds ()) { - $symbol = null; // change for your symbol - $limit = 20; // change for your limit - $trades = $exchange->fetchMyTrades ($symbol, $since, $limit); - if (count($trades)) { - $since = $trades[count($trades) - 1]['timestamp']; - $all_trades = array_merge ($all_trades, $trades); - } else { - break; - } - } -} -``` - -#### 基于ID的分页 - -调用者提供对象的`from_id`,以及一个用于限定返回结果数量的值。这是一些交易所 的默认行为,然而,这一分页类型目前还不是统一的。要基于ID进行分页,调用者可以 运行如下伪代码: - -JavaScript: - -```text -if (exchange.has['fetchTrades']) { - let from_id = 'abc123' // all ids are strings - let allTrades = [] - while (true) { - const symbol = undefined // change for your symbol - const since = undefined - const limit = 20 // change for your limit - const params = { - 'from_id': from_id, // exchange-specific non-unified parameter name - } - const trades = await exchange.fetchTrades (symbol, since, limit, params) - if (trades.length) { - from_id = trades[trades.length - 1]['id'] - allTrades.push (trades) - } else { - break - } - } -} -``` - -Python: - -```text -if exchange.has['fetchOrders']: - from_id = 'abc123' # all ids are strings - all_orders = [] - while True: - symbol = None # change for your symbol - since = None - limit = 20 # change for your limit - params = { - 'from_id': from_id, # exchange-specific non-unified parameter name - } - orders = await exchange.fetch_orders(symbol, since, limit, params) - if len(orders): - from_id = orders[len(orders) - 1]['id'] - all_orders += orders - else: - break -``` - -PHP: - -```text -if ($exchange->has['fetchMyTrades']) { - $from_id = 'abc123' // all ids are strings - $all_trades = array (); - while (true) { - $symbol = null; // change for your symbol - $since = null; - $limit = 20; // change for your limit - $params = array ( - 'from_id' => $from_id, // exchange-specific non-unified parameter name - ); - $trades = $exchange->fetchMyTrades ($symbol, $since, $limit, $params); - if (count($trades)) { - $from_id = $trades[count($trades) - 1]['id']; - $all_trades = array_merge ($all_trades, $trades); - } else { - break; - } - } -} -``` - -#### 基于页号的分页 - -调用者提供一个页号或者初始的游标值。交易所范围一页结果以及后续的游标值以便继续。 大多数实现这种类型分页的交易所,在响应内容或响应头中返回下一个游标。 - -可以访问[这里](https://github.com/ccxt/ccxt/blob/master/examples/py/gdax-fetch-my-trades-pagination.py) 查看示例代码实现。 - -在每个迭代周期,调用者必须拿到下一个游标并将其传入下一次迭代的查询。 - -JavaScript: - -```text -if (exchange.has['fetchTrades']) { - let page = 0 // exchange-specific type and value - let allTrades = [] - while (true) { - const symbol = undefined // change for your symbol - const since = undefined - const limit = 20 // change for your limit - const params = { - 'page': page, // exchange-specific non-unified parameter name - } - const trades = await exchange.fetchTrades (symbol, since, limit, params) - if (trades.length) { - // not thread-safu and exchange-specific ! - page = exchange.last_json_response['cursor'] - allTrades.push (trades) - } else { - break - } - } -} -``` - -Python: - -```text -if exchange.has['fetchOrders']: - cursor = 0 # exchange-specific type and value - all_orders = [] - while True: - symbol = None # change for your symbol - since = None - limit = 20 # change for your limit - params = { - 'cursor': cursor, # exchange-specific non-unified parameter name - } - orders = await exchange.fetch_orders(symbol, since, limit, params) - if len(orders): - # not thread-safu and exchange-specific ! - cursor = exchange.last_http_headers['CB-AFTER'] - all_orders += orders - else: - break -``` - -PHP: - -```text -if ($exchange->has['fetchMyTrades']) { - $start = '0' // exchange-specific type and value - $all_trades = array (); - while (true) { - $symbol = null; // change for your symbol - $since = null; - $limit = 20; // change for your limit - $params = array ( - 'start' => $start, // exchange-specific non-unified parameter name - ); - $trades = $exchange->fetchMyTrades ($symbol, $since, $limit, $params); - if (count($trades)) { - // not thread-safu and exchange-specific ! - $start = $exchange->last_json_response['next']; - $all_trades = array_merge ($all_trades, $trades); - } else { - break; - } - } -} -``` - -## **CCXT委托账本模型** - -### 交易委托账本 - -交易所会提供敞口委托单的买入/卖出价格、交易量以及其他数据。 通常对每一个特定的市场都会有一个单独的访问短接点来查询交易委托账本的状态。 交易委托账本经常被称为市场深度。委托账本信息可以用于交易决策过程。 - -获取指定符号的交易委托账本的方法是`fetchOrderBook`或`fetch_order_book`。 该方法的参数是交易符号以及一个可选的参数字典(如果该交易所支持的话)。 调用方法示例代码如下。 - -JavaScript示例代码: - -```text -delay = 2000 // milliseconds = seconds * 1000 -(async () => { - for (symbol in exchange.markets) { - console.log (await exchange.fetchOrderBook (symbol)) - await new Promise (resolve => setTimeout (resolve, delay)) // rate limit - } -}) () -``` - -Python示例代码: - -```text -import time -delay = 2 # seconds -for symbol in exchange.markets: - print (exchange.fetch_order_book (symbol)) - time.sleep (delay) # rate limit -``` - -PHP示例代码: - -```text -$delay = 2000000; // microseconds = seconds * 1000000 -foreach ($exchange->markets as $symbol => $market) { - var_dump ($exchange->fetch_order_book ($symbol)); - usleep ($delay); // rate limit -} -``` - -### 委托账本模型的结构 - -ccxt返回的委托账本结构如下: - -```text -{ - 'bids': [ - [ price, amount ], // [ float, float ] - [ price, amount ], - ... - ], - 'asks': [ - [ price, amount ], - [ price, amount ], - ... - ], - 'timestamp': 1499280391811, // Unix Timestamp in milliseconds (seconds * 1000) - 'datetime': '2017-07-05T18:47:14.692Z', // ISO8601 datetime string with milliseconds -} -``` - -如果查询的交易所在其API响应中没有提供时间戳和日期值,那么在返回的结果 中时间戳和日期的值可能也会缺失(undefined/None/null)。 - -Price和amount都是浮点数。`bids`数组按价格降序排列,最高的买入价格排在第一个,最低的 买入价格排在最后一个。`asks`数组按价格升序排列,最低的卖出价格排在第一个,最高的卖出 价格排在最后一个。bids/asks数组可以是空的,表示交易所的委托账本中没有相应 的委托单。 - -交易所可能返回用于分析的不同层级的委托单,结果中要么包含每个订单的详情,要么 已经按照价格和交易量进行了分组聚合因而其中的详情信息要少一些。越多的详情信息 就需要越多的带宽,因此总体上会更慢一些,但是好处在于有更高的精度。较少的详情 信息通常会快一些,但是可能在某些特定情况下不够用。 - -`orderbook['timestamp']`是交易所生成这个响应的时间,可能会缺失(undefined/None/null)。 如果交易所有定义的话,那么它是一个UTC时间戳,以毫秒为单位,记录子1970年1月1日零点 以来的毫秒数。 - -### 市场深度 - -有些交易所接受一个字典对象来将额外的参数传入`fetchOrderBook ()` / `fetch_order_book ()`函数。 所有额外的参数都是交易所特定的(不统一)。如果要设置特定的参数,例如交易账本的深度,那么 你需要查阅交易所的文档。你可以使用如下代码获取指定数量的委托单或指定层级的聚合(即市场深度)。 - -JavaScript示例代码: - -```text -(async function test () { - const ccxt = require ('ccxt') - const exchange = new ccxt.bitfinex () - const limit = 5 - const orders = await exchange.fetchOrderBook ('BTC/USD', limit, { - // this parameter is exchange-specific, all extra params have unique names per exchange - 'group': 1, // 1 = orders are grouped by price, 0 = orders are separate - }) -}) () -``` - -Python示例代码: - -```text -import ccxt -# return up to ten bidasks on each side of the order book stack -limit = 10 -ccxt.cex().fetch_order_book('BTC/USD', limit) -``` - -PHP示例代码: - -```text -// instantiate the exchange by id -$exchange = '\\ccxt\\kraken'; -$exchange = new $exchange (); -// up to ten orders on each side, for example -$limit = 20; -var_dump ($exchange->fetch_order_book ('BTC/USD', $limit)); -``` - -委托账本聚合的层级或详情通常是数字标注的,就像L1、L2、L3... - -* L1:较少的详情,用于快速获取非常基本的信息,也就是仅市场价格。看起来就像在委托账本中仅包含一个委托单。 -* L2:最常用的聚合层级,委托单交易量按价格分组。如果两个委托单有相同的价格,那么他们会合并为一项,其总量 为这两个委托单的交易量的和。这个聚合层级可能适合大部分的应用目的。 -* L3:最详细的层级,包含所有的订单,没有聚合。这一层级自然包含了输出中的重复内容。因此,如果两个订单 有相同的价格,它们也不会合并在一起,这两个订单的优先级则取决于交易所的撮合引擎。你不一定真的需要 L3详情来进行交易。实际上,大多数情况下你根本不需要这么详细的信息。因此有些交易所不支持这个级别的数据, 总是返回聚合后的委托账本。 - -如果你想获取L2委托账本,可以使用统一API中的`fetchL2OrderBook(symbol, limit, params)` 或 `fetch_l2_order_book(symbol, limit, params)`方法。 - -### 获取市场价格 - -为了获取当前的最好价格(查询市场价格)并且计算买入卖出的价差, 可以使用如下代码。 - -JavaScript示例代码: - -```text -let orderbook = exchange.fetchOrderBook (exchange.symbols[0]) -let bid = orderbook.bids.length ? orderbook.bids[0][0] : undefined -let ask = orderbook.asks.length ? orderbook.asks[0][0] : undefined -let spread = (bid && ask) ? ask - bid : undefined -console.log (exchange.id, 'market price', { bid, ask, spread }) -``` - -Python示例代码: - -```text -orderbook = exchange.fetch_order_book (exchange.symbols[0]) -bid = orderbook['bids'][0][0] if len (orderbook['bids']) > 0 else None -ask = orderbook['asks'][0][0] if len (orderbook['asks']) > 0 else None -spread = (ask - bid) if (bid and ask) else None -print (exchange.id, 'market price', { 'bid': bid, 'ask': ask, 'spread': spread }) -``` - -PHP示例代码: - -```text -$orderbook = $exchange->fetch_order_book ($exchange->symbols[0]); -$bid = count ($orderbook['bids']) ? $orderbook['bids'][0][0] : null; -$ask = count ($orderbook['asks']) ? $orderbook['asks'][0][0] : null; -$spread = ($bid && $ask) ? $ask - $bid : null; -$result = array ('bid' => $bid, 'ask' => $ask, 'spread' => $spread); -var_dump ($exchange->id, 'market price', $result); -``` - -### 价格行情 - -价格行情包含了最近一段时间内特定交易市场的统计信息,通常使用24小时进行统计。 查询价格行情的方法如下: - -```text -fetchTicker (symbol, params = {}) // for one ticker -fetchTickers (symbol, params = {}) // for all tickers at once -``` - -检查交易所的`exchange.has['fetchTicker']`和 `exchange.has['fetchTickers']`属性 来决定所查询的交易所是否支持这些方法。 - -### 实时行情数据结构 - -行情的数据结构如下: - -```text -{ - 'symbol': string symbol of the market ('BTC/USD', 'ETH/BTC', ...) - 'info': { the original non-modified unparsed reply from exchange API }, - 'timestamp': int (64-bit Unix Timestamp in milliseconds since Epoch 1 Jan 1970) - 'datetime': ISO8601 datetime string with milliseconds - 'high': float, // highest price - 'low': float, // lowest price - 'bid': float, // current best bid (buy) price - 'bidVolume': float, // current best bid (buy) amount (may be missing or undefined) - 'ask': float, // current best ask (sell) price - 'askVolume': float, // current best ask (sell) amount (may be missing or undefined) - 'vwap': float, // volume weighed average price - 'open': float, // opening price - 'close': float, // price of last trade (closing price for current period) - 'last': float, // same as `close`, duplicated for convenience - 'previousClose': float, // closing price for the previous period - 'change': float, // absolute change, `last - open` - 'percentage': float, // relative change, `(change/open) * 100` - 'average': float, // average price, `(last + open) / 2` - 'baseVolume': float, // volume of base currency traded for last 24 hours - 'quoteVolume': float, // volume of quote currency traded for last 24 hours -} -`` - -注意: - -- bidVolume指的是委托账本中当前的最优买入价委托单的总量 -- askVolume指的是委托账本中当前的最优卖出价委托单的总量 -- baseVolume指的是过去24小时内基准货币的交易量(买入或卖出) -- quoteVolume指的是过去24小时内报价货币的交易量(买入或卖出) - -行情结构中的所有价格都是以报价货币计量,其中某些字段可能是undefined / None / null。 -``` - -base currency ↓ BTC / USDT ETH / BTC DASH / ETH ↑ quote currency \`\`\` - -时间戳和日期都是以毫秒为单位的UTC时间值: - -* ticker\['timestamp'\] 是交易所生成响应的时间,有的交易所可能没有这个值,因此在结果中会缺失 -* exchange.last\_response\_headers\['Date'\] 是收到的最后一个HTTP响应的日期-时间字符串。 - - ```text - Date - ``` - - 解析器 应当考虑时区问题。日期-时间的精度是1秒、1000毫秒。这个日期应当由交易所服务器参考以下标准设置: - - * [https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html\#sec14.18](https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.18) - * [https://tools.ietf.org/html/rfc1123\#section-5.2.14](https://tools.ietf.org/html/rfc1123#section-5.2.14) - * [https://tools.ietf.org/html/rfc822\#section-5](https://tools.ietf.org/html/rfc822#section-5) - -虽然有些交易所在其行情数据中混入了委托账本的最高买入/最低卖出价格,你不应当将 行情数据视为`fetchOrderBook`的替代方法。行情数据的主要目的是提供统计数据,可以 将其视为活跃的24小时OHLCV数据。已知的是,交易所不鼓励频繁地调用`fetchTicker`。 如果你需要一个统一的方法去访问bids和asks,你应当使用`fetchL[123]OrderBook`系列的方法。 - -要获取历史价格和数量,使用统一API中的`fetchOHLCV`方法。 - -获取行情数据的方法如下: - -* fetchTicker \(symbol\[, params = {}\]\), symbol必须,params可选 -* fetchTickers \(\[symbols = undefined\[, params = {}\]\]\), 两个参数都是可选的 - -### 按交易对查询实时行情 - -要查询指定交易对/符号的实时行情数据,调用`fetchTicker(symbol)`方法。 - -JavaScript示例代码: - -```text -if (exchange.has['fetchTicker']) { - console.log (await (exchange.fetchTicker ('BTC/USD'))) // ticker for BTC/USD - let symbols = Object.keys (exchange.markets) - let random = Math.floor (Math.random () * (symbols.length - 1)) - console.log (exchange.fetchTicker (symbols[random])) // ticker for a random symbol -} -``` - -Python示例代码: - -```text -import random -if (exchange.has['fetchTicker']): - print(exchange.fetch_ticker('LTC/ZEC')) # ticker for LTC/ZEC - symbols = list(exchange.markets.keys()) - print(exchange.fetch_ticker(random.choice(symbols))) # ticker for a random symbol -``` - -PHP别忘了正确设置时区: - -```text -if ($exchange->has['fetchTicker']) { - var_dump ($exchange->fetch_ticker ('ETH/CNY')); // ticker for ETH/CNY - $symbols = array_keys ($exchange->markets); - $random = rand () % count ($symbols); - var_dump ($exchange->fetch_ticker ($symbols[$random])); // ticker for a random symbol -} -``` - -### 查询所有交易对的实时行情 - -有些交易所(不是所有)也支持同时查询所有交易对的实时行情。请查阅 交易所的文档获取详细信息。你可以在一次调用中获取所有的实时行情。 - -JavaScript示例代码: - -```text -if (exchange.has['fetchTickers']) { - console.log (await (exchange.fetchTickers ())) // all tickers indexed by their symbols -} -``` - -Python示例代码: - -```text -if (exchange.has['fetchTickers']): - print(exchange.fetch_tickers()) # all tickers indexed by their symbols -``` - -PHP示例代码: - -```text -if ($exchange->has['fetchTickers']) { - var_dump ($exchange->fetch_tickers ()); // all tickers indexed by their symbols -} -``` - -查询所有的实时行情需要更多的流量,另外,也要注意有些交易所对后续的查询会有更严格的限流。 还有一些交易所可能会对`fetchTickers()`的调用有更多的要求,有时你无法查询的原因是API的限制。 另外一些交易所可以在URL查询参数中接受一组交易对符号,但是由于URL的长度是有限的,在极端 情况下交易所可以有数千个市场 - url的长度无法容纳所有的交易对符号。 - -JavaScript示例代码: - -```text -if (exchange.has['fetchTickers']) { - console.log (await (exchange.fetchTickers ([ 'ETH/BTC', 'LTC/BTC' ]))) // listed tickers indexed by their symbols -} -``` - -Python示例代码: - -```text -if (exchange.has['fetchTickers']): - print(exchange.fetch_tickers(['ETH/BTC', 'LTC/BTC'])) # listed tickers indexed by their symbols -``` - -PHP示例代码: - -```text -if ($exchange->has['fetchTickers']) { - var_dump ($exchange->fetch_tickers (array ('ETH/BTC', 'LTC/BTC'))); // listed tickers indexed by their symbols -} -``` - -注意在大多数情况下交易对符号列表不是必须的,但是如果你要处理所有可能的情况就需要额外的逻辑处理。 - -和CCXT统一API中的大多数方法一样,`fetchTickers`的最后一个参数是`params`,用来修改发送到 交易所的请求参数。 - -返回结果的结构如下: - -```text -{ - 'info': { ... }, // the original JSON response from the exchange as is - 'BTC/USD': { ... }, // a single ticker for BTC/USD - 'ETH/BTC': { ... }, // a ticker for ETH/BTC - ... -} -``` - -### OHLCV烛线图 - -> 这一部分特性目前还在紧张开发中。 - -大多数交易所都提供了获取OHLCV数据的访问端结点,但还是有一些交易所没有提供。 在ccxt中,交易所对象的`has['fetchOHLCV']`属性表示该交易所是否支持烛线数据序列, 如果这个布尔属性的值为true,则表明支持。 - -`fetchOHLCV`方法声明如下: - -```text -fetchOHLCV (symbol, timeframe = '1m', since = undefined, limit = undefined, params = {}) -``` - -你可以调用CCXT统一API的`fetchOHLCV` / `fetch_ohlcv`方法获取指定交易对符号的OHLCV烛线图数据。 - -JavaScript示例代码: - -```text -let sleep = (ms) => new Promise (resolve => setTimeout (resolve, ms)); -if (exchange.has.fetchOHLCV) { - for (symbol in exchange.markets) { - await sleep (exchange.rateLimit) // milliseconds - console.log (await exchange.fetchOHLCV (symbol, '1m')) // one minute - } -} -``` - -Python示例代码: - -```text -import time -if exchange.has['fetchOHLCV']: - for symbol in exchange.markets: - time.sleep (exchange.rateLimit / 1000) # time.sleep wants seconds - print (symbol, exchange.fetch_ohlcv (symbol, '1d')) # one day -``` - -PHP示例代码: - -```text -if ($exchange->has['fetchOHLCV']) { - foreach ($exchange->markets as $symbol => $market) { - usleep ($exchange->rateLimit * 1000); // usleep wants microseconds - var_dump ($exchange->fetch_ohlcv ($symbol, '1M')); // one month - } -} -``` - -要获取所查询的交易所的可用时间窗,可以查看交易所对象的`timeframes`属性。 注意只有当交易所对象的`has['fetchOHLCV']`属性值为true时上述属性才有效。 - -你的请求能够回溯多久远的数据是有限制的。大多数交易所不会允许你查询太早时间 的详细烛线数据历史(就像1分钟和5分钟的时间窗口内的详情)。他们通常提供 一段合理时间内的烛线数据,例如任何时间窗的最近1000个烛线数据,这对于大多数 应用都是足够了。突破这一限制的办法,是你可以不停地查询(REST Polling)最新 的OHLCV数据,并存储到自己的CSV文件中或者数据库里。 - -注意最后的(当前)烛线数据可能是不完整的,直到开始记录下一个烛线。 - -和ccxt的统一api和隐含api中的其他许多方法一样,`fetchOHLCV`方法的最后一个参数 可以传入一个关联数组来设置额外的交易所特定的请求参数,你需要查询交易所的API 文档来了解其支持的字段和值。 - -`since`参数是一个以毫秒计量的UTC时间戳,如果未指定`since`参数,`fetchOHLCV` 方法将返回交易所默认的时间范围。有些交易所将返回从其开始以来的所有烛线,而另一些 则只会返回最近产生的烛线,这取决于交易所的默认行为。因此如果你不指定`since` 参数,那么返回的烛线的时间范围是交易所相关的,为了得到一致的响应结果,开发者 应当传入`since`参数。 - -### OHLCV烛线数据结构 - -`fetchOHLCV`方法返回OHLCV烛线数组,其结构如下: - -```text -[ - [ - 1504541580000, // UTC 时间戳,单位:毫秒 - 4235.4, // (O)开盘价格, float - 4240.6, // (H)最高价格, float - 4230.0, // (L)最低价格, float - 4230.7, // (C)收盘价格, float - 37.72941911 // (V)交易量,以基准货币计量, float - ], - ... -] -``` - -结果数组是以时间升序排列的,最早的烛线排在第一个,最新的烛线排在最后一个。 - -### OHLCV数据的模拟 - -有些交易所没有提供任何OHLCV方法,为此ccxt库将利用公开交易模拟OHLCV烛线数据。 在这种情况下你会看到交易所对象的`has['fetchOHLCV']`属性的值为`emulated`。 - -但是,由于交易历史通常都非常有限,模拟的`fetchOHLCV`方法只能涵盖最近的信息, 因此只可以作为没有其他可选项是的备选方案使用。 - -警告:`fetchOHLCV`方法的模拟目前还是实验性质的! - -### 查询交易 - fetchTrade - -你可以调用ccxt的统一API方法`fetchTrades` / `fetch_trades`来获取指定交易对的最近交易记录。 `fetchTrade`方法声明如下: - -```text -async fetchTrades (symbol, since = undefined, limit = undefined, params = {}) -``` - -例如,如果你希望逐个打印所有交易对的近期交易(别忘了交易所的限流!), 可以使用以下代码。 - -JavaScript示例代码: - -```text -if (exchange.has['fetchTrades']) { - let sleep = (ms) => new Promise (resolve => setTimeout (resolve, ms)); - for (symbol in exchange.markets) { - await sleep (exchange.rateLimit) // milliseconds - console.log (await exchange.fetchTrades (symbol)) - } -} -``` - -Python示例代码: - -```text -import time -if exchange.has['fetchTrades']: - for symbol in exchange.markets: # ensure you have called loadMarkets() or load_markets() method. - time.sleep (exchange.rateLimit / 1000) # time.sleep wants seconds - print (symbol, exchange.fetch_trades (symbol)) -``` - -PHP示例代码: - -```text -if ($exchange->has['fetchTrades']) { - foreach ($exchange->markets as $symbol => $market) { - usleep ($exchange->rateLimit * 1000); // usleep wants microseconds - var_dump ($exchange->fetch_trades ($symbol)); - } -} -``` - -上面展示的`fetchTrades`方法返回一个按时间戳升序排列的交易数组,最早的交易在 第一个,最新的交易在最后一个。交易数组结构如下: - -```text -[ - { - 'info': { ... }, // the original decoded JSON as is - 'id': '12345-67890:09876/54321', // string trade id - 'timestamp': 1502962946216, // Unix timestamp in milliseconds - 'datetime': '2017-08-17 12:42:48.000', // ISO8601 datetime with milliseconds - 'symbol': 'ETH/BTC', // symbol - 'order': '12345-67890:09876/54321', // string order id or undefined/None/null - 'type': 'limit', // order type, 'market', 'limit' or undefined/None/null - 'side': 'buy', // direction of the trade, 'buy' or 'sell' - 'price': 0.06917684, // float price in quote currency - 'amount': 1.5, // amount of base currency - }, - ... -] -``` - -大多数交易所返回上述交易对象中的大部分字段,虽然也有些交易所不会返回type, side, 交易id或委托单id这些字段 。 大多数时候可以保证你能拿到一个交易的以下字段:timestamp, datetime,symbol, price 和amount 。 - -第二个可选参数`since`可以按时间戳削减结果数组,第三个参数`limit`可以削减返回的交易数量。 - -如果用户不指定`since`,那么`fetchTrade`方法将返回交易所默认的公开交易时间范围,这是交易所特定的, 有些交易所会返回自交易对上市开始的所有交易,另一些交易所则会返回缩减集合,例如 最近24小时、或者最近100个交易等等。如果用户希望更精确地控制时间窗口,那么应当指定 `since`参数。 - -ccxt的统一API中的大多数方法都会返回一个对象或对象数组。然而,也有极少数交易所会一次 返回所有的交易。通常来说交易所的API会限制仅返回最近的一定数量的交易。你不能只用 一个调用就返回自交易对上市依赖的所有交易对象,实际上,很少有交易所会容忍或允许 这种调用行为。 - -要查询历史交易,开发者需要按页遍历数据。分页通常暗示着使用循环分块提取数据。 - -大多数情况下,开发者需要使用至少某种类型的分页来获得一致的结果。 - -另一方面,有些交易所不支持公开交易的分页查询。总体来说交易所会提供最近的交易。 - -`fetchTrades ()` / `fetch_trades()` 方法也可以接收一个额外的关联数组作为其第四个参数。 你可以用这个关联数组传入特定交易所支持的额外的参数。请查询交易所的API文档获取详细信息。 - -### 交易身份验证 - -为了能够访问你的账户,通过市价单和限价单执行量化交易,查询余额、充值与提现等等,你需要 从每个你希望操作的交易所获取你的API key以进行身份验证。API key是交易所相关的,任何情况下 不同交易所的API key彼此都不能互换。 - -如果提供了正确的API key,交易所会自动进行身份验证。验证过程通常采用以下模式: - -* 生成一个新的nonce。nonce是一个整数,通常是以秒或者毫秒计的unix时间戳。 nonce应当是单调递增的,因此没有两个请求会使用相同的nonce值。默认的nonce 是以秒计的unix时间戳。 -* 将公开的api key和nonce追加到其他访问端结点参数之后,然后序列化以便进行签名 -* 使用HMAC-SHA256/384/512 或 MD5 哈希序列化参数,然后用私钥签名 -* 将16进制或base64编码的签名和nonce添加到HTTP头或请求内容中 - -不同的交易所上述过程可能有所区别。有些交易所可能要求其他编码格式的签名,有些则 使用不同的HTTP头参数名和格式,但是基本都是上述模式。 - -不要在多个线程、进程中同时运行的一个交易所的多个实例之间共享同一个API密钥对, 这可能会导致不可预料的行为。 - -ccxt已经为你处理了身份验证逻辑,因此你不需要手工进行任何操作,除非你在实现 一个新的交易所类,否则为了进行交易,你唯一需要做的就是提供正确的API密钥对。 - -### API Key设置 - -API身份通常包含以下内容: - -* apiKey:你的公开的API Key或Token。这部分不是保密的,它包含在你的请求头或请求内容中 用来标识你的请求。apiKey通常是一个16进制或base64编码的字符串,或者是一个UUID。 -* secret:这是你的私钥,需要秘密保存,不要告诉任何人。私钥用来在本地签名你的请求, 然后发送请求给交易所。私钥不能通过互联网发出去,也不应该发布或通过电子邮件传递。 私钥和nonce一起来生成在密码学上足够强的签名,这个签名和你的API key一起用来识别 你的身份。每个请求都有唯一的nonce,因此其签名也是唯一的。 -* uid:有些交易所也会生成一个较短的用户ID。它可以是字符串或者数字。如果交易所明确 地要求,那么你应该设置这个参数。请参考交易所的文档获取详细信息。 -* password:有些交易所也要求你在交易时提供密码。如果交易所明确要求,那么你也应该 照办。请参考交易所的文档获取详细信息。 - -你可以在交易所的网站上创建API key,然后拷贝到你的配置文件中。记得正确设置配置文件 的权限,不要让其他任何人读取。 - -记住要保证apiKey和私钥的安全,避免未授权的使用,不要发送或告诉任何人。私钥泄漏 会导致你的财产损失。 - -要创建可以用于交易的exchange对象,只需将API身份信息赋给已有的交易所实例,或者 在创建交易所实例时指定。参考以下示例代码。 - -JavaScript示例代码: - -```text -const ccxt = require ('ccxt') - -// any time -let kraken = new ccxt.kraken () -kraken.apiKey = 'YOUR_KRAKEN_API_KEY' -kraken.secret = 'YOUR_KRAKEN_SECRET_KEY' - -// upon instantiation -let okcoinusd = new ccxt.okcoinusd ({ - apiKey: 'YOUR_OKCOIN_API_KEY', - secret: 'YOUR_OKCOIN_SECRET_KEY', -}) - -// from variable id -const exchangeId = 'binance' - , exchangeClass = ccxt[exchangeId] - , exchange = new exchangeClass ({ - 'apiKey': 'YOUR_API_KEY', - 'secret': 'YOUR_SECRET', - 'timeout': 30000, - 'enableRateLimit': true, - }) -``` - -Python示例代码: - -```text -import ccxt - -# any time -bitfinex = ccxt.bitfinex () -bitfinex.apiKey = 'YOUR_BFX_API_KEY' -bitfinex.secret = 'YOUR_BFX_SECRET' - -# upon instantiation -hitbtc = ccxt.hitbtc ({ - 'apiKey': 'YOUR_HITBTC_API_KEY', - 'secret': 'YOUR_HITBTC_SECRET_KEY', -}) - -# from variable id -exchange_id = 'binance' -exchange_class = getattr(ccxt, exchange_id) -exchange = exchange_class({ - 'apiKey': 'YOUR_API_KEY', - 'secret': 'YOUR_SECRET', - 'timeout': 30000, - 'enableRateLimit': True, -}) -``` - -PHP示例代码: - -```text -include 'ccxt.php' - -// any time -$quoinex = new \ccxt\quoinex (); -$quoinex->apiKey = 'YOUR_QUOINE_API_KEY'; -$quoinex->secret = 'YOUR_QUOINE_SECRET_KEY'; - -// upon instantiation -$zaif = new \ccxt\zaif (array ( - 'apiKey' => 'YOUR_ZAIF_API_KEY', - 'secret' => 'YOUR_ZAIF_SECRET_KEY' -)); - -// from variable id -$exchange_id = 'binance'; -$exchange_class = "\\ccxt\\$exchange_id"; -$exchange = new $exchange_class (array ( - 'apiKey' => 'YOUR_API_KEY', - 'secret' => 'YOUR_SECRET', - 'timeout' => 30000, - 'enableRateLimit' => true, -)); -``` - -注意,如果在交易之前你没有设置API身份信息,那么你的私有API请求可能会失败而抛出异常或错误。 为了避免字符的转移问题,请使用单引号描述你的身份信息,例如'VERY\_GOOD'而不是 "VERY\_BAD"。 - -### 查询账户余额 - fetchBalance - -要查询账户余额,获取可用于交易的资金数量,或者锁定在委托单中的资金数量, 可以使用`fetchBalance`方法。 - -```text -fetchBalance (params = {}) -``` - -方法返回的余额结构如下: - -```text -{ - 'info': { ... }, // the original untouched non-parsed reply with details - - //------------------------------------------------------------------------- - // indexed by availability of funds first, then by currency - - 'free': { // money, available for trading, by currency - 'BTC': 321.00, // floats... - 'USD': 123.00, - ... - }, - - 'used': { ... }, // money on hold, locked, frozen, or pending, by currency - - 'total': { ... }, // total (free + used), by currency - - //------------------------------------------------------------------------- - // indexed by currency first, then by availability of funds - - 'BTC': { // string, three-letter currency code, uppercase - 'free': 321.00 // float, money available for trading - 'used': 234.00, // float, money on hold, locked, frozen or pending - 'total': 555.00, // float, total balance (free + used) - }, - - 'USD': { // ... - 'free': 123.00 // ... - 'used': 456.00, - 'total': 579.00, - }, - - ... -} -``` - -有些交易所可能不会返回完整的余额信息。许多交易所不会返回你的空账户或者未用的账户, 这种情况下在返回的余额结构中可能会缺少某些货币的信息。 - -JavaScript示例代码: - -```text -(async () => { - console.log (await exchange.fetchBalance ()) -}) () -``` - -Python示例代码: - -```text -print (exchange.fetch_balance ()) -``` - -PHP示例代码: - -```text -var_dump ($exchange->fetch_balance ()); -``` - -#### 余额信息的推导 - -有些交易所的API不会返回余额信息的完整集合,它们只会返回可用余额或者只是资金总量。 这种情况下ccxt会尝试从委托单缓存中获取缺失的数据,并根据已知的信息猜测完整的余额信息。 但是这在一些极端情况下可能不足以推导出正确的余额信息,开发者应当了解这种可能性。 - -### 查询委托单 - fetchOrders - -大多数时候,你可以按id或符号查询委托单,虽然不是所有的交易所都提供了完整 和灵活的委托单查询访问端结点。有些交易所可能没有方法查询最近完成的委托单, 另一些可能缺少按id获取委托单的方法,等等。ccxt库考虑了这些情况并尽可能 加以解决。 - -查询委托单的方法如下: - -* fetchOrder \(id, symbol = undefined, params = {}\) -* fetchOrders \(symbol = undefined, since = undefined, limit = undefined, params = {}\) -* fetchOpenOrders \(symbol = undefined, since = undefined, limit = undefined, params = {}\) -* fetchClosedOrders \(symbol = undefined, since = undefined, limit = undefined, params = {}\) - -注意这些方法的名字可以看出该方法是返回一个委托单还是多个委托单。 - -如果用户调用了交易所不支持的方法,ccxt库会抛出`NotSupported`异常。 - -要检查上述方法是否有效,可以查看交易所对象的`.has`属性。 - -JavaScript示例代码: - -```text -'use strict'; - -const ccxt = require ('ccxt') -const id = 'poloniex' -exchange = new ccxt[id] () -console.log (exchange.has) -``` - -Python示例代码: - -```text -import ccxt -id = 'binance' -exchange = getattr(ccxt, id) () -print(exchange.has) -``` - -PHP示例代码: - -```text -$exchange = new \ccxt\liqui (); -print_r ($exchange->has); // or var_dump -``` - -一个典型的`.hash`属性通常包含如下对应上述用于查询委托单的API方法的标志: - -```text -exchange.has = { - - // ... other flags ... - - 'fetchOrder': true, // available from the exchange directly and implemented in ccxt - 'fetchOrders': false, // not available from the exchange or not implemented in ccxt - 'fetchOpenOrders': true, - 'fetchClosedOrders': 'emulated', // not available from the exchange, but emulated in ccxt - - // ... other flags ... - -} -``` - -ture和false的含义很明确。`emulated`表示这个方法是ccxt模拟出来的,不是交易所原生API提供的。 The meanings of boolean true and false are obvious. - -### 查询交易 - fetchTrades - -下面的这些方法可以返回一组交易和委托单,支持`since`参数和`limit`参数: - -* fetchTrades \(public\) -* fetchMyTrades \(private\) -* fetchOrders -* fetchOpenOrders -* fetchClosedOrders - -第二个参数`since`可以按时间戳缩减结果数组,第三个参数`limit`可以限制返回结果的数量。 - -如果用户没有指定`since`参数,那么`fetchTrades`/`fetchOrders`方法将返回交易所的默认集合, 这是交易所相关的,有些交易所会返回交易对上市依赖的所有数据,而另一些交易所则只会返回 少量的交易或委托单,例如最近24小时内的,最近的100个委托单或最近的100个交易等等。如果 用户期望对时间窗口有更精确地控制,那么应该使用`since`参数。 - -注意:不是所有的交易所都提供了按开始时间过滤交易或委托单的方法,因此,对`since` 和`limit`的支持是交易所相关的。但是,大多数交易所都提供了分页和滚动的替代方案。 - -### 委托单缓存 - -一些交易所没有查询完结委托单或者所有委托单的方法,它们只提供了 `fetchOpenOrders`访问端结点,有时也会大方地提供`fetchOrder`端结点。 这意味着它们没有提供查询委托单历史的方法。ccxt库将尝试模拟委托单历史, 方法是使用交易所对象的`.orders`属性来记录所有的委托单。 - -任何时候当用户创建一个新的委托单,或者取消一个已有的敞口委托单,或者 进行了其他可能修改委托单状态的操作,ccxt库就会在缓存中记录整个委托单 信息。在后续的对`fetchOrder`, `fetchOrders`或 `fetchClosedOrders`方法 调用时,交易所实例会发送一个对`fetchOpenOrders`的请求,然后对比当前获取 的敞口委托单和之前缓存的委托单。ccxt库检查每个缓存的委托单,然后尝试 匹配对应的获取到的敞口委托单。当缓存的委托单不在获取到的敞口委托单中 时,ccxt库会将这个缓存的委托单标记为已完结。对fetchOrder, fetchOrders, fetchClosedOrders 的调用将返回`.orders`缓存中更新过的委托单。 - -这个逻辑简单点说就是:如果一个缓存的委托单没有在获取到的敞口委托单中出现, 那么它就不再是敞口单了,因此,就是完结单。 - -大多数情况下,`.orders`缓存的工作对用户而言是透明的。更常见的是交易所 本身提供了足够的方法。然而,由于某些交易所没有提供完整的API,`.orders` 缓存有以下已知的局限性: - -* 如果用户没有在程序运行之间保存`.orders`缓存,而且也没有在重新运行时 进行恢复,那么`.orders`缓存就会丢失。因此在下一次运行程序时对 `fetchClosedOrders`的调用,交易所实例将返回一个空的委托单列表。 没有正确的恢复缓存,交易所没有办法了解委托单是完结还是取消。 -* 如果API密钥对在多个交易所实例间共享,一个实例没法了解其他实例 创建或取消的委托单。这意味着`.orders`缓存不是共享的。因此API密钥对 不要在多个实例间共享,否则会有不可预料的副作用。 -* 如果从ccxt库的外部创建或取消委托单,那么新委托单的状态不会到达 缓存,ccxt库也没有办法在之后正确的返回。 -* 如果一个委托单的取消请求跳过了ccxt,那么ccxt库将无法从`fetchOpenOrders` 返回的敞口订单中找到该委托单,因此ccxt会将其标注为完结。这是错误的。 -* 如果`fetchOrder(id)`是模拟的,那么ccxt库没有办法返回特定的委托单。 -* 如果一个未处理的错误导致应用的崩溃,那么`.orders`缓存就不会保存以及再次 重启时恢复,缓存就会丢失。 - -注意:委托单缓存功能目前还在调整当中。 - -### 清理缓存的委托单 - purgeCachedOrders - -对于长时间运行的交易所实例,及时清理不再需要的资源是非常重要的。 因为在活跃的交易当中,`.orders`缓存会增长到非常大,ccxt库提供了 `purgeCachedOrders`/`purge_cached_orders`方法来清理缓存中较早的 非敞口委托单以释放占用的内存或其他目的,清理选择条件如下: - -```text -where (order['timestamp'] < before) && (order['status'] != 'open') -``` - -清理命令接受一个参数来声明具体的清理条件。示例代码如下: - -JavaScript: - -```text -// keep last 24 hours of history in cache -before = exchange.milliseconds () - 24 * 60 * 60 * 1000 - -// purge all closed and canceled orders "older" or issued "before" that time -exchange.purgeCachedOrders (before) -``` - -Python: - -```text -# keep last hour of history in cache -before = exchange.milliseconds () - 1 * 60 * 60 * 1000 - -# purge all closed and canceled orders "older" or issued "before" that time -exchange.purge_cached_orders (before) -``` - -PHP: - -```text -// keep last 24 hours of history in cache -$before = $exchange->milliseconds () - 24 * 60 * 60 * 1000; - -// purge all closed and canceled orders "older" or issued "before" that time -$exchange->purge_cached_orders ($before); -``` - -### 查询指定ID的委托单 - fetchOrder - -要获取具有指定ID的委托单,使用`fetchOrder` / `fetch_order`方法。即使是你 要查询一个特定ID的委托单,有些交易所也要求你提供交易对符号。 - -`fetchOrder`/`fetch_order`方法的原型如下: - -```text -if (exchange.has['fetchOrder']) { - // you can use the params argument for custom overrides - let order = await exchange.fetchOrder (id, symbol = undefined, params = {}) -} -``` - -有些交易所没有提供按ID查询委托单的访问端结点,ccxt会尽可能的提供模拟实现。 不过现在这个工作还在进行中,可能你会碰到没有实现这个模拟的交易所。 - -你可以使用额外的键/值参数对象来指定委托单类型等需要的设置。 - -下面是使用`fetchOrder`方法从一个已经验证过身份的交易所实例获取委托单信息的 示例代码。 - -JavaScript: - -```text -(async function () { - const order = await exchange.fetchOrder (id) - console.log (order) -}) () -``` - -Python 2/3 同步方式的示例代码: - -```text -if exchange.has['fetchOrder']: - order = exchange.fetch_order(id) - print(order) - -# Python 3.5+ asyncio (asynchronous) -import asyncio -import ccxt.async_support as ccxt -if exchange.has['fetchOrder']: - order = asyncio.get_event_loop().run_until_complete(exchange.fetch_order(id)) - print(order) -``` - -PHP: - -```text -if ($exchange->has['fetchOrder']) { - $order = $exchange->fetch_order ($id); - var_dump ($order); -} -``` - -### 查询全部委托单 - fetchOrders - -使用`fetchOrders`方法查询交易所的全部委托单,方法原型如下; - -```text -if (exchange.has['fetchOrders']) - exchange.fetchOrders (symbol = undefined, since = undefined, limit = undefined, params = {}) -``` - -有些交易所没有查询全部委托单的访问端结点,ccxt库会尝试尽可能的模拟实现。 不过到目前为止这一工作还在进展当中,因此你可能会碰到不支持此功能的交易所。 - -### 查询全部敞口委托单 - fetchOpenOrders - -使用`fetchOpenOrders`方法查询交易所的所有敞口委托单,方法原型如下: - -```text -if (exchange.has['fetchOpenOrders']) - exchange.fetchOpenOrders (symbol = undefined, since = undefined, limit = undefined, params = {}) -``` - -### 查询全部已完结委托单 - fetchClosedOrders - -使用交易所实例的`fetchClosedOrders`方法来查询所有已完结的委托单, 其方法原型如下: - -```text -if (exchange.has['fetchClosedOrders']) - exchange.fetchClosedOrders (symbol = undefined, since = undefined, limit = undefined, params = {}) -``` - -不要把已完结委托单和交易搞混了!一个完结的委托单可能会对应多个交易! 因此,已完结委托单和交易并不是一回事。总的来说,委托单根本不存在手续费 ,但是每个用户交易的确有手续费、成本及其他属性。然而,许多交易所 也会把交易的这些属性传递给委托单。 - -有些交易所没有提供查询全部的已完结委托单的访问端结点,ccxt库会尽可能 尝试模拟实现。不过目前这一工作还在进行中,因此你可能会碰到不支持此 功能的交易所类。 - -### 委托单数据结构 - -ccxt统一API中绝大多数返回委托单的方法,通常会输出如下的委托单数据结构: - -```text -{ - 'id': '12345-67890:09876/54321', // string - 'datetime': '2017-08-17 12:42:48.000', // ISO8601 datetime of 'timestamp' with milliseconds - 'timestamp': 1502962946216, // order placing/opening Unix timestamp in milliseconds - 'lastTradeTimestamp': 1502962956216, // Unix timestamp of the most recent trade on this order - 'status': 'open', // 'open', 'closed', 'canceled' - 'symbol': 'ETH/BTC', // symbol - 'type': 'limit', // 'market', 'limit' - 'side': 'buy', // 'buy', 'sell' - 'price': 0.06917684, // float price in quote currency - 'amount': 1.5, // ordered amount of base currency - 'filled': 1.1, // filled amount of base currency - 'remaining': 0.4, // remaining amount to fill - 'cost': 0.076094524, // 'filled' * 'price' (filling price used where available) - 'trades': [ ... ], // a list of order trades/executions - 'fee': { // fee info, if available - 'currency': 'BTC', // which currency the fee is (usually quote) - 'cost': 0.0009, // the fee amount in that currency - 'rate': 0.002, // the fee rate (if available) - }, - 'info': { ... }, // the original unparsed order structure as is -} -``` - -补充说明如下: - -* fee:手续费信息这部分的工作还在进行中,取决于交易所提供的接口,这部分信息可能不完整甚至完全没有。 -* fee.currency:手续费货币可能与所交易的货币都不一样。例如,一个ETH/BTC的委托单可能使用USD支付手续费 -* lastTradeTimestamp:最后交易时间戳表示该委托单最后一次交易的时间。在有些情况下, 这个字段可能没有值或者是undefined/None/null,例如交易所不支持,或者委托单还是敞口状态。 -* status:委托单状态的优先级高于最后交易时间戳 -* cost:委托单花费 = filled \* price ,表示委托单的总花费,cost字段是处于方便目的而提供, 值可以根据其他字段推导出来 - -### 委托下单 - -使用ccxt库委托下单需要提供以下信息: - -* symbol:希望交易的市场对应的交易对符号,例如 BTC/USD, ZEC/ETH, DOGE/DASH, 等等。 请确保所制定的交易对符号在目标交易所存在并且可以交易。 -* side:委托单的交易方向,买入还是卖出。当你下买单时,给出报价货币并将收到基准货币。 例如,买入BTC/USD意味着你将支出美元并收到比特币。当你卖出BTC/USD时则是相反的, 你将支出比特币并收到美元。 -* type:委托单类型,ccxt库目前仅仅统一了市价单和限价单的API -* amount:你希望交易的数量。这通常指的是交易对符号中的基准货币的数量,虽然也有些 交易所会要求提供报价货币的数量,还有一些会根据委托单的方向而要求分别提供基准货币 或报价货币的数量。 -* price:你希望为交易支付的报价货币的数量,仅限于限价单 - -使用ccxt统一API下市价单或限价单的成功调用将返回如下的数据结构: - -```text -{ - 'id': 'string', // order id - 'info': { ... }, // decoded original JSON response from the exchange as is -} -``` - -有些交易所只允许限价委托单,请参考交易所的文档获取详细信息。 - -### 市价委托 - createMarketSellOrder/createMarketBuyOrder - -市价委托单也称为现价委托单、即时委托单或市价单。市价委托单 会立即执行。交易所的撮合引擎使用委托账本栈顶部的一个或多个 委托单来完成市价委托单。 - -交易所会用当时有效的最优价格来完成你的市价单。但是这并不保证 会按照你下单时看到的价格来执行交易,执行价格可能会有微小的变化, 这也称为价格滑点(price slippage),引起滑点的原因可能网络延迟、 交易所访问量过大、价格波动等。下市价委托单时,你不需要指定 委托单的价格。 - -使用ccxt统一APi中的`createMarketSellOrder`方法下市价卖单,或者使用 `createMarketBuyOrder`方法下市价买单。示例代码如下: - -```text -// camelCaseNotation -exchange.createMarketSellOrder (symbol, amount[, params]) -exchange.createMarketBuyOrder (symbol, amount[, params]) - -// underscore_notation -exchange.create_market_sell_order (symbol, amount[, params]) -exchange.create_market_buy_order (symbol, amount[, params]) -``` - -也可以使用更通用的`createOrder`下买单或买单,例如: - -```text -// using general createOrder, type = 'market' and side = 'buy' or 'sell' -exchange.createOrder (symbol, 'market', 'sell', amount, ...) -exchange.create_order (symbol, 'market', 'buy', amount, ...) -``` - -注意,有些交易所不接受市价委托单(只允许限价单)。为了用程序检测 一个交易所是否支持市价委托单,你可以使用交易所的`.has['createMarketOrder']` 属性。示例代码如下。 - -JavaScript: - -```text -if (exchange.has['createMarketOrder']) { - ... -} -``` - -Python: - -```text -if exchange.has['createMarketOrder']: - ... -``` - -PHP: - -```text -if ($exchange->has['createMarketOrder']) { - ... -} -``` - -### 市价买入委托的特殊情况 - createMarketBuyOrderRequiresPrice - -总的说来,当市价委托买入或卖出时,用户只需要指定要买入或卖出的基准货币 的数量。但是然而,有些交易所的市价买入委托单处理采用了不同的方式来计算 委托单价值。 - -假设你在交易`BTC/USD`,目前的BTC市场价格是超过9000 USD。要按市价买入或 卖出,你可以指定数量为 2 BTC,取决于你的委托方向,成交结果将是你的账户 增加或减少18000 USD左右。 - -但是有些交易所要求按报价货币指定委托单的总价!这背后的逻辑其实很简单, 不是说我要买入或卖出多少基准货币,而是”我想消费多少报价货币“。 - -在这些交易所进行市价买入委托,你不能将委托单的数量指定为 2 BTC,而是 应当指定委托单的总价,在这个例子中,也就是 18000 USD。采用这种方式处理 市价委托单的交易所,有一个选项`createMarketBuyOrderRequiresPrice`,你 可以用它以两种方式指定市价买入委托单的总花费: - -第一种是默认的,如果你同时设置了委托数量和价格,那么在ccxt内部将会 简单地按照这个公式`(cost = amount * price)`计算出委托单总价格,得到 的总花费就会设置为该市价委托单的报价货币总花费,也就是USD总额。示例 代码如下: - -```text -// this example is oversimplified and doesn't show all the code that is -// required to handle the errors and exchange metadata properly -// it shows just the concept of placing a market buy order - -const exchange = new ccxt.cex ({ - 'apiKey': YOUR_API_KEY, - 'secret': 'YOUR_SECRET', - 'enableRateLimit': true, - // 'options': { - // 'createMarketBuyOrderRequiresPrice': true, // default - // }, -}) - -;(async () => { - - // when `createMarketBuyOrderRequiresPrice` is true, we can pass the price - // so that the total cost of the order would be calculated inside the library - // by multiplying the amount over price (amount * price) - - const symbol = 'BTC/USD' - const amount = 2 // BTC - const price = 9000 // USD - // cost = amount * price = 2 * 9000 = 18000 (USD) - - // note that we don't use createMarketBuyOrder here, instead we use createOrder - // createMarketBuyOrder will omit the price and will not work when - // exchange.options['createMarketBuyOrderRequiresPrice'] = true - const order = await exchange.createOrder (symbol, 'market', 'buy', amount, price) - - console.log (order) -}) -``` - -如果希望自己指定委托单的总花费,那么可以使用第二种方式。这需要先 关闭`createMarketBuyOrderRequiresPrice`选项,然后进行设置。示例代码 如下: - -```text -const exchange = new ccxt.cex ({ - 'apiKey': YOUR_API_KEY, - 'secret': 'YOUR_SECRET', - 'enableRateLimit': true, - 'options': { - 'createMarketBuyOrderRequiresPrice': false, // switch off - }, -}) - -// or, to switch it off later, after the exchange instantiation, you can do -exchange.options['createMarketBuyOrderRequiresPrice'] = false - -;(async () => { - - // when `createMarketBuyOrderRequiresPrice` is true, we can pass the price - // so that the total cost of the order would be calculated inside the library - // by multiplying the amount over price (amount * price) - - const symbol = 'BTC/USD' - const amount = 2 // BTC - const price = 9000 // USD - cost = amount * price // ← instead of the amount cost goes ↓ here - const order = await exchange.createMarketBuyOrder (symbol, cost) - console.log (order) -}) -``` - -进一步阅读请参考: - -* [https://github.com/ccxt/ccxt/issues/564\#issuecomment-347458566](https://github.com/ccxt/ccxt/issues/564#issuecomment-347458566) -* [https://github.com/ccxt/ccxt/issues/4914\#issuecomment-478199357](https://github.com/ccxt/ccxt/issues/4914#issuecomment-478199357) -* [https://github.com/ccxt/ccxt/issues/4799\#issuecomment-470966769](https://github.com/ccxt/ccxt/issues/4799#issuecomment-470966769) -* [https://github.com/ccxt/ccxt/issues/5197\#issuecomment-496270785](https://github.com/ccxt/ccxt/issues/5197#issuecomment-496270785) - -### 用限价单模拟市价单 - -用限价单来模拟市价单也是可能的。 - -警告:由于高波动性,这个方法存在风险,在使用之前请务必了解 清楚! - -大多数时候,市价买单可以使用一个设置极低价格的限价单来模拟- 当交易所 检测到你在以非常低的价格卖出时,会自动将其设置为taker order,它会 自动提供委托账本中的最优买方价格。这实际上和下市价卖单的效果一样。 因此市价委托单可以使用限价委托单来模拟。 - -反方向也是一样的 - 市价买入委托可以使用一个价格非常高的限价买入 委托来模拟。大多数交易所也会使用最优价格来完成你的委托单,也就是市价。 - -然而,你不能完全依赖这样的模拟,记得先用少量资金进行测试!你可以 在交易所的web页面验证逻辑。你可以在指定的限价卖出少量(可承担的损失), 然后在交易历史中检查实际的执行价格。 - -### 限价委托 - createLimitBuyOrder/createLimitSellOrder - -限价委托单也称为限价单。有些交易所只接受限价委托单。 限价委托单需要在提交委托单时指定价格(单位费率)。 只有在市场价格达到期望的价位时,交易所才会完成限价 委托单。 - -使用`createLimitBuyOrder`委托限价买入,或者使用`createLimitSellOrder` 委托限价卖出。示例代码如下: - -```text -// camelCaseStyle -exchange.createLimitBuyOrder (symbol, amount, price[, params]) -exchange.createLimitSellOrder (symbol, amount, price[, params]) - -// underscore_style -exchange.create_limit_buy_order (symbol, amount, price[, params]) -exchange.create_limit_sell_order (symbol, amount, price[, params]) -``` - -### 委托单的自定义参数 - -有些交易所允许你指定委托单的可选参数。在调用ccxt统一API时, 你可以使用一个关联数组传入额外的参数。所有的自定义参数都是 交易所相关的,当然彼此也是不可以互换的,不要期望一个交易所 的自定义参数可以用于另一个交易所。 - -示例代码如下。 - -JavaScript: - -```text -// use a custom order type -bitfinex.createLimitSellOrder ('BTC/USD', 1, 10, { 'type': 'trailing-stop' }) -``` - -Python: - -```text -# add a custom order flag -kraken.create_market_buy_order('BTC/USD', 1, {'trading_agreement': 'agree'}) -``` - -PHP: - -```text -// add custom user id to your order -$hitbtc->create_order ('BTC/USD', 'limit', 'buy', 1, 3000, array ('clientOrderId' => '123')) -``` - - - -### 其他类型的委托单 - -委托单的类型可以是限价或市价,如果你要限价止损委托类型,可以使用 改写默认参数值,具体参考: [https://github.com/ccxt/ccxt/wiki/Manual\#overriding-unified-api-params](https://github.com/ccxt/ccxt/wiki/Manual#overriding-unified-api-params). - -下面的代码展示了如何改写委托单类型,然而,你必须阅读交易所的 文档以了解应该使用什么参数以及如何正确设定参数值。限价委托或 市价委托之外的其他类型目前在ccxt中还没有统一的API,只能参考如下 代码改写默认的参数。 - -```text -const symbol = 'ETH/BTC' -const type = 'limit' // or 'market', other types aren't unified yet -const side = 'sell' -const amount = 123.45 // your amount -const price = 54.321 // your price -// overrides -const params = { - 'stopPrice': 123.45, // your stop price - 'type': 'stopLimit', -} -const order = await exchange.createOrder (symbol, type, side, amount, price, params) - -symbol = 'ETH/BTC' -type = 'limit' # or 'market', other types aren't unified yet -side = 'sell' -amount = 123.45 # your amount -price = 54.321 # your price -# overrides -params = { - 'stopPrice': 123.45, # your stop price - 'type': 'stopLimit', -} -order = exchange.create_order(symbol, type, side, amount, price, params) - -$symbol = 'ETH/BTC'; -$type = 'limit'; // or 'market', other types aren't unified yet -$side = 'sell'; -$amount = 123.45; // your amount -$price = 54.321; // your price -// overrides -$params = { - 'stopPrice': 123.45, // your stop price - 'type': 'stopLimit', -} -$order = $exchange->create_order ($symbol, $type, $side, $amount, $price, $params); -``` - -### 取消委托单 - cancelOrder - -要取消已有的委托单,可以使用`cancelOrder (id, symbol, params)` / `cancel_order (id, symbol, params)`方法。 注意,即使指定了要取消的委托单ID,有些交易所还是要求传入第二个参数指定交易对符号。 - -`cancelOrder`调用示例代码如下。 - -JavaScript: - -```text -exchange.cancelOrder ('1234567890') // replace with your order id here (a string) -``` - -Python: - -```text -exchange.cancel_order ('1234567890') # replace with your order id here (a string) -``` - -PHP: - -```text -$exchange->cancel_order ('1234567890'); // replace with your order id here (a string) -``` - -#### 委托单取消异常 - -`cancelOrder()`通常仅用于敞口委托单。然而,交易所有可能在你的取消请求 之前刚好执行了委托单,因此取消请求可能击中一个已经完成的委托单。 - -取消请求也可能会抛出`NetworkError`异常,表示委托单可能没有成功取消。 后续的`cancelOrder()`调用也可能几种一个已经取消的委托单。 - -因此,`cancelOrder()`在这些情况下会抛出`OrderNotFound`异常: - -* 取消一个已经完成的委托单 -* 取消一个已经取消的委托单 - -### 委托单与交易的关系 - -交易也称为成交。每个交易都是委托单执行的结果。需要注意的是, 委托单和交易是一对多的关系:委托单的一次执行可能会产生多笔交易。 然而,当一个委托单匹配了另一个相反方向的委托单,就会生成一比较 交易。因此,当一个委托单匹配了另一个方向的多个委托单时,就会 生成多笔交易,每个配对对应一笔交易。 - -简而言之,一个委托单可以包含一笔或多笔交易。或者换句话说, 一个委托单可以通过一笔或多笔交易来成交。 - -例如,委托账本中可以包含如下的委托单(可以是任何交易符号或交易对): - -```text - | price | amount -----|---------------- - a | 1.200 | 200 - s | 1.100 | 300 - k | 0.900 | 100 -----|---------------- - b | 0.800 | 100 - i | 0.700 | 200 - d | 0.500 | 100 -``` - -上面的数字都不是真实的,这只是用于演示委托单和交易之间的关系。 - -一个卖家决定在卖出侧下一个限价卖出单,价格为0.700,数量为150: - -```text - | price | amount -----|---------------- ↓ - a | 1.200 | 200 ↓ - s | 1.100 | 300 ↓ - k | 0.900 | 100 ↓ -----|---------------- ↓ - b | 0.800 | 100 ↓ sell 150 for 0.700 - i | 0.700 | 200 -------------------- - d | 0.500 | 100 -``` - -由于新的卖出单的价格和数量覆盖超过一个买入委托单(委托单b和i), 在交易撮合引擎中很快(但不是立刻)会产生以下事件: - -委托单b可以匹配新进来的卖单,因为两者价格有交集。它们的数量 可以彼此消化,因此,买入方在0.800价格成交了100单位。买方的 卖出委托单在0.800价位部分成交了100单位。注意对于委托单的成交 部分,买方得到了比初始要求更好的价格。他要求最低价格是0.7, 但是成交价是更好的0.8。大多数传统的交易所使用最优价格来执行 委托单。 - -交易撮合引擎会为委托单b生成一笔和进来的卖出单发生的交易。这个 交易成交了整个委托单b,以及卖出单的大部分数量。每一对匹配的 委托单都会生成一笔交易,无论是部分成交还是全部成交。在这个示例 中,买方数量100可以让委托单b完全成交(完成委托单b),同时也 部分成交了卖方的委托单(它在委托账本中还是敞口的)。 - -委托单b现在是完成状态,成交数量是100,它包含了一笔和卖出单 发生的交易。卖出单目前是敞口状态,成交数量是100,它包含了 一个和委托单b发生的交易。因此到目前位置,每个订单都只有 一个成交交易。 - -进入撮合引擎的卖出委托单目前的成交数量是100,还剩下50单位 继续等待成交。 - -委托账本的中间状态现在如下所示(委托单b已经完成,因此已经不再 出现在委托账本中): - -```text - | price | amount -----|---------------- ↓ - a | 1.200 | 200 ↓ - s | 1.100 | 300 ↓ - k | 0.900 | 100 ↓ -----|---------------- ↓ sell remaining 50 for 0.700 - i | 0.700 | 200 ----------------------------- - d | 0.500 | 100 -``` - -委托单i可以匹配卖出单的剩余部分,因为两者价格相交。买入单i的数量 是200,因此可以完全吃掉卖出单的剩余数量50。委托单i可以部分成交 50单位,但是其剩余数量150还将继续在委托账本中等待撮合。不过卖出 委托单在这第二次撮合过程中可以完全成交了。 - -交易撮合引擎为委托单i生成一笔和卖出单发生的交易。这笔交易让委托单i 部分成交,让卖出单完全成交。又一次,一对匹配的委托单生成了一笔交易。 - -经过上述步骤,更新后的委托账本看起来是这样: - -```text - | price | amount -----|---------------- - a | 1.200 | 200 - s | 1.100 | 300 - k | 0.900 | 100 -----|---------------- - i | 0.700 | 150 - d | 0.500 | 100 -``` - -注意委托单b已经消失了,卖出单也不在了。所有完成的委托单都会从 委托账本中移除。部分成交的委托单i处于敞口状态,依然还呆在委托 账本中。 - -### 查询个人的历史交易 - fetchMyTrade - -ccxt库的统一API中的大部分方法会返回单个交易对象或交易对象数组。 但是,极少数交易所会一次返回全部个人交易。大多数情况下,交易所 的API会限制返回结果的数量。你不应该在一个调用中读取所有交易对象。 实际上,极少有交易所会容忍或允许这种行为。 - -要查询历史交易,用户需要分页遍历数据。分页通常隐含着使用循环 分批获取数据的意思。 - -在大多数情况下,用户需要提供至少某种类型的分页以便可以一致地获取期望的结果。 使用`fetchMyTrade`/`fetch_my_trade`方法获取个人的历史交易,其方法原型与调用的示例代码如下。 - -JavaScript: - -```text -// fetchMyTrades (symbol = undefined, since = undefined, limit = undefined, params = {}) - -if (exchange.has['fetchMyTrades']) { - const trades = await exchange.fetchMyTrades (symbol, since, limit, params) -} -``` - -Python: - -```text -# fetch_my_trades (symbol = None, since = None, limit = None, params = {}) - -if exchange.has['fetchMyTrades']: - exchange.fetch_my_trades (symbol = None, since = None, limit = None, params = {}) -``` - -PHP: - -```text -// fetch_my_trades ($symbol = null, $since = null, $limit = null, $params = array ()) - -if ($exchange->has['fetchMyTrades']) { - $trades = $exchange->fetch_my_trades ($symbol, $since, $limit, $params); -} -``` - -`fetchMyTrade`方法返回一个有序的交易对象数组,最近产生的交易排在最后。 - -### 交易的数据结构 - -在ccxt中,交易的数据结构如下: - -```text -{ - 'info': { ... }, // the original decoded JSON as is - 'id': '12345-67890:09876/54321', // string trade id - 'timestamp': 1502962946216, // Unix timestamp in milliseconds - 'datetime': '2017-08-17 12:42:48.000', // ISO8601 datetime with milliseconds - 'symbol': 'ETH/BTC', // symbol - 'order': '12345-67890:09876/54321', // string order id or undefined/None/null - 'type': 'limit', // order type, 'market', 'limit' or undefined/None/null - 'side': 'buy', // direction of the trade, 'buy' or 'sell' - 'takerOrMaker': 'taker', // string, 'taker' or 'maker' - 'price': 0.06917684, // float price in quote currency - 'amount': 1.5, // amount of base currency - 'cost': 0.10376526, // total cost (including fees), `price * amount` - 'fee': { // provided by exchange or calculated by ccxt - 'cost': 0.0015, // float - 'currency': 'ETH', // usually base currency for buys, quote currency for sells - 'rate': 0.002, // the fee rate (if available) - }, -} -``` - -补充说明如下: - -* fee:手续费部分的处理目前还在进行中,可能缺失信息甚至没有 -* fee currency:手续费货币可能不同于所交易的货币,例如,一个 ETH/BTC委托单的手续费采用USD支付 -* cost:交易总花费 = amount \* price,这是一个方便字段,可以利用其他字段计算得出。 - -### 查询指定委托单的交易 - -待整理。 - -### 获取充值地址 - fetchDepositAddress/createDepositAddress - -要将资金存入交易所,你必须先从交易所获取一个你希望存入的数字货币的 地址。大多数交易所会为用户创建并管理这些地址。有些交易所也允许用户 创建用于充值的新地址。有些交易所则要求用户为每次充值都创建新的充值 地址。 - -用于充值的地址可以使用`fetchDepositAddress`方法获取在交易所中已有的地址, 也可以使用`createDepositAddress`创建新的地址。要查看交易所支持哪个方法, 可以使用`exchange.has['fetchDepositAddress']`和`exchange.has['createDepositAddress']` 属性,这两个方法都返回一个地址结构: - -```text -fetchDepositAddress (code, params = {}) -createDepositAddress (code, params = {}) -``` - -* code:统一的货币代码,大写字符串 -* params:额外的可选参数 - -有些交易所也提供API方法来一次获取多个或全部充值地址: - -```text -fetchDepositAddresses (codes = undefined, params = {}) -``` - -取决于交易所的要求,上述调用可能需要传入货币代码数组作为第一个参数。 Depending on the exchange it may or may not require a list of unified currency codes in the first argument. `fetchDepositAddresses`方法返回一个地址对象数组。 - -### 地址的数据结构 - -`fetchDepositAddress`、`fetchDepositAddresses`和`createDepositAddress`方法返回的 地址,结构如下: - -```text -{ - 'currency': currency, // currency code - 'address': address, // address in terms of requested currency - 'tag': tag, // tag / memo / paymentId for particular currencies (XRP, XMR, ...) - 'info': response, // raw unparsed data as returned from the exchange -} -``` - -有些货币,例如 AEON, BTS, GXS, NXT, SBD, STEEM, STR, XEM, XLM, XMR, XRP, 交易所通常会要求提供一个额外的标签(tag)参数。其他货币则将标签设置为 undefined / None / null。标签可以是备注、消息或支付ID,用来附加在提现交易 上。对于上述货币来说,标签是强制性的,因为交易所需要用它来区分不同的用户账户。 - -当设置标签和地址时需要谨慎。标签不是你随便选择的字符串!你不能在标签里发送 用户消息和评论。标签字段的目的是正确定位你的钱包,因此必须是正确的。你应该 只使用从交易所收到的标签,否则你的交易可能永远也不会到达目标地址。 - -### 提现 - withdraw - -使用交易所实例的`withdraw`方法从交易所提现。示例代码如下。 - -JavaScript: - -```text -exchange.withdraw (code, amount, address, tag = undefined, params = {}) -``` - -Python: - -```text -exchange.withdraw(code, amount, address, tag=None, params={}) -``` - -PHP: - -```text -$exchange->withdraw ($code, $amount, $address, $tag = null, $params = array ()) -``` - -`code`参数表示货币代码(通常是三位大写字幕,但是不同情况下可能有所差异)。 - -`withdraw`方法返回一个字典,其中的提现ID字段值通常是链上交易的ID,或者 是交易所内部的提现请求ID。`withdraw`的返回值看起来像这样: - -```text -{ - 'info' { ... }, // unparsed reply from the exchange, as is - 'id': '12345567890', // string withdrawal id, if any -} -``` - -有些交易所采用双因子认证的手段要求每一笔提现都进行人工确认。为了放行 你的提现请求,通常你不得不点击交易所发给你的邮件中的秘密链接,或者 在交易所网站上输入一个验证码,以便交易所确认提现交易是安全的。 - -在有些情况下,你也可以使用提现ID在稍后检查提现状态(是否成功)并 提交双因子确认码,这需要参考交易所的文档获取详细信息。 - -### 链上交易数据结构 - -ccxt库中,链上交易(Transaction)的数据结构如下: - -```text -{ - 'info': { ... }, // the JSON response from the exchange as is - 'id': '123456', // exchange-specific transaction id, string - 'txid': '0x68bfb29821c50ca35ef3762f887fd3211e4405aba1a94e448a4f218b850358f0', - 'timestamp': 1534081184515, // timestamp in milliseconds - 'datetime': '2018-08-12T13:39:44.515Z', // ISO8601 string of the timestamp - 'addressFrom': '0x38b1F8644ED1Dbd5DcAedb3610301Bf5fa640D6f', // sender - 'address': '0x02b0a9b7b4cDe774af0f8e47cb4f1c2ccdEa0806', // "from" or "to" - 'addressTo': '0x304C68D441EF7EB0E2c056E836E8293BD28F8129', // receiver - 'tagFrom', '0xabcdef', // "tag" or "memo" or "payment_id" associated with the sender - 'tag': '0xabcdef' // "tag" or "memo" or "payment_id" associated with the address - 'tagTo': '0xhijgklmn', // "tag" or "memo" or "payment_id" associated with the receiver - 'type': 'deposit', // or 'withdrawal', string - 'amount': 1.2345, // float (does not include the fee) - 'currency': 'ETH', // a common unified currency code, string - 'status': 'pending', // 'ok', 'failed', 'canceled', string - 'updated': undefined, // UTC timestamp of most recent status change in ms - 'comment': 'a comment or message defined by the user if any', - 'fee': { // the entire fee structure may be undefined - 'currency': 'ETH', // a unified fee currency code - 'cost': 0.1234, // float - 'rate': undefined, // approximately, fee['cost'] / amount, float - }, -} -``` - -补充说明: - -* 如果交易所没有设置交易的方向(买入/卖出), addressFrom 或 addressTo 的值可能为undefined/None/null -* address字段的含义是交易所相关的。有些情况下该字段的值表示发送方的地址,有时则可能表示接收方的地址。 -* update字段表示最近的资金操作的状态变化,以毫秒计算的UTC时间戳。 -* 取决于交易所的支持与否,fee字段的内容可能缺失 -* comment字段的值可能是undefined/None/null,否则表示用户创建链上交易时传入的消息或备注 -* 处理标签(tag)和地址(address)时需要谨慎,标签不是用户任意指定的字符串,不能在 标签中发送用户消息和评论。标签的目的是正确定位你的钱包。因此应当遵循交易所的要求。 - -### 查询充值记录 - fetchDeposits - -使用ccxt统一API的`fetchDeposits`方法查询充值记录。示例代码如下。 - -JavaScript: - -```text -// fetchDeposits (code = undefined, since = undefined, limit = undefined, params = {}) - -if (exchange.has['fetchDeposits']) { - const deposits = await exchange.fetchDeposits (code, since, limit, params) -} else { - throw new Error (exchange.id + ' does not have the fetchDeposits method') -} -``` - -Python: - -```text -# fetch_deposits(code = None, since = None, limit = None, params = {}) - -if exchange.has['fetchDeposits']: - deposits = exchange.fetch_deposits(code, since, limit, params) -else: - raise Exception (exchange.id + ' does not have the fetch_deposits method') -``` - -PHP: - -```text -// fetch_deposits ($code = null, $since = null, $limit = null, $params = {}) - -if ($exchange->has['fetchDeposits']) { - $deposits = $exchange->fetch_deposits ($code, $since, $limit, $params); -} else { - throw new Exception ($exchange->id . ' does not have the fetch_deposits method'); -} -``` - -### 查询提现记录 - fetchWithdrawals - -使用ccxt统一API的`fetchWithdrawals`方法查询提现记录。示例代码如下。 - -JavaScript: - -```text -// fetchWithdrawals (code = undefined, since = undefined, limit = undefined, params = {}) - -if (exchange.has['fetchWithdrawals']) { - const withdrawals = await exchange.fetchWithdrawals (code, since, limit, params) -} else { - throw new Error (exchange.id + ' does not have the fetchWithdrawals method') -} -``` - -Python: - -```text -# fetch_withdrawals(code = None, since = None, limit = None, params = {}) - -if exchange.has['fetchWithdrawals']: - withdrawals = exchange.fetch_withdrawals(code, since, limit, params) -else: - raise Exception (exchange.id + ' does not have the fetch_withdrawals method') -``` - -PHP: - -```text -// fetch_withdrawals ($code = null, $since = null, $limit = null, $params = {}) - -if ($exchange->has['fetchWithdrawals']) { - $withdrawals = $exchange->fetch_withdrawals ($code, $since, $limit, $params); -} else { - throw new Exception ($exchange->id . ' does not have the fetch_withdrawals method'); -} -``` - -### 查询链上交易 - fetchTransactions - -使用ccxt统一API的`fetchTransactions`方法查询链上交易。示例代码如下。 - -JavaScript: - -```text -// fetchTransactions (code = undefined, since = undefined, limit = undefined, params = {}) - -if (exchange.has['fetchTransactions']) { - const transactions = await exchange.fetchTransactions (code, since, limit, params) -} else { - throw new Error (exchange.id + ' does not have the fetchTransactions method') -} -``` - -Python: - -```text -# fetch_transactions(code = None, since = None, limit = None, params = {}) - -if exchange.has['fetchTransactions']: - transactions = exchange.fetch_transactions(code, since, limit, params) -else: - raise Exception (exchange.id + ' does not have the fetch_transactions method') -``` - -PHP: - -```text -// fetch_transactions ($code = null, $since = null, $limit = null, $params = {}) - -if ($exchange->has['fetchTransactions']) { - $transactions = $exchange->fetch_transactions ($code, $since, $limit, $params); -} else { - throw new Exception ($exchange->id . ' does not have the fetch_transactions method'); -} -``` - -### 查询手续费 - fetchFees - -手续费通常可以分为以下两类: - -* 交易手续费:向交易所支付的交易手续费,通常按成交量的百分点计取 -* 资金操作手续费:在充值和提现时向交易所支付的费用,包含链上交易费用 - -因为手续费结构会依赖于用户交易的货币的实际交易量,手续费是与账户相关的。 ccxt的统一API中,提供了以下方法用于账户相关的手续费处理: - -* fetchFees \(params = {}\) -* fetchTradingFees \(params = {}\) -* fetchFundingFees \(params = {}\) - -手续费方法将返回一个统一的手续费结构,该结构在整个ccxt库中保持统一, 通常采用交易市场或货币为索引键。手续费结构如下: - -```text -{ - 'type': takerOrMaker, - 'currency': 'BTC', // the unified fee currency code - 'rate': percentage, // the fee rate, 0.05% = 0.0005, 1% = 0.01, ... - 'cost': feePaid, // the fee cost (amount * fee rate) -} -``` - -手续费这一部分的代码目前还在进行中,因此其中有些方法和属性在某些交易所 可能还会缺失。 - -不要使用已经废弃的`.fees`属性。 - -### 查询交易所状态 - fetchStatus - -交易所状态描述交易所API的最近可用情况。交易所状态信息可能是在交易所 实现类中硬编码的,也可能是从交易所API直接获取的。 - -可以使用ccxt的统一API中的`fetchStatus`方法来查询交易所状态。其返回结果为 以下三者之一: - -* 交易所实现类硬编码的信息,例如,如果交易所宕机的话 -* 使用交易所对象的ping或fetchTime方法检查交易所API是否存活 -* 使用交易所提供的API获取状态信息 - -`fetchStatus`方法原型如下: - -```text -fetchStatus(params = {}) -``` - -方法返回的状态数据结构如下: - -```text -{ - 'status': 'ok', // 'ok', 'shutdown', 'error', 'maintenance' - 'updated': undefined, // integer, last updated timestamp in milliseconds if updated via the API - 'eta': undefined, // when the maintenance or outage is expected to end - 'url': undefined, // a link to a GitHub issue or to an exchange post on the subject -} -``` - -说明: - -* 'ok'表示交易所API可用 -* 'shutdown'表示交易所停机,这时`updated`字段的值就表示停机时间 -* 'error'表示API不兼容 -* 'maintenance'表示常规维护,`eta`字段的值表示预计恢复时间。 - -### 预算交易费 - calculateFee - -交易费是市场的属性。通常交易费使用`fetchMarkets`调用载入。但有时 交易所会使用不同的访问端结点提供交易费服务。 - -ccxt的统一API中的`calculateFee`方法可以预算交易费。警告!这个方法 是实验性的,不稳定而且可能在有些情况下的结果不正确。请谨慎使用。 实际的手续费可能和`calculateFee`返回的结果不一致,因此不要依赖于 预算值,因为市场条件变化很快,很难预料你的委托单是会成为maker还是taker。 方法原型如下: - -```text -calculateFee (symbol, type, side, amount, price, takerOrMaker = 'taker', params = {}) -``` - -`calculateFee`方法将返回统一的手续费结构。 - -应当使用交易所的`.markets`属性方位交易费率,例如: - -```text -exchange.markets['ETH/BTC']['taker'] // taker fee rate for ETH/BTC -exchange.markets['BTC/USD']['maker'] // maker fee rate for BTC/USD -``` - -当你为交易所提供流动性时,支付的是maker手续费。maker手续费通常低于 taker手续费。当你从交易所拿走流动性时,则需要支付taker手续费。 - -### 资金操作费 - currencies - -资金操作费是货币的属性。 - -可以使用交易所的`.currencies`属性访问资金操作费率。这方面目前在ccxt 中还没有统一,未来可能会有变化。 - -```text -exchange.currencies['ETH']['fee'] // tx/withdrawal fee rate for ETH -exchange.currencies['BTC']['fee'] // tx/withdrawal fee rate for BTC -``` - -### 查询账本 - fetchLedger - -有些交易所提供额外的访问点用于查询整合的账本历史。账本 就是变化的历史,记录改变用户余额的操作,包括充值和提现等。 - -使用ccxt统一API中的`fetchLedger`方法查询账本,原型如下: - -```text -async fetchLedger (code = undefined, since = undefined, limit = undefined, params = {}) -``` - -有些交易所不允许一次查询所有的账本条目,需要在调用`fetchLedger` 方法时指定code参数。 - -### 账本记录结构 - -账本记录结构如下: - -```text -{ - 'id': 'hqfl-f125f9l2c9', // string id of the ledger entry, e.g. an order id - 'direction': 'out', // or 'in' - 'account': '06d4ab58-dfcd-468a', // string id of the account if any - 'referenceId': 'bf7a-d4441fb3fd31', // string id of the trade, transaction, etc... - 'referenceAccount': '3146-4286-bb71', // string id of the opposite account (if any) - 'type': 'trade', // string, reference type, see below - 'currency': 'BTC', // string, unified currency code, 'ETH', 'USDT'... - 'amount': 123.45, // absolute number, float (does not include the fee) - 'timestamp': 1544582941735, // milliseconds since epoch time in UTC - 'datetime': "2018-12-12T02:49:01.735Z", // string of timestamp, ISO8601 - 'before': 0, // amount of currency on balance before - 'after': 0, // amount of currency on balance after - 'status': 'ok', // 'ok, 'pending', 'canceled' - 'fee': { // object or or undefined - 'cost': 54.321, // absolute number on top of the amount - 'currency': 'ETH', // string, unified currency code, 'ETH', 'USDT'... - }, - 'info': { ... }, // raw ledger entry as is from the exchange -} -``` - -补充说明: - -账本记录的类型就是与之关联的操作类型。如果amout来自委托单,那么关联的 交易类型就是`trade`,同时`referenceId`字段的值记录交易ID。如果amount 来自提现操作,那么这条记录关联的就是链上交易。可能值如下: - -* trade -* transaction -* fee -* rebate -* cashback -* referral -* transfer -* whatever -* ... - -`referenceId`字段表示引用ID,记录对应事件的ID。 - -`status`字段描述账本变化是成功(ok)、待定(pending)还是取消(ok)等状态。 大多数情况下都应该是ok。 - -`type`字段可以关联常规交易、链上交易(充值或提现操作)或交易所内部转账。 如果账本记录关联的是内部转账,那么`account`字段将包含该记录要修改的账户ID, `referenceAccount`字段的值则是相对方向的账户ID。 - -### 修改Nonce值 - seconds/milliseconds/microseconds - -默认的nonce是以秒计的32位unix时间戳。如果你希望进行更频繁的 私有请求,应该使用毫秒计的nonce来改写,否则最快才能每秒发一个请求。 当你达到交易所限流值时,大多数交易所都会进行节流,请参考具体 交易所的API文档。 - -要重设nonce值的话,更简单的方式是再创建一个用于访问私有api 的密钥对。 - -有些情况下你没办法创建新的密钥,比如没有权限或者其他原因。 这时也有办法改写nonce值,可以使用ccxt统一api中市场基类的以下方法: - -* seconds \(\): 返回秒计的unix时间戳 -* milliseconds \(\): 返回毫秒计的unix时间戳 -* microseconds \(\): 返回微秒计的unix时间戳 - -有的交易所在API文档中搞混了毫秒和微秒,原谅他们吧。你可以使用 上面的这些方法重设nocne值。示例代码如下。 - -JavaScript: - -```text -// A: custom nonce redefined in constructor parameters -let nonce = 1 -let kraken1 = new ccxt.kraken ({ nonce: () => nonce++ }) - -// B: nonce redefined explicitly -let kraken2 = new ccxt.kraken () -kraken2.nonce = function () { return nonce++ } // uses same nonce as kraken1 - -// C: milliseconds nonce -let kraken3 = new ccxt.kraken ({ - nonce: function () { return this.milliseconds () }, -}) - -// D: newer ES syntax -let kraken4 = new ccxt.kraken ({ - nonce () { return this.milliseconds () }, -}) -``` - -Python: - -```text -# A: the shortest -gdax = ccxt.gdax({'nonce': ccxt.Exchange.milliseconds}) - -# B: custom nonce -class MyKraken(ccxt.kraken): - n = 1 - def nonce(self): - return self.n += 1 - -# C: milliseconds nonce -class MyBitfinex(ccxt.bitfinex): - def nonce(self): - return self.milliseconds() - -# D: milliseconds nonce inline -hitbtc = ccxt.hitbtc({ - 'nonce': lambda: int(time.time() * 1000) -}) - -# E: milliseconds nonce -acx = ccxt.acx({'nonce': lambda: ccxt.Exchange.milliseconds()}) -``` - -PHP: - -```text -// A: custom nonce value -class MyOKCoinUSD extends \ccxt\okcoinusd { - public function __construct ($options = array ()) { - parent::__construct (array_merge (array ('i' => 1), $options)); - } - public function nonce () { - return $this->i++; - } -} - -// B: milliseconds nonce -class MyZaif extends \ccxt\zaif { - public function __construct ($options = array ()) { - parent::__construct (array_merge (array ('i' => 1), $options)); - } - public function nonce () { - return $this->milliseconds (); - } -} -``` - -## **CCXT错误处理** - -### 错误处理概述 - try/catch - -ccxt采用各种语言中原生的异常机制进行错误处理。 - -要处理错误,你需要使用try代码块来保护调用ccxt统一API的代码, 然后使用catch代码块捕捉异常。示例代码如下。 - -JavaScript: - -```text -// try to call a unified method -try { - const response = await exchange.fetchTicker ('ETH/BTC') - console.log (response) -} catch (e) { - // if the exception is thrown, it is "caught" and can be handled here - // the handling reaction depends on the type of the exception - // and on the purpose or business logic of your application - if (e instanceof ccxt.NetworkError) { - console.log (exchange.id, 'fetchTicker failed due to a network error:', e.message) - // retry or whatever - // ... - } else if (e instanceof ccxt.ExchangeError) { - console.log (exchange.id, 'fetchTicker failed due to exchange error:', e.message) - // retry or whatever - // ... - } else { - console.log (exchange.id, 'fetchTicker failed with:', e.message) - // retry or whatever - // ... - } -} -``` - -Python: - -```text -try: - response = await exchange.fetch_order_book('ETH/BTC') - print(response) -except ccxt.NetworkError as e: - print(exchange.id, 'fetch_order_book failed due to a network error:', str(e)) - # retry or whatever - # ... -except ccxt.ExchangeError as e: - print(exchange.id, 'fetch_order_book failed due to exchange error:', str(e)) - # retry or whatever - # ... -except Exception as e: - print(exchange.id, 'fetch_order_book failed with:', str(e)) - # retry or whatever - # ... -``` - -PHP: - -```text -// try to call a unified method -try { - $response = $exchange->fetch_trades('ETH/BTC'); - print_r($response); -} catch (\ccxt\NetworkError $e) { - echo $exchange->id . ' fetch_trades failed due to a network error: ' . $e->getMessage () . "\n"; - // retry or whatever - // ... -} catch (\ccxt\ExchangeError $e) { - echo $exchange->id . ' fetch_trades failed due to exchange error: ' . $e->getMessage () . "\n"; - // retry or whatever - // ... -} catch (Exception $e) { - echo $exchange->id . ' fetch_trades failed with: ' . $e->getMessage () . "\n"; - // retry or whatever - // ... -} -``` - -### 异常类的体系 - -ccxt中所有的机场都派生自BaseError基类,其定义如下: - -JavaScript: - -```text -class BaseError extends Error { - constructor () { - super () - // a workaround to make `instanceof BaseError` work in ES5 - this.constructor = BaseError - this.__proto__ = BaseError.prototype - } -} -``` - -Python: - -```text -class BaseError (Exception): - pass -``` - -PHP: - -```text -class BaseError extends \Exception {} -``` - -下面是ccxt异常类的继承体系: - -```text -+ BaseError -| -+---+ ExchangeError -| | -| +---+ AuthenticationError -| | | -| | +---+ PermissionDenied -| | | -| | +---+ AccountSuspended -| | -| +---+ ArgumentsRequired -| | -| +---+ BadRequest -| | -| +---+ BadResponse -| | | -| | +---+ NullResponse -| | -| +---+ InsufficientFunds -| | -| +---+ InvalidAddress -| | | -| | +---+ AddressPending -| | -| +---+ InvalidOrder -| | | -| | +---+ OrderNotFound -| | | -| | +---+ OrderNotCached -| | | -| | +---+ CancelPending -| | | -| | +---+ OrderImmediatelyFillable -| | | -| | +---+ OrderNotFillable -| | | -| | +---+ DuplicateOrderId -| | -| +---+ NotSupported -| -+---+ NetworkError (recoverable) - | - +---+ DDoSProtection - | - +---+ ExchangeNotAvailable - | - +---+ InvalidNonce - | - +---+ RequestTimeout -``` - -`BaseError`类是各种错误的一般性描述,包括可用性错误、请求/响应错误等。 开发者至少应该捕捉这个异常,如果不需要区分具体是什么错误的话。 - -在错误体系中有两个子树,都派生自BaseError: - -* NetworkError -* ExchangeError - -`NetworkError`表示不严重的错误,某种意义上说并不是真正的错误,更可能是 临时性的不可用情况,可能原因包括交易所维护、DDoS保护和临时性访问阻断。 - -相比之下,`ExchangeError`是严重的错误 – 如果捕捉到这个错误,那么你使用 相同的输入应该都会得到同样的错误。 - -这两族错误的区别在于`NetworkError`是可恢复的,而`ExchangeError`是不可恢复的。 - -### 交易所异常 - ExchangeError - -当交易所服务器返回的JSON响应中包含了错误信息时,ccxt就会 抛出这个异常。可能的原因包括: - -* 访问端结点被交易所关闭 -* 交易所未找到指定的交易对符号 -* 请求的参数缺失 -* 参数格式不正确 -* 交易所响应含义不明确 - -其他从ExchangeError派生的异常包括: - -* NotSupported:如果交易所的API不支持所访问的端结点,就会抛出这个异常 -* AuthenticationError:如果API需要身份验证而请求中没有提供或者提供的不正确,就会抛出这个异常 -* PermissionDenied:如果请求中指定的api key没有足够的权限,就会抛出这个异常 -* InsufficientFunds:如果账户余额不足以执行当前请求的操作,例如委托下单,就会抛出这个异常 -* InvalidAddress:如果请求中的地址格式不正确,就会抛出这个异常 -* InvalidOrder:这是统一API中order系列方法异常类的基类 -* OrderNotFound:试图查询或取消不存在的委托单时,就会抛出这个异常 - -### 网络异常 - NetworkError - -所有网络相关的错误通常是可恢复的,网络故障、流量阻塞、服务器不可用这些 通常都是时间相关的,稍后重新请求通常就能解决问题。 - -#### DDoS保护异常 - DDoSProtection - -当有以下情况之一发生时,就会抛出这个异常: - -* 当Cloudflare或Incapsula限流时 -* 当交易所限流时 - -除了默认的错误处理,ccxt库会使用以下关键字搜索交易所的响应内容: - -* cloudflare -* incapsula -* overload -* ddos - -#### 请求超时异常 - RequestTimeout - -当与交易所的连接失败或没有在指定时间内收到交易所响应的完整数据时, 就会抛出RequestTimeout异常。 - -因此建议采用以下方式处理这一类的异常: - -* 对于查询请求,只需要重新尝试调用即可 -* 对于 - - ```text - cancelOrder - ``` - - 请求,要求用户进行二次尝试。如果没有进行二次尝试 而是立即调用了fetchOrder, fetchOrders, fetchOpenOrders 或 fetchClosedOrders, 那么可能导致 - - ```text - .orders - ``` - - 缓存不同步。二次尝试调用 - - ```text - cancelOrder - ``` - - 可能返回 以下结果之一: - - * 成功完成,表示委托单已经正确地取消了 - * 抛出OrderNotFound异常,表示委托单要么已经在上次请求时取消, 要么已经在两次请求的间隔执行(完成或成交)。这是需要调用`fetchOrder`来 正确地更新缓存 - -* 如果 - - ```text - createOrder - ``` - - 请求抛出 - - ```text - RequestTimeout - ``` - - 异常,开发者应当: - - * 使用fetchOrders, fetchOpenOrders, fetchClosedOrders检查上个请求是否成功下单 并更新orders缓存。 - * 如果委托单不是敞口状态,那么开发者需要调用`fetchBalance`检查账户余额 是否变化。注意fetchBlanace依靠orders缓存进行余额推理,因此只能在更新 缓存后进行调用! - -#### 交易所不可用异常 - ExchangeNotAvailable - -如果在响应中检测到如下任何关键字,ccxt库会抛出ExchangeNotAvailable异常: - -* offline -* unavailable -* busy -* retry -* wait -* maintain -* maintenance -* maintenancing - -#### 无效Nonce异常 - InvalidNonce - -当你使用的Nonce比之前的请求中的nonce还要小的时候,ccxt就会抛出InvalidNoce异常。 在以下情况中会抛出这一类异常: - -* 你没有进行请求限流,或者发送太多请求 -* 你的API key没有刷新,可能在其他软件或脚本中使用了同样的api key -* 在多个交易所实例中使用相同的api密钥对 -* 系统时钟没有同步。 - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/yi-tai-fang-bu-shu-shi-yan-shi.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/yi-tai-fang-bu-shu-shi-yan-shi.md deleted file mode 100644 index 24f74327..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/yi-tai-fang-bu-shu-shi-yan-shi.md +++ /dev/null @@ -1,10 +0,0 @@ -# 以太坊部署实验室 - -{% embed url="https://cloud.tencent.com/developer/article/1182444?from=article.detail.1182404" %} - - - -{% embed url="https://ethereum.org/en/developers/local-environment/" %} - -{% embed url="https://zhuanlan.zhihu.com/p/352014442" %} - diff --git a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/zong-lan.md b/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/zong-lan.md deleted file mode 100644 index 369ab0e5..00000000 --- a/qian-xian/research-institute-development/kai-yuan-xiang-mu-yan-jiu-yuan/zong-lan.md +++ /dev/null @@ -1,158 +0,0 @@ -# 总览 - -## ArbitrageBot - -ArbitrageBot - -### Trading API - -CCXT - -[https://github.com/ccxt/ccxt](https://github.com/ccxt/ccxt) - -A JavaScript / Python / PHP cryptocurrency trading API with support for more than 120 bitcoin/altcoin exchanges - -ccxt-rest - -[https://github.com/ccxt-rest/ccxt-rest](https://github.com/ccxt-rest/ccxt-rest) - -Open Source Unified REST API of 100+ Crypto Exchange Sites \(18k+ docker pulls\) - [https://ccxt-rest.io/](https://ccxt-rest.io/) - -### Detector Bot - -Peregrine - -[https://github.com/wardbradt/peregrine](https://github.com/wardbradt/peregrine) - -Detects arbitrage opportunities across 131 cryptocurrency exchanges in 50 countries - -bitcoin-arbitrage - -opportunity detector and automated trading - -[https://github.com/maxme/bitcoin-arbitrage](https://github.com/maxme/bitcoin-arbitrage) - -cryptocurrency-arbitrage - -A cryptocurrency arbitrage opportunity calculator. Over 800 currencies and 50 markets. - -[https://github.com/manu354/cryptocurrency-arbitrage](https://github.com/manu354/cryptocurrency-arbitrage) - -binance-triangle-arbitrage - -Detect in-market cryptocurrency arbitrage - -[https://github.com/bmino/binance-triangle-arbitrage](https://github.com/bmino/binance-triangle-arbitrage) - -### Arbitrage Bot - -Blackbird - -[https://github.com/butor/blackbird](https://github.com/butor/blackbird) - -Blackbird Bitcoin Arbitrage: a long/short market-neutral strategy - -Hummingbot: a client for crypto market making - -[https://github.com/CoinAlpha/hummingbot](https://github.com/CoinAlpha/hummingbot) - -Hummingbot: a client for crypto market making - -R2 Bitcoin Arbitrager - -[https://github.com/bitrinjani/r2](https://github.com/bitrinjani/r2) - -R2 Bitcoin Arbitrager is an automatic arbitrage trading application targeting Bitcoin exchanges. - -### Trading Bot - -OctoBot - -Octobot is a powerful fully modular open-source cryptocurrency trading robot. - -[https://github.com/Drakkar-Software/OctoBot](https://github.com/Drakkar-Software/OctoBot) - -### Chinese Bot - -triangular-arbitrage - -[https://github.com/zlq4863947/triangular-arbitrage](https://github.com/zlq4863947/triangular-arbitrage) - -数字货币-三角套利机器人 - -### Tutorial - -Cryptocurrency-Trading-Bots-Python-Beginner-Advance - -[https://github.com/Roibal/Cryptocurrency-Trading-Bots-Python-Beginner-Advance](https://github.com/Roibal/Cryptocurrency-Trading-Bots-Python-Beginner-Advance) - -Guides and Instructional YouTube Videos by @BlockchainEng Joaquin Roibal focusing on crypto trading strategies such as Triangular Arbitrage, Market Making, etc. - -### Exchange Clients - -#### Binance - -[https://github.com/sammchardy/python-binance](https://github.com/sammchardy/python-binance) - -#### Huobi - -[https://github.com/HuobiRDCenter/huobi\_Python](https://github.com/HuobiRDCenter/huobi_Python) - -[https://github.com/huobiapi/Futures-Python-demo](https://github.com/huobiapi/Futures-Python-demo) - -[https://github.com/hbdmapi/hbdm\_Python](https://github.com/hbdmapi/hbdm_Python) - -#### OKCoin - -[https://github.com/gchen/okcoin\_client](https://github.com/gchen/okcoin_client) - -#### gate - -[https://github.com/gateio/gateapi-python](https://github.com/gateio/gateapi-python) - -[https://github.com/gateio/rest/tree/master/python](https://github.com/gateio/rest/tree/master/python) - -[https://github.com/gateio/WebSocket-API/tree/master/python](https://github.com/gateio/WebSocket-API/tree/master/python) - -#### zb - -[https://www.zb.com/api](https://www.zb.com/api) - -#### OKEx - -[https://github.com/okex/V3-Open-API-SDK](https://github.com/okex/V3-Open-API-SDK) - -#### bitmart - -[https://www.bitmart.com/](https://www.bitmart.com/) - -[https://github.com/volkovartem77/bitmart-api-python](https://github.com/volkovartem77/bitmart-api-python) - -[https://developer.bitmart.com/v2/en/\#introduction](https://developer.bitmart.com/v2/en/#introduction) - -#### Bitfinex - -[https://www.bitfinex.com/](https://www.bitfinex.com/) [https://github.com/bitfinexcom/bitfinex-api-py](https://github.com/bitfinexcom/bitfinex-api-py) - -#### BitMEX - -[https://github.com/BitMEX/api-connectors](https://github.com/BitMEX/api-connectors) - -[https://www.fmz.com/](https://www.fmz.com/) - -[https://github.com/chrisacheson/liquidbot](https://github.com/chrisacheson/liquidbot) - -#### HitBTC - -[https://github.com/pulkit1991/hitbtcapi](https://github.com/pulkit1991/hitbtcapi) - -### Exchange Fees - -[https://www.binance.com/cn/fee/trading](https://www.binance.com/cn/fee/trading) - -[https://www.gate.io/help/question/16563](https://www.gate.io/help/question/16563) - -[https://www.hbg.com/zh-cn/fee/](https://www.hbg.com/zh-cn/fee/) - -[https://www.okex.com/fees.html](https://www.okex.com/fees.html) - diff --git a/qian-xian/research-institute-development/suan-fa-yan-jiu-yuan.md b/qian-xian/research-institute-development/suan-fa-yan-jiu-yuan.md deleted file mode 100644 index 017d1bc8..00000000 --- a/qian-xian/research-institute-development/suan-fa-yan-jiu-yuan.md +++ /dev/null @@ -1,26 +0,0 @@ -# 玄黑 · 算法科学分院 🔭 🛰️ - -## 基础研究 - -[**三角套利策略介绍**](https://mp.weixin.qq.com/s/G5t7TyIyrH40Kl55feTDIw) **+** [**考虑交易成本的三角套利**](https://www.jianshu.com/p/e50a52312a47)\*\*\*\* - -## 专业研究 - -{% page-ref page="../../he-xin/what-is-bfm-al/" %} - -{% page-ref page="../../he-xin/what-is-bfm-al/bfm-al-ckwx.md" %} - -## 深入研究 - -{% page-ref page="../../he-xin/ruan-jian-bfm-on-python/" %} - -## 交叉研究 - -{% page-ref page="kai-yuan-xiang-mu-yan-jiu-yuan/shu-zi-huo-bi-liang-hua-xi-tong-ccxt-kuang-jia-shi-zhan-san-jiao-tao-li/" %} - -{% page-ref page="kai-yuan-xiang-mu-yan-jiu-yuan/peregrine-shi-yan-shi.md" %} - -## 高层研究 - -{% page-ref page="../../he-xin/ruan-jian-bfm-on-python/chuang-xin-wei-lai-fa-zhan.md" %} - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/README.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/README.md deleted file mode 100644 index 3bcab7f2..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# 素白 · 密斯卡托尼克大学 🏫 - -![](../../../.gitbook/assets/r43126f5d8305fcbfac32a88fd89eefc1.jpeg) - -{% page-ref page="excel-jiao-shi.md" %} - -{% page-ref page="power-bi-jiao-cheng.md" %} - -{% page-ref page="spss-jiao-cheng.md" %} - -{% page-ref page="python-shao-er-bian-cheng/" %} - -{% page-ref page="ben-di-kai-fa-huan-jing.md" %} - -{% page-ref page="wen-xian-yu-shu-ju.md" %} - -{% page-ref page="ji-chu-cai-shang-jiao-yu.md" %} - -{% page-ref page="wang-luo-an-quan-dao-hang.md" %} - -{% page-ref page="di-dai-ma-kai-fa.md" %} - -{% page-ref page="qian-duan-hou-duan.md" %} - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/ben-di-kai-fa-huan-jing.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/ben-di-kai-fa-huan-jing.md deleted file mode 100644 index 1d094bb7..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/ben-di-kai-fa-huan-jing.md +++ /dev/null @@ -1,42 +0,0 @@ -# 开发环境搭建教室 👨‍🏫 🚩 - -## 本地开发环境: - -### 软件安装 - -微软[PowerShell](https://docs.microsoft.com/zh-cn/powershell/) \| [清华的brew镜像](https://mirrors.tuna.tsinghua.edu.cn/help/homebrew/) - -[**Pycharm**](https://www.jetbrains.com/pycharm/download/#section=mac) **\|** [**Python**](https://www.python.org/downloads/) **\|** [**Anaconda**](https://www.anaconda.com/products/individual#Downloads)\*\*\*\* - -### **终端执行安装** - -```c -conda update conda -conda update anaconda -conda update anaconda-navigator -``` - -```c -pip install ccxt -``` - -```c -pip install git+https://github.com/wardbradt/peregrine -``` - -```c -pip install git+https://github.com/CongZhengithub/aioquant -``` - -### 终端测试是否成功安装 - -```c -待完成 -``` - -## 云计算开发环境: - -[**宝塔面板**](https://www.bt.cn/)**\(**[**安装教程**](https://www.bt.cn/bbs/thread-19376-1-1.html)**\)\(**[**腾讯云安装教程**](https://cloud.tencent.com/document/product/213/45550)**\) \|** [**腾讯云**](https://cloud.tencent.com/) **\|** [**阿里云**](https://www.aliyun.com/)\*\*\*\* - -千千的其它视频:[**上篇**](https://mp.weixin.qq.com/s/lVqcoBvtmyLaohz7DLtIoA) **\|** [**下篇**](https://mp.weixin.qq.com/s/6qL4redQ3lFiNvZOowpBaA) **\|** [**部署**](https://mp.weixin.qq.com/s/6bKVOqcYppqta3zRdMtvWA) **🚩 \|** [**回测**](https://mp.weixin.qq.com/s/Ju4XFDHTq7wk2wokArmKGw) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/di-dai-ma-kai-fa.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/di-dai-ma-kai-fa.md deleted file mode 100644 index 5ece0588..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/di-dai-ma-kai-fa.md +++ /dev/null @@ -1,56 +0,0 @@ -# MIS 系统开发 - -![](../../../.gitbook/assets/qq20210625-0.jpg) - -MIS \| OA \| ERP \| DRP \| HR \| CRM \| BPM \| EAM \| SCM \| PLM \| PDM \| AI \| BI \| CI - - - -{% embed url="https://www.e-builder.cn/\#/home/" %} - -{% embed url="https://www.weaver.com.cn/" %} - - - -什么是MIS,(Management Information System)管理信息系统 - -什么是OA,(Office Automation System)自动化办公系统 - - - -什么是ERP,(Enterprise Resource Planning)企业资源计划 - -什么是DRP,(Distribution Resource Plan)物流分销资源计划 - - - -什么是HR,(Human Resource Management)人力资源管理 - -什么是CRM,(Customer Relationship Management)客户关系管理 - -什么是BPM,(Business Process Management)业务流程管理 - - - -什么是EAM,(Enterprise Asset Management)企业资产管理 - -什么是SCM,(Supply Chain Management)供应链管理 - - - -什么是PLM,(Product Lifecycle Management)产品生命周期管理 - -什么是PDM,(Product Data Management)产品数据管理 - - - -什么是AI,Artificial Intelligence,人工智能 - -什么是BI,Business Intelligence,商业智能 - -什么是CI,Customer Intelligence,客户智能 - - - -TaskBuilder,[Genexus](https://www.genexus.com/en/) ([2](http://www.genexuschina.com/)) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/excel-jiao-shi.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/excel-jiao-shi.md deleted file mode 100644 index b7e105ea..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/excel-jiao-shi.md +++ /dev/null @@ -1,58 +0,0 @@ -# Excel 教室 - -## 实用极简 - -* \*\*\*\*[**初学者,零基础必备的18个Excel工作表函数,易学易懂易用**](https://zhuanlan.zhihu.com/p/341616011)\*\*\*\* - * **Left、Mid、Right ——**提取指定长度的字符 - * **Rand、Randbetween ——** 随机数 - * **Round、Roundup、Int —— 舍入取整** - * **If、Ifs ——** 条件 - * **Upper、Lower、Proper ——** 大小写 - * **Rank、Sumproduct ——** 大小排名,乘积和 - * **Sum、Sumif、Sumifs —— 求和,条件求和** -* \*\*\*\*[**excel十大常用函数排行榜,你会几个?**](https://zhuanlan.zhihu.com/p/148100320)\*\*\*\* - * SUM函数 —— 求和 - * IF函数 —— 条件 - * VLOOKUP函数 —— 查找引用 - * COUNTIF函数 —— 条件统计个数 - * LEFT、MID、RIGHT —— 文本截取 - * SUMIF函数 —— 条件求和 - * AVERAGE函数 —— 计算平均值 - * INDEX、MATCH函数 —— 引用,定位 - * ROUND函数 —— 舍入 - * COUNT、COUNTA函数 ——统计数值个数,统计非空个数 **** -* 逻辑函数 - * [IF函数 IFS函数 Choose函数](https://zhuanlan.zhihu.com/p/51366759) [**多条件逻辑函数**](https://zhuanlan.zhihu.com/p/38326242):AND、OR、IF - * [**条件求和**:SUMIF函数](https://zhuanlan.zhihu.com/p/31465442) -* 格式函数 - * [EXCEL取小数点后一位](https://zhidao.baidu.com/question/27632380.html) - * **ABS\(\)** 函数 是 **绝对值\(\)** 函数, **MAX\(\)** 函数 是 **比较大小并取其中的大者\(\)** 函数, -* 查找函数 - * 初级 - 普通公式 - * [史上最全SUMIF函数应用教程及案例解析](https://zhuanlan.zhihu.com/p/21557901) - * [LOOKUP函数最经典的五种用法](http://blog.sina.com.cn/s/blog_138899a8e0102wqwt.html) - * \*\*\*\*[**VLOOKUP函数应用教程及案例解析**](https://zhuanlan.zhihu.com/p/21558236)\*\*\*\* - * \*\*\*\*[**VLOOKUP函数按数据所处区间划分等级**](https://zhuanlan.zhihu.com/p/21329610)\*\*\*\* - * [史上最牛查找函数组合 Index+Match](https://www.sohu.com/a/334505538_825825) - * 高级 - 数组公式 - * \*\*\*\*[**INDEX+SMALL+IF+ROW函数组合使用解析**](https://blog.csdn.net/mfkpie/article/details/26883061)\*\*\*\* -* 下拉菜单 - * [Excel制作下拉菜单的3种方法(312)](https://www.bilibili.com/video/BV1QJ411H7RW?from=search&seid=18024821708073264960) - * \*\*\*\*[**Excel如何制作1级、2级和多级下拉菜单(283)**](https://www.bilibili.com/video/BV1UE411Z74D)\*\*\*\* - * \*\*\*\*[**Excel 多级下拉菜单**](https://www.bilibili.com/video/BV1Qy4y1E7o9)\*\*\*\* - -## 系统学习 - -* [惊呆小伙伴的全套EXCEL函数技能(21集)](https://www.bilibili.com/video/BV1Qt411176A?from=search&seid=15563621570772204367) -* [Excel 函数技巧大全,100个函数](https://www.bilibili.com/video/BV18T4y1P7fV?from=search&seid=15563621570772204367) -* \*\*\*\*[**超级简单数据透视表干货大全**](https://www.bilibili.com/video/BV1d4411j7ux)\*\*\*\* - -## 知名大V - -* [Excel函数公式](%20https://www.zhihu.com/people/TaoHelper_888) -* [跟李锐学Excel](https://www.zhihu.com/people/ExcelLiRui) - -## 社区论坛 - -* [club.excelhome.net](http://club.excelhome.net/) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/feng-shui-xuan-xue-ru-shi-dao-zhan-bu-ta-luo-xi-yin-li-ling-xing-xiu-hang.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/feng-shui-xuan-xue-ru-shi-dao-zhan-bu-ta-luo-xi-yin-li-ling-xing-xiu-hang.md deleted file mode 100644 index 0acf006a..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/feng-shui-xuan-xue-ru-shi-dao-zhan-bu-ta-luo-xi-yin-li-ling-xing-xiu-hang.md +++ /dev/null @@ -1,4 +0,0 @@ -# 风水玄学儒释道瑜伽占卜塔罗吸引力法则灵性修行 - -## 谁信谁傻逼 - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/ji-chu-cai-shang-jiao-yu.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/ji-chu-cai-shang-jiao-yu.md deleted file mode 100644 index 72cba473..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/ji-chu-cai-shang-jiao-yu.md +++ /dev/null @@ -1,12 +0,0 @@ -# 基础财商教育 - -## [【全集】富爸爸《千禧一代的金钱课》1080p.\[中英字幕\]](https://www.bilibili.com/video/BV1mK4y1b761) - -{% embed url="https://www.bilibili.com/video/BV1mK4y1b761" %} - -{% embed url="https://www.bilibili.com/video/BV1mK4y1b761" %} - -## [ESBI 四大象限 = 决定人生贫富的四种分类](https://zhuanlan.zhihu.com/p/56485616) - -## [ESBI4个象限概念](https://www.douban.com/note/303711475/) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/power-bi-jiao-cheng.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/power-bi-jiao-cheng.md deleted file mode 100644 index 39603af4..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/power-bi-jiao-cheng.md +++ /dev/null @@ -1,54 +0,0 @@ -# Power BI 教室 - -## MicroSoft 官网 \(免费\) - -[Power BI](https://powerbi.microsoft.com/zh-cn/) **\|** [**下载**](https://powerbi.microsoft.com/zh-cn/downloads/)\*\*\*\* - -## \*\*\*\*[**介绍1**](https://blog.csdn.net/liusongping123/article/details/83514080) **\|** [**介绍2**](https://www.jianshu.com/p/b3d6fdf480e6)\*\*\*\* - -![](../../../.gitbook/assets/image%20%2820%29.png) - -一句话简明介绍: - -Power Query用来加载元数据,Power Pivot负责对数据进行建模分析,Power View则是生成数据图表,三兄弟主要是给Excel这位老板打工; - -而Power BI是这三兄弟合资经营的新公司,脱离了Excel专注于做BI产业。 - -## [最全的PowerBI教程,都在这里了](https://zhuanlan.zhihu.com/p/64999937) - -## 网易云课堂 - -[Power BI 1小时入门篇](https://study.163.com/course/courseMain.htm?courseId=1004952006) \(免费\) - -[Power BI 3小时进阶篇](https://study.163.com/course/introduction/1004994014.htm?share=1&shareId=1017357217) \(付费,试看部分免费\) - -[Power BI 8小时掌握篇](https://study.163.com/course/introduction/1005644004.htm?share=1&shareId=1017357217) \(付费,试看部分免费\) - -## B站 - 入门篇 \(免费\) - -[小新Power BI课堂1小时入门篇-1 Power BI简介](https://www.bilibili.com/video/BV1Tb411n7gQ) - -[小新Power BI课堂 1小时入门篇-2 下载软件 注册账号](https://www.bilibili.com/video/BV14b411E7TK) - -[小新Power BI课堂 1小时入门篇-3从Excel获取数据](https://www.bilibili.com/video/BV14b411E7NX) - -[小新Power BI课堂 1小时入门篇-4建立关系](https://www.bilibili.com/video/BV14b411E7PU) - -[小新Power BI课堂 1小时入门篇-5新建列和度量值](https://www.bilibili.com/video/BV14b411E73L) - -[小新Power BI课堂 1小时入门篇-6制作第一个仪表板](https://www.bilibili.com/video/BV14b411E73K) - -[小新Power BI课堂 1小时入门篇-7使用多种客户端查看](https://www.bilibili.com/video/BV14b411E7TX) - -## B站 - 进阶篇 \(免费\) - -[小新Power BI课堂3小时进阶篇-从文件夹获取数据](https://www.bilibili.com/video/BV14b411E7qQ) - -[小新Power BI课堂 3小时进阶篇-从Web获取数据](https://www.bilibili.com/video/BV14b411E7ji) - -[小新Power BI课堂 3小时进阶篇-事实表和维度表](https://www.bilibili.com/video/BV14b411E7jV) - -## B站 - 掌握篇 \(免费\) - -[小新Power BI课堂 8小时掌握篇-4灵活运用自定义函数](https://www.bilibili.com/video/BV14b411E7aJ) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/README.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/README.md deleted file mode 100644 index 7addc78c..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# Python少儿编程教室 👩‍🏫 - -{% embed url="https://trello.com/b/pa0uqSuW/%E5%A4%A7%E6%95%B0%E6%8D%AE%E6%99%BA%E8%83%BD%E7%9C%8B%E6%9D%BF" %} - -{% page-ref page="python-ban-gong-zi-dong-hua.md" %} - -{% page-ref page="python-finance.md" %} - -{% page-ref page="python.md" %} - -{% page-ref page="../../kai-yuan-xiang-mu-yan-jiu-yuan/py-zhong-dian-shi-yan-shi.md" %} - - - -{% page-ref page="../../yi-bu-bing-fa-xie-cheng-1/xin-ban-ben-gao-bing-fa-shi-yan-shi.md" %} - - - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python-ban-gong-zi-dong-hua.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python-ban-gong-zi-dong-hua.md deleted file mode 100644 index 83cb6f5d..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python-ban-gong-zi-dong-hua.md +++ /dev/null @@ -1,60 +0,0 @@ -# Python 办公自动化 OA - -![](../../../../.gitbook/assets/qq20210625-2.jpg) - -## [天呐!清华大佬终于把Python做成漫画了,如此幽默的学习教程,他试图想拯救我?](https://www.bilibili.com/video/BV1Fh411h7WM) - -## B站 搜索 Jupyter Notebook - -[_jupyter_ _notebook_的基本使用](https://www.bilibili.com/video/BV1d7411w7hc?from=search&seid=7771092978935938570) - -[最易上手的Python环境配置——_Jupyter_ _Notebook_使用](https://www.bilibili.com/video/BV1Z7411L7dy?from=search&seid=7771092978935938570) - -[python数据分析神器_Jupyter_ _notebook_快速入门](https://www.bilibili.com/video/BV1Q4411H7fJ?from=search&seid=7771092978935938570) - -[台湾高校老师讲解《Python for Data Analysis》](https://www.bilibili.com/video/BV1ZJ411c7VR?from=search&seid=2992632977368457315) - -## B站 搜索 数据清洗 - -[【2021年最新录制】_Python_ 3 爬虫、_数据清洗_与可视化实战](https://www.bilibili.com/video/BV1CX4y1374d?from=search&seid=13696731372288406797) - -[【_Python_ _数据清洗_】用_Python_给_数据_洗澡澡~ \|_数据_](https://www.bilibili.com/video/BV1qb411M7ew?from=search&seid=13696731372288406797) - -[【bobo老师新作】_Python数据_化处理+_数据清洗_+_数据_](https://www.bilibili.com/video/BV1264y12788?from=search&seid=13696731372288406797) - -[可能是全网最全的_Python数据_分析课程](https://www.bilibili.com/video/BV17D4y1X76e?from=search&seid=13696731372288406797) - -[_Python_爬虫+_数据清洗_+_数据_分析+项目实战(_Python_](https://www.bilibili.com/video/BV1L64y1Z7Br?from=search&seid=13696731372288406797) - -## B站 搜索 慕课网 Python 办公自动化 - -[Python 办公自动化(1) 环境搭建](https://www.bilibili.com/video/BV1nk4y1y7sb?from=search&seid=12740591149490430290) - -[Python 办公自动化(2)xlrd+xlwt读取-写入Excel数](https://www.bilibili.com/video/BV14p4y1e7RK?from=search&seid=12740591149490430290) - -[Python 办公自动化(3) xlsxwriter生成图表](https://www.bilibili.com/video/BV1Vf4y1D7hu?from=search&seid=12740591149490430290) - -[Python 办公自动化 (4)玩转Word自动化](https://www.bilibili.com/video/BV1SA411E77W?from=search&seid=12740591149490430290) - -## B站 搜索 openpyxl - -[Python办公自动化之Excel篇 _openpyxl_库 python中的VBA](https://www.bilibili.com/video/BV1L5411W7wD?from=search&seid=13139251396422054128) - -[Python+_Openpyxl_ 真实财务开发教学](https://www.bilibili.com/video/BV1kT4y1u7AK?from=search&seid=13139251396422054128) - -[【用Python处理Excel数据,中文全基础系列教程】](https://www.bilibili.com/video/BV1m4411K7Tc?from=search&seid=13139251396422054128) - -[从入门到精通 Excel 神器 — _OpenPyXl_](https://www.bilibili.com/video/BV1d5411T7Yg?from=search&seid=13139251396422054128) - -## B站 搜索 pandas excel - -[【Python】【_Pandas_】 数据分析 & _Excel_ 办公自动化 超详细动画可视化讲解 自](https://www.bilibili.com/video/BV1Ni4y1t7tf?from=search&seid=4891947074231402271) - -[Python自动化办公--_Pandas_玩转_Excel_(全30集)](https://www.bilibili.com/video/BV1hk4y1C73S?from=search&seid=4891947074231402271) - -[_Pandas_ VS _Excel_【刘铁猛】](https://www.bilibili.com/video/BV1fW41117cA?from=search&seid=4891947074231402271) - -## B站 搜索 Matplotlib - -[论文数据分析经验之谈:为什么不用_excel_,要用python,要用_matplotlib_](https://www.bilibili.com/video/BV1CK4y187DL?from=search&seid=1236558773767757527) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python-finance.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python-finance.md deleted file mode 100644 index 5eb9b5b2..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python-finance.md +++ /dev/null @@ -1,18 +0,0 @@ -# Python 金融 Finance - -## Python 金融 - -### [清华计算机博士带你学-Python金融量化分析](https://www.bilibili.com/video/BV1i741147LS) - -[【2020】_Python金融_量化投资分析与股票交易+项目实战](https://www.bilibili.com/video/BV1h64y1f7XS?from=search&seid=3241660320598022940) - -[_金融_科技工具箱——面向经管_金融_同学的_Python_、爬虫、机器学习课](https://www.bilibili.com/video/BV1DE411y7nz?from=search&seid=3241660320598022940) - -[【Chenghsi Hsieh】《_Python金融_大数据分析》适合初学者](https://www.bilibili.com/video/BV1ft4y1y7L2?from=search&seid=3241660320598022940) - -[跟随清华计算博士从零开始学_Python金融_量化&股票分](https://www.bilibili.com/video/BV1kA411x7od?from=search&seid=3241660320598022940) - -[用_python_做_金融_数据分析 - 投资组合](https://www.bilibili.com/video/BV1Pa4y1Y7pm?from=search&seid=3241660320598022940) - -[_Python金融_量化&股票分析 项目实战从入门到精通](https://www.bilibili.com/video/BV1Ry4y1W7gg?from=search&seid=3241660320598022940) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python.md deleted file mode 100644 index eff83686..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/python-shao-er-bian-cheng/python.md +++ /dev/null @@ -1,245 +0,0 @@ -# Python Project - -## 调试 - -```python -exit() # 执行到此处中止 -``` - -## [Numpy](https://pypi.org/project/numpy/) - 矩阵计算 - -### 安装 - -{% embed url="https://numpy.org/install/" %} - -### 使用 - -```python -import numpy as np - -array = np.array([[1,2,3], - [2,3,4]]) - -print(array) -print('number of dim:', array.ndim) # 输出矩阵的维数 -print('shape:', array.shape) # 输出矩阵的行列数 -print('size:', array.size) # 输出矩阵的元素数 -``` - -```python -import numpy as np - -a = np.array([10,20,30,40]) -b = np.arange(4) - -print(a,b) - -# 输出结果: -# [10 20 30 40] [0 1 2 3] -``` - -```python -import numpy as np - -a = np.array([10,20,30,40]) -b = np.arange(4) - -print(a,b) - -c = a+b -print(c) - -# 输出结果: -# [10 20 30 40] [0 1 2 3] -# [10 21 32 43] -``` - -```python -import numpy as np - -a = np.array([10,20,30,40]) -b = np.arange(4) - -print(a,b) - -c = a-b -print(c) - -# 输出结果: -# [10 20 30 40] [0 1 2 3] -# [10 19 28 37] -``` - -```python -import numpy as np - -a = np.array([10,20,30,40]) -b = np.arange(4) - -c = b**2 -print(c) - -# 输出结果: -# [0 1 4 9] -``` - -```python -import numpy as np - -a = np.array([10,20,30,40]) -b = np.arange(4) - -c = 10*np.sin(a) -print(c) - -# 输出结果: -# [-5.44021111 9.12945251 -9.88031624 7.4511316] -``` - -```python -import numpy as np - -a = np.array([10,20,30,40]) -b = np.arange(4) - -print(b) -print(b<3) - -# 输出结果: -# [0 1 2 3] -# [True True True False] -``` - -```python -import numpy as np - -a = np.array([10,20,30,40]) -b = np.arange(4) - -print(b) -print(b==3) - -# 输出结果: -# [0 1 2 3] -# [False False False True] -``` - -```python -import numpy as np - -a = np.array([10,20,30,40]) -b = np.arange(4) - -print(b) -print(b==3) - -# 输出结果: -# [0 1 2 3] -# [False False False True] -``` - -```python -import numpy as np - -a = np.array([[1,1], - [0,1]]) -b = np.arange(4).reshape((2,2)) - -print(a) -print(b) - -c = a*b -c_dot = np.dot(a,b) - -print(c) -print(c_dot) - -# 输出结果: -# [[1 1] -# [0 1]] -# [[0 1] -# [2 3]] - -# [[0 1] -# [0 3]] -# [[2 4] -# [2 3]] -``` - -{% embed url="https://blog.csdn.net/like4501/article/details/79753346" %} - -## [Pandas](https://pypi.org/project/pandas/) - 数据分析 - -### 安装 - -{% embed url="https://pandas.pydata.org/pandas-docs/stable/getting\_started/install.html" %} - -### 使用 - 读取数据 - -```python -import pandas as pd - -pd.read_csv('/path') #读取csv文件 -pd.read_excel('/path') #读取excel表格 -pd.read_table('/path') #读取txt文本 -``` - -```python -import pandas as pd - -pd.read_csv('/path', encoding='gbk') -# encoding='gbk' : 防止出现中文乱码 -``` - -```python -import pandas as pd - -DataName_data = pd.read_csv('/path', encoding='gbk') # 导入为DataName_data - -print DataName_data # 打印DataName_data -``` - -```python -import pandas as pd - -DataName_data = pd.read_csv('/path', encoding='gbk') # 导入为DataName_data - -print DataName_data[['列名1']] # 打印DataName_data的某一列 -print DataName_data[['列名1', '列名2']] # 打印DataName_data的某两列 -``` - -```python -import pandas as pd - -DataName_data = pd.read_csv('/path', encoding='gbk') # 导入为DataName_data - -DataName_data[['新增列名1']] = '新增列值1' # 新增一列 -print DataName_data # 打印DataName_data -``` - -### 使用 - 排序数据 - -```python -import pandas as pd - -DataName_data = pd.read_csv('/path', encoding='gbk') # 导入为DataName_data - -DataName_data.sort_values(by = ['列名1', '列名2'], inplace = True) -# 先按列名1排序,再按列名2排序 -print DataName_data # 打印DataName_data -``` - -### 使用 - 截取数据 - -```python -import pandas as pd - -DataName_data = pd.read_csv('/path', encoding='gbk') # 导入为DataName_data - -DataName_data = DataName_data['交易日期'] > pd.to_datetime(20201231) - -print DataName_data # 打印DataName_data -``` - -## [Openpyxl](https://pypi.org/project/openpyxl/) - 处理EXCEL - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/qi-ye-zhan-lve-fen-xi.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/qi-ye-zhan-lve-fen-xi.md deleted file mode 100644 index ac52b749..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/qi-ye-zhan-lve-fen-xi.md +++ /dev/null @@ -1,14 +0,0 @@ -# 企业战略分析 - -## [SWOT](https://wiki.mbalib.com/wiki/SWOT%E5%88%86%E6%9E%90%E6%A8%A1%E5%9E%8B) - -## [PEST,PESTEL](https://wiki.mbalib.com/wiki/PESTLE%E5%88%86%E6%9E%90) - -## [波特五力](https://wiki.mbalib.com/wiki/%E6%B3%A2%E7%89%B9%E4%BA%94%E5%8A%9B) - -## [行业与市场分析六步法](https://zhuanlan.zhihu.com/p/268913031) - -## \*\*\*\*[**波士顿矩阵**](https://wiki.mbalib.com/wiki/%E6%B3%A2%E5%A3%AB%E9%A1%BF%E7%9F%A9%E9%98%B5)\*\*\*\* - -\*\*\*\* - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/qian-duan-hou-duan.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/qian-duan-hou-duan.md deleted file mode 100644 index 68d8af2e..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/qian-duan-hou-duan.md +++ /dev/null @@ -1,22 +0,0 @@ -# WEB 全栈开发 - -## 前端架构 - -**HTML \| CSS \| JavaScript** - -BOM/DOM,AJAX,jQuery,Bootstrap - -Vue.js \| Angular.js \| React.js - -## 后端架构 - -**LAMP == Linux + Apache + Mysql + PHP** - -**LNMP == Linux + Nginx + Mysql + PHP \( 国外简称为 LEMP \)** - -注:PHP 可以换成 Node.js,C\#,JAVA,C++,Python - -[https://ninghao.net/](https://ninghao.net/) - -[https://lemp.ninghao.net/](https://lemp.ninghao.net/) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/spss-jiao-cheng.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/spss-jiao-cheng.md deleted file mode 100644 index 3030d501..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/spss-jiao-cheng.md +++ /dev/null @@ -1,10 +0,0 @@ -# SPSS 教室 - -## spss的各个版本的软件的安装教程 - -[https://pan.baidu.com/s/1O\_nK6ZdmRUY\_zhFIJiXRoQ](https://pan.baidu.com/s/1O_nK6ZdmRUY_zhFIJiXRoQ) 提取码:v3dj - -## [SPSS统计分析从入门到精通](https://www.bilibili.com/video/BV1Ms41177gs?from=search&seid=5572277566815917966) - -## [一小时学会spss](https://www.bilibili.com/video/BV1Pt411Q7HG?from=search&seid=5572277566815917966) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/wang-luo-an-quan-dao-hang.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/wang-luo-an-quan-dao-hang.md deleted file mode 100644 index 15b11c2c..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/wang-luo-an-quan-dao-hang.md +++ /dev/null @@ -1,34 +0,0 @@ -# 网络安全 - -## 软件 - -[Kali Linux](https://www.kali.org/) - -[Woobuntu](https://github.com/woolabs/Woobuntu) - -## 网站 - -[ZoomEye](https://www.zoomeye.org/) - -[Shodan](https://www.shodan.io/) - -## 导航 - -[NaviSec.it – 纳威安全导航\| 网络安全导航](https://navisec.it/) - -[渗透师网络安全从业者安全导航](https://www.shentoushi.top/) - -[安全导航AQDH.com,网络安全导航,信息安全工程师利器](https://www.aqdh.com/) - -[网络安全导航- Www.HackSec.Cn](https://www.hacksec.cn/links.html) - -[安全导航- 网络安全导航,网络攻防小组\(WLGF\)驱动](https://www.milw0rm.cn/) - -[安全圈info - 做接地气的信息安全导航](https://www.anquanquan.info/) - -[安全从业者最实用的安全导航,网络安全人员爱用的网络导航](http://nav.secpulse.com/) - -[安全导航- Hawoo SecLab](http://www.hawoo.net/p/SecNavi.html) - -[黑客导航\| 安全网址导航](https://hack.coolzhanweb.com/) - diff --git a/qian-xian/research-institute-development/xiao-bai-xue-cheng/wen-xian-yu-shu-ju.md b/qian-xian/research-institute-development/xiao-bai-xue-cheng/wen-xian-yu-shu-ju.md deleted file mode 100644 index 2ab2e9eb..00000000 --- a/qian-xian/research-institute-development/xiao-bai-xue-cheng/wen-xian-yu-shu-ju.md +++ /dev/null @@ -1,172 +0,0 @@ -# 文献与数据 - -scihub - -scidown - -web of science - -下载文献下面这些网站可以试试 - -1.[http://www.4243.net/](http://www.4243.net/)大木虫学术 - -2.[https://gfsoso.99lb.net/sci-hub.html](https://gfsoso.99lb.net/sci-hub.html)谷粉学术 - -3.[https://2.52qu.xyz/](https://2.52qu.xyz/)可用的谷歌镜像 - -4.[http://mirror.mixueshu.com/](http://mirror.mixueshu.com/)小米学术 - -5.[https://www.ablesci.com](https://www.ablesci.com)/科研通 - -6.[http://sci-hub.tw](http://sci-hub.tw)可用的 - -7.[http://sci-hub.se](http://sci-hub.se)可用的 - -8.[http://sci-hub.im](http://sci-hub.im)可用的 ​ - -下文献步骤: - -1.[http://so.hiqq.com.cn/?tdsourcetag=s\_pctim\_aiomsg](http://so.hiqq.com.cn/?tdsourcetag=s_pctim_aiomsg)在谷歌学术搜索中输入文章题目或关键词,找到文章链接,找到DOI号; - -2.https://sci-hub.shop/或[https://sci-hub.tw/](https://sci-hub.tw/)把文章的DOI号输入sci-hub下载(如果有文章的DOI号,可以直接用此链接尝试下载,跳过步骤1)。​ - - - -1国家数据网 中华人民共和国统计局发布,各种数据应有尽有,可以和国家统计局配合使用 - -2中国互联网数据平台 采用完全公益的运作模式,为企业、学者免费提供互联网统计数据 - -3 金融界 主要提供企业融资,资金流向方面的数据,适合在找财报的同学 - -4 新浪财经 宏观数据比较多,例如国民经济,居民收入 - -5 阿里指数:主要是淘宝平台市场的数据分析,适合电子商务,物流管理等专业 - -6 清博大数据:研究报告,数据报告,以及一些学术性研究 - -7 腾讯大数据:数据服务平台,调查研究以及移动互联网方面的数据 - -8 世界聚集人口 - -国家数据网(配合国家统计局) - -中国互联网数据平台 - -金融界 - -新浪财经 - -阿里指数 - -清博大数据 - -腾讯大数据 - -世界聚集人开数据​ - -中国数据 - -1.国家统计局 - -2.商务部 - -3.海关总署 - -4.CSMAR - -5.China Data Center of University of Michigan - -国际数据 - -1.Un Comtrade :国际贸易 - -2.WTO:贸易相关 - -3.IMF:宏观 - -4.world bank:宏观,增长率 ​ - -1. 视频片头动画模板 [https://panzoid.com/](https://panzoid.com/) - - 2.在线抠图 [https://www.remove.bg/](https://www.remove.bg/) - - 3.字体下载 [https://www.zitijia.com/](https://www.zitijia.com/) - -2. p站 (二次元插画网站) [https://www.pixiv.net/](https://www.pixiv.net/) - - 5.论文下载 [https://www.cn-ki.net/](https://www.cn-ki.net/) - - 6.文档格式在线转换 [https://smallpdf.com/](https://smallpdf.com/) - - 7.录屏投屏 [http://web.airdroid.com/](http://web.airdroid.com/) - - 8.各大网站热榜 [https://tophub.today/](https://tophub.today/) - - 9.超清图片壁纸 [https://www.pexels.com/](https://www.pexels.com/) - - 10.找网站的网站 [http://www.addog.vip/​](http://www.addog.vip/​) - -术语在线 - -Academic Phrasebank - -Diagram - -彩云小译 - -研享网 - -论文驿站 - -Quicker​ - -1.iData - -2.师大云端图书馆 - -3.pubMed & SCI hub - -4.各大图书馆网站 - -查重网站汇总: - -1、百度学术 - -网址: [http://xueshu.baidu.com](http://xueshu.baidu.com) - -2、PaperYY - -网址:[http://www.paperyy.com](http://www.paperyy.com) - -3、PaperOK - -网址:[http://www.paperok.com](http://www.paperok.com) - -4、大雅 - -网址:[http://dsa.dayainfo.com](http://dsa.dayainfo.com) - -5、格子达 - -网址:[http://gezida.com/contactus](http://gezida.com/contactus) - -6、论文狗 - -网址:[http://www.lunwengo.net/](http://www.lunwengo.net/) - -7、知网 - -网址:[https://www.cnki.net/](https://www.cnki.net/) - - - -论文查重网站: - -1. Passmore(论文查重、智能降重、人工降重) - - 网址:[https://www.passmore.cn/](https://www.passmore.cn/) - -2. 知网 - - 网址:[https://www.cnki.net/](https://www.cnki.net/) - diff --git a/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/README.md b/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/README.md deleted file mode 100644 index 6a1ad584..00000000 --- a/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# 朱红 · 高并发技术分院👩‍🔬 👨‍🔬 - diff --git a/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/xin-ban-ben-gao-bing-fa-shi-yan-shi.md b/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/xin-ban-ben-gao-bing-fa-shi-yan-shi.md deleted file mode 100644 index 4d010917..00000000 --- a/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/xin-ban-ben-gao-bing-fa-shi-yan-shi.md +++ /dev/null @@ -1,34 +0,0 @@ -# 新版本高并发实验室🚩 - -## 高并发研究院——异步,并发,协程 - - —————————————————————— - - [https://www.zhangleigang.com/archives/category/py](https://www.zhangleigang.com/archives/category/py) - -[https://www.zhihu.com/question/294188439/answer/555273313](https://www.zhihu.com/question/294188439/answer/555273313) 🚩 - -[**https://www.dazhuanlan.com/2020/01/04/5e101c249fa42/**](https://www.dazhuanlan.com/2020/01/04/5e101c249fa42/) **🚩** - -[https://www.cnblogs.com/songzhixue/p/11311646.html](https://www.cnblogs.com/songzhixue/p/11311646.html) - -[http://ddrv.cn/a/386316](http://ddrv.cn/a/386316) - -—————————————————————— - - [https://www.bilibili.com/video/BV1cK4y1E77y](https://www.bilibili.com/video/BV1cK4y1E77y) 🚩 - -笔记连接:[https://pythonav.com/wiki/detail/6/91/](https://pythonav.com/wiki/detail/6/91/) 🚩 - -aysncio官方文档链接:[https://docs.python.org/zh-cn/3.7/library/asyncio.html](https://docs.python.org/zh-cn/3.7/library/asyncio.html) - -建议在看这个之后,配合aiohttp搭建一个服务端玩一下,其实挺快的, - -之前学习的博客链接:[https://www.jianshu.com/p/6b420f562f87](https://www.jianshu.com/p/6b420f562f87) - -aiohttp的官方文档地址:[https://docs.aiohttp.org/en/stable/client\_quickstart.html\#make-a-request](https://docs.aiohttp.org/en/stable/client_quickstart.html#make-a-request) - -—————————————————————— - - [https://github.com/monk-after-90s/python-high-level-async-programming](https://github.com/monk-after-90s/python-high-level-async-programming) - diff --git a/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/yi-bu-bing-fa-xie-cheng.md b/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/yi-bu-bing-fa-xie-cheng.md deleted file mode 100644 index 07c29315..00000000 --- a/qian-xian/research-institute-development/yi-bu-bing-fa-xie-cheng-1/yi-bu-bing-fa-xie-cheng.md +++ /dev/null @@ -1,42 +0,0 @@ -# 旧版本高并发实验室 - -## **难点:** - -### **协程&服务器心跳** - -* 协程 grep - -[https://docs.python.org/zh-cn/3/library/asyncio-task.html](https://docs.python.org/zh-cn/3/library/asyncio-task.html) - -* 【Python】基于协程的并发WebSocket通信实践 - -[https://blog.csdn.net/pupilxmk/article/details/106429215](https://blog.csdn.net/pupilxmk/article/details/106429215) - -### **并发&锁** - -* 分布式锁,三种实现方式,性能对比分析! - -[https://cloud.tencent.com/developer/article/1720823](https://cloud.tencent.com/developer/article/1720823) - -### **异步asyncio** - -* 异步asyncio - -[https://docs.python.org/zh-cn/3/library/asyncio.html](https://docs.python.org/zh-cn/3/library/asyncio.html) - -* aiohttp - -[https://pypi.org/project/aiohttp/](https://pypi.org/project/aiohttp/) - -* AIOAMQP - -[https://pypi.org/project/aioamqp/](https://pypi.org/project/aioamqp/) - -## **【Python系列】4**、**协程与异步并发 🚩** - -\*\*\*\*[**https://www.dazhuanlan.com/2020/01/04/5e101c249fa42/**](https://www.dazhuanlan.com/2020/01/04/5e101c249fa42/)\*\*\*\* - -## Python中协程\(coroutine\)和生成器\(generator\)的区别 - -[https://www.jianshu.com/p/5103c6a63e33](https://www.jianshu.com/p/5103c6a63e33) -