DateNum_DateStr.afl
上传用户:shiqiang
上传日期:2009-06-12
资源大小:1289k
文件大小:2k
源码类别:

金融证券系统

开发平台:

Others

  1. //------------------------------------------------------------------------------
  2. //
  3. //  Formula Name:    DateNum_DateStr
  4. //  Author/Uploader: Stephane Carrasset 
  5. //  E-mail:          s.carrasset@laposte.net
  6. //  Date/Time Added: 2004-12-18 12:21:49
  7. //  Origin:          
  8. //  Keywords:        
  9. //  Level:           basic
  10. //  Flags:           commentary,function
  11. //  Formula URL:     http://www.amibroker.com/library/formula.php?id=415
  12. //  Details URL:     http://www.amibroker.com/library/detail.php?id=415
  13. //
  14. //------------------------------------------------------------------------------
  15. //
  16. //  Function changes DateNum ex:1040928 en String ddmmyyyy ex:28/09/2004 ( only
  17. //  > 2000 year )
  18. //
  19. //  Returns in Interpretation every date when occurs an Events.
  20. //
  21. //  Example of StrFormat; StrToNum; NumToStr; printf;
  22. //
  23. //  StaticVarSetText;
  24. //
  25. //------------------------------------------------------------------------------
  26. _SECTION_BEGIN("StrFormat_printf");
  27. // Transforme DateNum ex:1040928 en String ddmmyyyy ex:28/09/2004
  28. result="";
  29. function sDate ( nDate ) //
  30. {
  31. //if you want string without separators you have to specify this in your
  32. //NumToStr call http://www.amibroker.com/f?numtostr
  33. //string=NumToStr(SelectedValue(nDate),1,False);
  34. //You can use StrFormat for more control http://www.amibroker.com/f?strformat
  35. string=StrFormat("%0.9g",nDate);
  36. //extract string part
  37. aa=StrLeft(string,3);
  38. mm=StrMid(string,3,2);
  39. dd=StrRight(string,2);
  40. //transform year en num
  41. aa1=StrToNum(aa)+1900; // ONLY CORRECT AFTER 2000
  42. //return string
  43. result= dd + "/" + mm + "/" + NumToStr(aa1,1,False);
  44. return result;
  45. }
  46. curList=""; // initialize the string List
  47. Event= Cross(MFI(14) ,50 );
  48. zDate=DateNum();
  49. //SetBarsRequired(10000,10000);
  50. for(i=0;i<BarCount;i++)
  51. {
  52. if(Event[i])
  53. {
  54. //Print to Interpretation the Date when events occurs
  55. printf("Cross:" + sDate(zDate[i])+"n" ); 
  56. // Store a curList for others use
  57. curList=curList+sDate(zDate[i])+"n";
  58. // Store the curList in a static text
  59. StaticVarSetText("MyList",curList);
  60. }
  61. }
  62. //curList=StaticVarGetText("MyList"); // can be used in an other EDITOR