متعلقہ مضامین:https://www.fmz.com/bbs-topic/8479
/*backtest start: 2021-09-01 00:00:00 end: 2021-12-02 00:00:00 period: 1h basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}] */ var LONG = 1 var SHORT = -1 var IDLE = 0 function getPosition(positions, direction) { var ret = {Price : 0, Amount : 0, Type : ""} _.each(positions, function(pos) { if (pos.Type == direction) { ret = pos } }) return ret } function cancellAll() { while (true) { var orders = _C(exchange.GetOrders) if (orders.length == 0) { break } else { for (var i = 0 ; i < orders.length ; i++) { exchange.CancelOrder(orders[i].Id, orders[i]) Sleep(500) } } Sleep(500) } } function cover(tradeFunc, direction) { var mapDirection = {"closebuy": PD_LONG, "closesell": PD_SHORT} var positions = _C(exchange.GetPosition) var pos = getPosition(positions, mapDirection[direction]) if (pos.Amount > 0) { cancellAll() exchange.SetDirection(direction) if (tradeFunc(-1, pos.Amount)) { return true } else { return false } } return true } function main() { if (okexSimulate) { exchange.IO("simulate", true) // 切换到OKEX V5模拟盘测试 Log("切换到OKEX V5模拟盘") } exchange.SetContractType(ct) var state = IDLE var holdPrice = 0 var preTime = 0 while (true) { var r = _C(exchange.GetRecords) var l = r.length if (l < Math.max(ema1Period, ema2Period)) { Sleep(1000) continue } var ema1 = TA.EMA(r, ema1Period) var ema2 = TA.EMA(r, ema2Period) // 画图 $.PlotRecords(r, 'K线') if(preTime !== r[l - 1].Time){ $.PlotLine('ema1', ema1[l - 2], r[l - 2].Time) $.PlotLine('ema2', ema2[l - 2], r[l - 2].Time) $.PlotLine('ema1', ema1[l - 1], r[l - 1].Time) $.PlotLine('ema2', ema2[l - 1], r[l - 1].Time) preTime = r[l - 1].Time } else { $.PlotLine('ema1', ema1[l - 1], r[l - 1].Time) $.PlotLine('ema2', ema2[l - 1], r[l - 1].Time) } var up = (ema1[l - 2] > ema1[l - 3] && ema1[l - 4] > ema1[l - 3]) && (ema2[l - 2] > ema2[l - 3] && ema2[l - 4] > ema2[l - 3]) var down = (ema1[l - 2] < ema1[l - 3] && ema1[l - 4] < ema1[l - 3]) && (ema2[l - 2] < ema2[l - 3] && ema2[l - 4] < ema2[l - 3]) if (up && (state == SHORT || state == IDLE)) { if (state == SHORT && cover(exchange.Buy, "closesell")) { state = IDLE holdPrice = 0 $.PlotFlag(r[l - 1].Time, 'coverShort', 'CS') } exchange.SetDirection("buy") if (exchange.Buy(-1, amount)) { state = LONG holdPrice = r[l - 1].Close $.PlotFlag(r[l - 1].Time, 'openLong', 'L') } } else if (down && (state == LONG || state == IDLE)) { if (state == LONG && cover(exchange.Sell, "closebuy")) { state = IDLE holdPrice = 0 $.PlotFlag(r[l - 1].Time, 'coverLong', 'CL') } exchange.SetDirection("sell") if (exchange.Sell(-1, amount)) { state = SHORT holdPrice = r[l - 1].Close $.PlotFlag(r[l - 1].Time, 'openShort', 'S') } } // 止盈 if (state == LONG && r[l - 1].Close - holdPrice > profitTarget && cover(exchange.Sell, "closebuy")) { state = IDLE holdPrice = 0 $.PlotFlag(r[l - 1].Time, 'coverLong', 'CL') } else if (state == SHORT && holdPrice - r[l - 1].Close > profitTarget && cover(exchange.Buy, "closesell")) { state = IDLE holdPrice = 0 $.PlotFlag(r[l - 1].Time, 'coverShort', 'CS') } LogStatus(_D()) Sleep(500) } }
ایکس ایکس ایکس ایکس ایکسمیں نے آپ کی چھوٹی سی تبدیلی کی ہے اور نتائج اچھے لگ رہے ہیں۔
آپ نے کچھ مشورے دیئے ہیں
آسمان سے بارش کی آمدٹیچر: آپ نے اس ٹیسٹ میں کتنی بار تدریسی حکمت عملی استعمال کی ہے؟
آسمان سے بارش کی آمدمیں نے ڈراپ شروع کیا، کوئی ردعمل نہیں
آسمان سے بارش کی آمد/upload/asset/2152afd2a78355e8ce25b.png
آسمان سے بارش کی آمدBuy ((-1, 5): 400: {"کوڈ":-2019, "msg:"مارجن insufficient ہے. "} کیا مطلب ہے؟ ~ ایک منٹ میں ایک بار
آسمان سے بارش کی آمدچھوٹی خواب ٹیچر: کیا آپ اپنا ویکی میسج شامل کر سکتے ہیں؟ براہ کرم مجھ سے ذاتی طور پر بات کریں
آسمان سے بارش کی آمدکیا یہ حکمت عملی اصلی ڈسک پر چل سکتی ہے؟ چھوٹی خواب ٹیچر: کیا اسے اپنی جگہ پر تبدیل کیا جاسکتا ہے؟
سائیکل9MACD کراس اوپر خریدیں اور نیچے فروخت کریں ایک ہی وقت میں تبدیل کرنے کے لئے، نہ صرف جیتنے کے لئے، صرف نقصان کو روکنے کے لئے کس طرح لکھنے
13826543292شکریہ، بہت زبردست۔
ایجاد کاروں کی مقدار - خواباچھا، یہ تحقیق ہے۔
ایکس ایکس ایکس ایکس ایکسکیا آپ کو لگتا ہے کہ آپ کو اس کے بارے میں مزید جاننے کی ضرورت ہے؟ ہم نے اس حکمت عملی کو روکنے کے لئے بہت زیادہ طاقت استعمال کی ہے۔ ہم نے اس کے ساتھ ہی ایک لاک ڈاؤن بھی شروع کیا ہے اور اگلے بازار کا انتظار کر رہے ہیں۔
ایجاد کاروں کی مقدار - خواببہت خوب، مستقبل میں پلیٹ فارم مزید حکمت عملی شیئر کرے گا، ایف ایم زیڈ کی حمایت کا شکریہ۔
ایکس ایکس ایکس ایکس ایکسآپ کو صرف اتنا کہنا ہے کہ آپ واقعی 666 ہیں۔ میں نے صرف منافع کا فائدہ اٹھایا ہے۔ آپ EOS کی آزمائش کریں۔ اس سال سے اب تک۔ 10000٪ میں تحقیق کر رہا ہوں کہ کیا یہ ممکن ہے کہ یہ ممکن نہیں ہے۔ فی الحال یہ تخمینہ لگایا گیا ہے کہ یہ کافی نہیں ہے کہ وہ آپریشنل فیس ادا کرے۔ کیا آپ بی این اے میں بی ایس ڈی معاہدہ کرنے کی کوشش کر سکتے ہیں؟
ایجاد کاروں کی مقدار - خواباس کا مطلب یہ ہے کہ اکاؤنٹ میں موجود اثاثے کم ہیں۔
ایجاد کاروں کی مقدار - خوابعام طور پر ریٹیسٹ کے وقت لیورج 10 گنا ہوتا ہے۔
ایجاد کاروں کی مقدار - خوابX.X رقم، میں نے یہ بھی کہا کہ نہیں..... لیکن بات یہ ہے کہ آپ کا یہ اصلاح شدہ ورژن 666 ، شارپ کتنا اونچا ہے /upload/asset/16ab6c51ed93be64d383.png
آسمان سے بارش کی آمدکیا یہ آپ کا معاہدہ ہے یا آپ کا لیور؟
ایجاد کاروں کی مقدار - خوابآپ کے اکاؤنٹ میں ، آپ کی ضمانت کے لئے کافی رقم نہیں ہے ، آپ کی ادائیگی کے لئے کافی رقم نہیں ہے۔
ایجاد کاروں کی مقدار - خوابکوڈ کو ضرورت کے مطابق لکھنا۔ مثال کے طور پر حکمت عملی اسکوائر ملاحظہ کریں۔