teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

追記

2018/05/14 13:34

投稿

tachikoma
tachikoma

スコア3601

answer CHANGED
@@ -1,5 +1,5 @@
1
1
  現在はこのようにexchangeを定義しているかと思いますが、このままだとexchangeの0番目がhogebitで・・・と覚えておかなくては行けません。
2
- ````python
2
+ ```python
3
3
  exchange = [
4
4
  hogebit({ 'apiKey': 'hoge', 'secret': 'hoge',}),
5
5
  hogeif({ 'apiKey': 'hoge', 'secret': 'hoge',}),
@@ -8,6 +8,7 @@
8
8
  ```
9
9
 
10
10
  そのかわりに、`dict`を使うことをオススメします。
11
+
11
12
  ````python
12
13
  exchange = {
13
14
  'hogebit': hogebit({'apiKey': 'hoge', 'secret': 'hoge',}),
@@ -15,4 +16,28 @@
15
16
  'hogebank': hogebank({'apiKey': 'hoge', 'secret': 'hoge',})
16
17
  }
17
18
  ```
18
- こうしておくことによって、`exchange['hogebit'].create_order(...)`と呼び出せます。
19
+ こうしておくことによって、`exchange['hogebit'].create_order(...)`と呼び出せます。
20
+
21
+
22
+ ----
23
+
24
+ 最後のやりたいことは、indexを渡すよりは、exchangeを渡せばいいと思いますよ。
25
+
26
+ ```python
27
+ def order_process(exchange,
28
+ arbitrage_decision, best_ask_price,
29
+ set_ask_volume, target_currency):
30
+ limit_ordered_info = exchange.create_order(
31
+ symbol=target_currency,
32
+ type='limit',
33
+ side='buy',
34
+ amount=set_ask_volume,
35
+ price=best_ask_price
36
+ )
37
+ print(json.dumps(limit_ordered_info, indent=True))
38
+ return limit_ordered_info
39
+
40
+ order_process(exchange[0],
41
+ arbitrage_decision, best_ask_price,
42
+ set_ask_volume, target_currency)
43
+ ```

2

落穂ひろい

2018/05/14 13:34

投稿

tachikoma
tachikoma

スコア3601

answer CHANGED
@@ -1,15 +1,18 @@
1
+ 現在はこのようにexchangeを定義しているかと思いますが、このままだとexchangeの0番目がhogebitで・・・と覚えておかなくては行けません。
2
+ ````python
3
+ exchange = [
1
- `test_import.py`の中で`cre_order`関数を定義をしたんですかね。もしそうならimport文はファイルの冒頭にある`import test_import`だけで十分で、関数を使うときにはドットアクセス`test_import.cre_order(...)`で呼び出せますよ。
4
+ hogebit({ 'apiKey': 'hoge', 'secret': 'hoge',}),
5
+ hogeif({ 'apiKey': 'hoge', 'secret': 'hoge',}),
6
+ hogebank({'apiKey': 'hoge', 'secret': 'hoge',})
7
+ ]
8
+ ```
2
9
 
3
-
4
- ----
5
- `return`が抜けてるだけじゃないですか?引数のとろは適宜a,b,c,dに置き換えるとし
10
+ そのかわりに、`dict`を使うことをオススメます
6
- ```python
11
+ ````python
7
- def order_process(a,b,c,d):
8
- limit_ordered_info = exchange.create_order(
9
- symbol=target_currency,
10
- type='limit',
11
- side='buy',
12
- amount= amount,
13
- price=price)
12
+ exchange = {
14
- return limit_ordered_info
13
+ 'hogebit': hogebit({'apiKey': 'hoge', 'secret': 'hoge',}),
14
+ 'hogeif': hogeif({'apiKey': 'hoge', 'secret': 'hoge',}),
15
+ 'hogebank': hogebank({'apiKey': 'hoge', 'secret': 'hoge',})
16
+ }
15
- ```
17
+ ```
18
+ こうしておくことによって、`exchange['hogebit'].create_order(...)`と呼び出せます。

1

.

2018/05/14 13:28

投稿

tachikoma
tachikoma

スコア3601

answer CHANGED
@@ -1,1 +1,15 @@
1
- `test_import.py`の中で`cre_order`関数を定義をしたんですかね。もしそうならimport文はファイルの冒頭にある`import test_import`だけで十分で、関数を使うときにはドットアクセス`test_import.cre_order(...)`で呼び出せますよ。
1
+ `test_import.py`の中で`cre_order`関数を定義をしたんですかね。もしそうならimport文はファイルの冒頭にある`import test_import`だけで十分で、関数を使うときにはドットアクセス`test_import.cre_order(...)`で呼び出せますよ。
2
+
3
+
4
+ ----
5
+ `return`が抜けてるだけじゃないですか?引数のところは適宜a,b,c,dに置き換えるとして。
6
+ ```python
7
+ def order_process(a,b,c,d):
8
+ limit_ordered_info = exchange.create_order(
9
+ symbol=target_currency,
10
+ type='limit',
11
+ side='buy',
12
+ amount= amount,
13
+ price=price)
14
+ return limit_ordered_info
15
+ ```