6评论

0收藏

求源码

avatar baofu | 1546 人阅读 | 6 人评论 | 2019-02-05

10金币
求附图源码

19e92e9dd928264673c9b6cbe49f6891_audnzd-h1-international-capital-markets.png
""
还没有人打赏,支持一下

评论|共 6 个

梦丫头

发表于 2019-2-5 21:08:04 | 显示全部楼层

#TheSecret4 TF PSAR Bar4~.mq4

御风0618

发表于 2019-2-6 13:24:20 | 显示全部楼层

星星是什么指标

baofu

发表于 2019-2-8 15:56:43 | 显示全部楼层

丫头,乱码啊

梦丫头

发表于 2019-2-8 16:20:34 | 显示全部楼层


QQ截图20190208161952.png

不是乱码啊

  1. #property copyright "外汇EA之家,免费下载EA、指标"
  2. #property link      "http://www.eazhijia.com"

  3. #property indicator_separate_window
  4. #property indicator_minimum 0.0
  5. #property indicator_maximum 5.0
  6. #property indicator_buffers 8
  7. #property indicator_color1 DodgerBlue
  8. #property indicator_color2 Crimson
  9. #property indicator_color3 DodgerBlue
  10. #property indicator_color4 Crimson
  11. #property indicator_color5 DodgerBlue
  12. #property indicator_color6 Crimson
  13. #property indicator_color7 DodgerBlue
  14. #property indicator_color8 Crimson

  15. extern double stepPSAR1 = 0.06;
  16. extern double stepPSAR2 = 0.06;
  17. extern double stepPSAR3 = 0.06;
  18. extern double stepPSAR4 = 0.06;
  19. extern double maxPSAR = 0.2;
  20. extern int BarWidth = 0;
  21. extern color UpBarColor = DodgerBlue;
  22. extern color DownBarColor = Crimson;
  23. extern color TextColor = White;
  24. extern int MaxBars = 500;
  25. extern bool AlertWhenTFColorMatch = TRUE;
  26. extern string AlertCustomMessageUp = "All TF going UP";
  27. extern string AlertCustomMessageDown = "All TF going DOWN";
  28. double gd_156 = 1.0;
  29. double g_ibuf_164[];
  30. double g_ibuf_168[];
  31. double g_ibuf_172[];
  32. double g_ibuf_176[];
  33. double g_ibuf_180[];
  34. double g_ibuf_184[];
  35. double g_ibuf_188[];
  36. double g_ibuf_192[];
  37. double g_isar_196;
  38. bool gi_204;
  39. bool gi_208;
  40. bool gi_212;
  41. bool gi_216;
  42. string gs_220 = "";
  43. bool gi_228 = TRUE;
  44. int gi_232 = 110;
  45. int gi_236 = 110;
  46. int gi_240 = 228;
  47. bool gi_244 = TRUE;
  48. int g_time_248 = 0;

  49. int init() {
  50.    gi_228 = TRUE;
  51.    SetIndexStyle(0, DRAW_ARROW, STYLE_SOLID, BarWidth, UpBarColor);
  52.    SetIndexArrow(0, gi_232);
  53.    SetIndexBuffer(0, g_ibuf_164);
  54.    SetIndexEmptyValue(0, 0.0);
  55.    SetIndexStyle(1, DRAW_ARROW, STYLE_SOLID, BarWidth, DownBarColor);
  56.    SetIndexArrow(1, gi_236);
  57.    SetIndexBuffer(1, g_ibuf_168);
  58.    SetIndexEmptyValue(1, 0.0);
  59.    SetIndexStyle(2, DRAW_ARROW, STYLE_SOLID, BarWidth, UpBarColor);
  60.    SetIndexArrow(2, gi_232);
  61.    SetIndexBuffer(2, g_ibuf_172);
  62.    SetIndexEmptyValue(2, 0.0);
  63.    SetIndexStyle(3, DRAW_ARROW, STYLE_SOLID, BarWidth, DownBarColor);
  64.    SetIndexArrow(3, gi_236);
  65.    SetIndexBuffer(3, g_ibuf_176);
  66.    SetIndexEmptyValue(3, 0.0);
  67.    SetIndexStyle(4, DRAW_ARROW, STYLE_SOLID, BarWidth, UpBarColor);
  68.    SetIndexArrow(4, gi_232);
  69.    SetIndexBuffer(4, g_ibuf_180);
  70.    SetIndexEmptyValue(4, 0.0);
  71.    SetIndexStyle(5, DRAW_ARROW, STYLE_SOLID, BarWidth, DownBarColor);
  72.    SetIndexArrow(5, gi_236);
  73.    SetIndexBuffer(5, g_ibuf_184);
  74.    SetIndexEmptyValue(5, 0.0);
  75.    SetIndexStyle(6, DRAW_ARROW, STYLE_SOLID, BarWidth, UpBarColor);
  76.    SetIndexArrow(6, gi_232);
  77.    SetIndexBuffer(6, g_ibuf_188);
  78.    SetIndexEmptyValue(6, 0.0);
  79.    SetIndexStyle(7, DRAW_ARROW, STYLE_SOLID, BarWidth, DownBarColor);
  80.    SetIndexArrow(7, gi_236);
  81.    SetIndexBuffer(7, g_ibuf_192);
  82.    SetIndexEmptyValue(7, 0.0);
  83.    SetIndexLabel(0, NULL);
  84.    SetIndexLabel(1, NULL);
  85.    SetIndexLabel(2, NULL);
  86.    SetIndexLabel(3, NULL);
  87.    SetIndexLabel(4, NULL);
  88.    SetIndexLabel(5, NULL);
  89.    SetIndexLabel(6, NULL);
  90.    SetIndexLabel(7, NULL);
  91.    IndicatorDigits(0);
  92.    for (int li_0 = MaxBars - 1; li_0 >= 0; li_0--) {
  93.       g_ibuf_188[li_0] = 0;
  94.       g_ibuf_192[li_0] = 0;
  95.       g_ibuf_180[li_0] = 0;
  96.       g_ibuf_184[li_0] = 0;
  97.       g_ibuf_172[li_0] = 0;
  98.       g_ibuf_176[li_0] = 0;
  99.       g_ibuf_164[li_0] = 0;
  100.       g_ibuf_168[li_0] = 0;
  101.    }
  102.    return (0);
  103. }

  104. int deinit() {
  105.    return (0);
  106. }

  107. int start() {
  108.    int li_24;
  109.    int li_28;
  110.    int timeframe_40;
  111.    int timeframe_44;
  112.    int timeframe_48;
  113.    int timeframe_52;
  114.    int lia_60[];
  115.    int lia_64[];
  116.    int lia_68[];
  117.    int lia_72[];
  118.    int li_76;
  119.    double ld_80;
  120.    double ld_92;
  121.    string text_100;
  122.    double price_108;
  123.    string name_120;
  124.    int timeframe_132;
  125.    double ld_136;
  126.    double ld_144;
  127.    int ind_counted_0 = IndicatorCounted();
  128.    int index_4 = 0;
  129.    int index_8 = 0;
  130.    int index_12 = 0;
  131.    int index_16 = 0;
  132.    int index_20 = 0;
  133.    if (gi_228) li_28 = MaxBars;
  134.    else li_28 = MaxBars;
  135.    switch (Period()) {
  136.    case PERIOD_M1:
  137.       timeframe_40 = 1;
  138.       timeframe_44 = 5;
  139.       timeframe_48 = 15;
  140.       timeframe_52 = 30;
  141.       break;
  142.    case PERIOD_M5:
  143.       timeframe_40 = 5;
  144.       timeframe_44 = 15;
  145.       timeframe_48 = 30;
  146.       timeframe_52 = 60;
  147.       break;
  148.    case PERIOD_M15:
  149.       timeframe_40 = 15;
  150.       timeframe_44 = 30;
  151.       timeframe_48 = 60;
  152.       timeframe_52 = 240;
  153.       break;
  154.    case PERIOD_M30:
  155.       timeframe_40 = 30;
  156.       timeframe_44 = 60;
  157.       timeframe_48 = 240;
  158.       timeframe_52 = 1440;
  159.       break;
  160.    case PERIOD_H1:
  161.       timeframe_40 = 60;
  162.       timeframe_44 = 240;
  163.       timeframe_48 = 1440;
  164.       timeframe_52 = 10080;
  165.       break;
  166.    case PERIOD_H4:
  167.       timeframe_40 = 240;
  168.       timeframe_44 = 1440;
  169.       timeframe_48 = 10080;
  170.       timeframe_52 = 43200;
  171.       break;
  172.    case PERIOD_D1:
  173.       timeframe_40 = 1440;
  174.       timeframe_44 = 10080;
  175.       timeframe_48 = 43200;
  176.       timeframe_52 = 43200;
  177.       break;
  178.    case PERIOD_W1:
  179.       timeframe_40 = 10080;
  180.       timeframe_44 = 43200;
  181.       timeframe_48 = 43200;
  182.       timeframe_52 = 43200;
  183.       break;
  184.    case PERIOD_MN1:
  185.       timeframe_40 = 43200;
  186.       timeframe_44 = 43200;
  187.       timeframe_48 = 43200;
  188.       timeframe_52 = 43200;
  189.    }
  190.    gs_220 = "#TheSecret TF PSAR (" + timeframe_40 + "," + timeframe_44 + "," + timeframe_48 + "," + timeframe_52 + ")";
  191.    IndicatorShortName(gs_220);
  192.    gi_244 = NewBar();
  193.    if (gi_228 || gi_244) {
  194.       li_76 = gi_240;
  195.       ld_80 = Time[0] - Time[1];
  196.       for (int li_88 = ObjectsTotal() - 1; li_88 > -1; li_88--) {
  197.          if (StringFind(ObjectName(li_88), "FF_" + li_76 + "_") >= 0) ObjectDelete(ObjectName(li_88));
  198.          else li_88 = -1;
  199.       }
  200.       ld_92 = 0.2;
  201.       for (li_88 = 0; li_88 < 4; li_88++) {
  202.          text_100 = "??";
  203.          switch (li_88) {
  204.          case 0:
  205.             text_100 = tf2txt(timeframe_40);
  206.             price_108 = ld_92 + 1.0;
  207.             break;
  208.          case 1:
  209.             text_100 = tf2txt(timeframe_44);
  210.             price_108 = gd_156 + 1.0 + ld_92;
  211.             break;
  212.          case 2:
  213.             text_100 = tf2txt(timeframe_48);
  214.             price_108 = 2.0 * gd_156 + 1.0 + ld_92;
  215.             break;
  216.          case 3:
  217.             text_100 = tf2txt(timeframe_52);
  218.             price_108 = 3.0 * gd_156 + 1.0 + ld_92;
  219.          }
  220.          name_120 = "FF_" + li_76 + "_" + li_88 + "_" + text_100;
  221.          ObjectCreate(name_120, OBJ_TEXT, WindowFind(gs_220), iTime(NULL, 0, 0) + 3.0 * ld_80, price_108);
  222.          ObjectSetText(name_120, text_100, 8, "Arial", TextColor);
  223.       }
  224.       if (gi_228) {
  225.          ArrayCopySeries(lia_60, 5, Symbol(), timeframe_52);
  226.          ArrayCopySeries(lia_64, 5, Symbol(), timeframe_48);
  227.          ArrayCopySeries(lia_68, 5, Symbol(), timeframe_44);
  228.          ArrayCopySeries(lia_72, 5, Symbol(), timeframe_40);
  229.       }
  230.    }
  231.    if (gi_228) {
  232.       index_4 = 0;
  233.       index_8 = 0;
  234.       index_12 = 0;
  235.       index_16 = 0;
  236.       index_20 = 0;
  237.       while (index_4 < li_28) {
  238.          if (Time[index_4] < lia_60[index_12]) index_12++;
  239.          if (Time[index_4] < lia_64[index_16]) index_16++;
  240.          if (Time[index_4] < lia_68[index_20]) index_20++;
  241.          if (Time[index_4] < lia_72[index_8]) index_8++;
  242.          for (int count_128 = 0; count_128 < 4; count_128++) {
  243.             ld_136 = 0;
  244.             ld_144 = 0;
  245.             switch (count_128) {
  246.             case 0:
  247.                timeframe_132 = timeframe_40;
  248.                li_24 = index_8;
  249.                g_isar_196 = iSAR(NULL, timeframe_132, stepPSAR1, maxPSAR, li_24);
  250.                break;
  251.             case 1:
  252.                timeframe_132 = timeframe_44;
  253.                li_24 = index_20;
  254.                g_isar_196 = iSAR(NULL, timeframe_132, stepPSAR2, maxPSAR, li_24);
  255.                break;
  256.             case 2:
  257.                timeframe_132 = timeframe_48;
  258.                li_24 = index_16;
  259.                g_isar_196 = iSAR(NULL, timeframe_132, stepPSAR3, maxPSAR, li_24);
  260.                break;
  261.             case 3:
  262.                timeframe_132 = timeframe_52;
  263.                li_24 = index_12;
  264.                g_isar_196 = iSAR(NULL, timeframe_132, stepPSAR4, maxPSAR, li_24);
  265.             }
  266.             if (g_isar_196 < iClose(NULL, timeframe_132, li_24)) ld_136 = 1;
  267.             else ld_144 = 1;
  268.             switch (count_128) {
  269.             case 0:
  270.                g_ibuf_188[index_4] = ld_136;
  271.                g_ibuf_192[index_4] = ld_144;
  272.                break;
  273.             case 1:
  274.                g_ibuf_180[index_4] = ld_136 * (gd_156 + 1.0);
  275.                g_ibuf_184[index_4] = ld_144 * (gd_156 + 1.0);
  276.                break;
  277.             case 2:
  278.                g_ibuf_172[index_4] = ld_136 * (2.0 * gd_156 + 1.0);
  279.                g_ibuf_176[index_4] = ld_144 * (2.0 * gd_156 + 1.0);
  280.                break;
  281.             case 3:
  282.                g_ibuf_164[index_4] = ld_136 * (3.0 * gd_156 + 1.0);
  283.                g_ibuf_168[index_4] = ld_144 * (3.0 * gd_156 + 1.0);
  284.             }
  285.          }
  286.          index_4++;
  287.       }
  288.    }
  289.    index_4 = 0;
  290.    index_8 = 0;
  291.    index_12 = 0;
  292.    index_16 = 0;
  293.    index_20 = 0;
  294.    while (index_4 < 1) {
  295.       for (count_128 = 0; count_128 < 4; count_128++) {
  296.          ld_136 = 0;
  297.          ld_144 = 0;
  298.          switch (count_128) {
  299.          case 0:
  300.             timeframe_132 = timeframe_40;
  301.             li_24 = index_8;
  302.             g_isar_196 = iSAR(NULL, timeframe_132, stepPSAR1, maxPSAR, li_24);
  303.             break;
  304.          case 1:
  305.             timeframe_132 = timeframe_44;
  306.             li_24 = index_20;
  307.             g_isar_196 = iSAR(NULL, timeframe_132, stepPSAR2, maxPSAR, li_24);
  308.             break;
  309.          case 2:
  310.             timeframe_132 = timeframe_48;
  311.             li_24 = index_16;
  312.             g_isar_196 = iSAR(NULL, timeframe_132, stepPSAR3, maxPSAR, li_24);
  313.             break;
  314.          case 3:
  315.             timeframe_132 = timeframe_52;
  316.             li_24 = index_12;
  317.             g_isar_196 = iSAR(NULL, timeframe_132, stepPSAR4, maxPSAR, li_24);
  318.          }
  319.          if (g_isar_196 < iClose(NULL, timeframe_132, li_24)) ld_136 = 1;
  320.          else ld_144 = 1;
  321.          switch (count_128) {
  322.          case 0:
  323.             g_ibuf_188[index_4] = ld_136;
  324.             g_ibuf_192[index_4] = ld_144;
  325.             break;
  326.          case 1:
  327.             g_ibuf_180[index_4] = ld_136 * (gd_156 + 1.0);
  328.             g_ibuf_184[index_4] = ld_144 * (gd_156 + 1.0);
  329.             break;
  330.          case 2:
  331.             g_ibuf_172[index_4] = ld_136 * (2.0 * gd_156 + 1.0);
  332.             g_ibuf_176[index_4] = ld_144 * (2.0 * gd_156 + 1.0);
  333.             break;
  334.          case 3:
  335.             g_ibuf_164[index_4] = ld_136 * (3.0 * gd_156 + 1.0);
  336.             g_ibuf_168[index_4] = ld_144 * (3.0 * gd_156 + 1.0);
  337.          }
  338.       }
  339.       index_4++;
  340.    }
  341.    if (AlertWhenTFColorMatch && gi_244 && (!gi_228)) {
  342.       if (g_ibuf_164[0] == 0.0 && g_ibuf_168[0] == 4.0 && g_ibuf_172[0] == 0.0 && g_ibuf_176[0] == 3.0 && g_ibuf_180[0] == 0.0 && g_ibuf_184[0] == 2.0 && g_ibuf_188[0] == 0.0 &&
  343.          g_ibuf_192[0] == 1.0) gi_208 = TRUE;
  344.       else gi_208 = FALSE;
  345.       if (g_ibuf_164[0] == 4.0 && g_ibuf_168[0] == 0.0 && g_ibuf_172[0] == 3.0 && g_ibuf_176[0] == 0.0 && g_ibuf_180[0] == 2.0 && g_ibuf_184[0] == 0.0 && g_ibuf_188[0] == 1.0 &&
  346.          g_ibuf_192[0] == 0.0) gi_204 = TRUE;
  347.       else gi_204 = FALSE;
  348.       if (g_ibuf_164[1] == 0.0 && g_ibuf_168[1] == 4.0 && g_ibuf_172[1] == 0.0 && g_ibuf_176[1] == 3.0 && g_ibuf_180[1] == 0.0 && g_ibuf_184[1] == 2.0 && g_ibuf_188[1] == 0.0 &&
  349.          g_ibuf_192[1] == 1.0) gi_216 = TRUE;
  350.       else gi_216 = FALSE;
  351.       if (g_ibuf_164[1] == 4.0 && g_ibuf_168[1] == 0.0 && g_ibuf_172[1] == 3.0 && g_ibuf_176[1] == 0.0 && g_ibuf_180[1] == 2.0 && g_ibuf_184[1] == 0.0 && g_ibuf_188[1] == 1.0 &&
  352.          g_ibuf_192[1] == 0.0) gi_212 = TRUE;
  353.       else gi_212 = FALSE;
  354.       if (gi_204 && (!gi_212)) Alert("4TFPSAR on " + Symbol() + " " + tf2txt(Period()) + " : " + AlertCustomMessageUp);
  355.       if (gi_208 && (!gi_216)) Alert("4TFPSAR on " + Symbol() + " " + tf2txt(Period()) + " : " + AlertCustomMessageDown);
  356.    }
  357.    gi_228 = FALSE;
  358.    return (0);
  359. }

  360. string tf2txt(int ai_0) {
  361.    if (ai_0 == 1) return ("M1");
  362.    if (ai_0 == 5) return ("M5");
  363.    if (ai_0 == 15) return ("M15");
  364.    if (ai_0 == 30) return ("M30");
  365.    if (ai_0 == 60) return ("H1");
  366.    if (ai_0 == 240) return ("H4");
  367.    if (ai_0 == 1440) return ("D1");
  368.    if (ai_0 == 10080) return ("W1");
  369.    if (ai_0 == 43200) return ("MN1");
  370.    if (ai_0 == 120) return ("H2");
  371.    return ("??");
  372. }

  373. int NewBar() {
  374.    if (Time[0] != g_time_248) {
  375.       g_time_248 = Time[0];
  376.       return (1);
  377.    }
  378.    return (0);
  379. }
复制代码


baofu

发表于 2019-2-9 06:47:44 | 显示全部楼层


丫头,加载以后就是3条红,一条蓝,没有变化

笑苍天

发表于 2021-7-13 22:37:26 | 显示全部楼层

支持下

您需要登录后才可以回帖 登录 | 注册 微信登录

EA之家评论守则